Rimuovi Little Snitch tramite script [chiuso]

2

Voglio poter disinstallare Little Snitch su Apple Remote Desktop. Ho trovato la sceneggiatura qui sotto: link

Tuttavia, quando eseguo lo script localmente su una macchina di prova con Little Snitch in esecuzione, Terminal restituisce "Nessun processo corrispondente a te trovato". Riesco a vedere i processi di Little Snitch UIAgent e Little Snitch Network Monitor in Activity Monitor in esecuzione con lo stesso account dal quale viene eseguito lo script.

Qualche idea?

#!/bin/sh
NetworkMonitor="Little Snitch Network Monitor"
UIAgent="Little Snitch UIAgent"
File="/Library/LaunchAgents/at.obdev.LittleSnitchNetworkMonitor.plist"

#remove Little Snitch files and User Preferences

if [ -f $File ] ; then

#Kill Little Snitch Processes
killall $NetworkMonitor
killall $UIAgent

rm -R /Library/Application\ Support/Objective\ Development/
rm -R /Library/LaunchAgents/at.obdev.LittleSnitchNetworkMonitor.plist
rm -R /Library/LaunchAgents/at.obdev.LittleSnitchUIAgent.plist
rm -R /Library/LaunchDaemons/at.obdev.littlesnitchd.plist
rm -R /Library/Little\ Snitch/*
rm -R /Library/Logs/LittleSnitchDaemon.log
rm -R /System/Library/Extensions/LittleSnitch.kext
rm -R "/Applications/Little Snitch Configuration.app"

usr/sbin/jamf displayMessage -message "Computer is shutting down"

sleep 10

reboot -q

exit 0

else

exit 0

fi

Grazie.

    
posta Paul 15.07.2012 - 23:43
fonte

3 risposte

3

Ci sono molti problemi con quello script:

  1. Variabili stringa nuda con spazi bianchi incorporati : metti "" in giro gli argomenti del killall.
  2. Overkill : se vuoi rimuovere il software e riavviare, c'è non c'è bisogno di macchiare i processi. C'è un rischio con LS che potresti riprendi la tua sessione (e la sceneggiatura) se esegui i processi LS guasta la rete. Se credi di aver bisogno di uccidere i processi agire come gatekeeper per il traffico di rete, è necessario assicurarsi che il tuo lo script non è soggetto alla normale gestione di hangup (vedere le pagine man per nohup e batch per i modi per farlo)
  3. Underkill : se ti impegni a uccidere i componenti attivi di LS prima di riavviare per essere sicuro (cioè come se fosse autoprotettivo) è necessario anche estrarre il processo di Little Snitch Daemon e scaricarlo l'estensione del kernel. Ci sono anche registri, cache, prefs e supporta i file negli alberi della libreria specifici dell'utente.
  4. Non in esecuzione come root : uccisione di Little Snitch Daemon, che scarica il file kext, rimuovendo la maggior parte (se non tutti) dei componenti a livello di sistema, rimozione di file di supporto specifici dell'utente per più utenti e il riavvio richiede tutti root.
  5. Esecuzione di reboot -q : non farlo. È più sicuro su MacOS moderni di quanto lo sia stato storicamente, ma può comunque essere un problema. Meglio usare shutdown -r +1 "Rebooting for software change" che dà un breve periodo di grazia, invia questo messaggio a qualsiasi shell interattiva, e usa i meccanismi di avvio appropriati per chiudere tutto. Se vuoi essere meno educato, usa "adesso" e / o nessun messaggio.
risposta data 17.04.2013 - 17:04
fonte
0

ALERT : questa risposta è stata provata e apparentemente non funziona. Tuttavia, sto lasciando la risposta qui per aiutare gli altri a diagnosticare il problema.

Quando esegui lo script, $NetworkMonitor diventa Little Snitch Network Monitor invece del "Little Snitch Network Monitor" richiesto (per gestire gli spazi).

Vorrei cambiare le prime tre righe del tuo codice in:

#!/bin/sh 
NetworkMonitor="\"Little Snitch Network Monitor\""
UIAgent="\"Little Snitch UIAgent\""

Penso che potrebbe occuparsi del tuo problema. In caso contrario, fammi sapere.

    
risposta data 16.07.2012 - 01:16
fonte
0

Dovrai accedere come utente amministrativo ed eseguire lo script come utente root digitando "sudo" davanti ai tuoi comandi:

sudo /path/to/your/script.sh
    
risposta data 16.08.2012 - 10:10
fonte

Leggi altre domande sui tag