Comment empêchez-vous un processus de redémarrer automatiquement? (spécifiquement, sophos antivirus)

13

Mon logiciel VPN exige que l'antivirus Sophos soit installé et fonctionne. Cependant, lorsque je ne suis PAS sur VPN, je ne veux pas du tout qu'il fonctionne - je le veux mort.

Cependant, tuer les tâches est inefficace:

ps -ax | grep -i soph
40972 ??         0:07.34 /Library/Sophos Anti-Virus/SophosAutoUpdate.app/Contents/MacOS/SophosAutoUpdate -d
41069 ??        28:08.48 /Library/Sophos Anti-Virus/InterCheck.app/Contents/MacOS/InterCheck -d
41078 ??         0:02.42 /Library/Sophos Anti-Virus/SophosAntiVirus.app/Contents/MacOS/SophosAntiVirus -d
$ sudo kill 40972 41069 41078 41084
$ ps -ax | grep -i soph
44344 ??         0:00.03 /Library/Sophos Anti-Virus/SophosAutoUpdate.app/Contents/MacOS/SophosAutoUpdate -d
44345 ??         0:00.02 /Library/Sophos Anti-Virus/SophosAntiVirus.app/Contents/MacOS/SophosAntiVirus -d
44347 ??         0:03.03 /Library/Sophos Anti-Virus/InterCheck.app/Contents/MacOS/InterCheck -d

Il redémarre automatiquement. Que dois-je faire pour éviter cela?

keflavich
la source
Il est possible qu'il y ait une préférence dans le logiciel Sophos pour le désactiver?
daviesgeek
Pas autant que je sache; si c'est là, c'est caché.
keflavich

Réponses:

17

Cela signifie qu'il existe un autre processus de surveillance qui le relance.

Vous pouvez vérifier qui est le processus parent: sélectionnez le processus dans le moniteur d'activité et utilisez le bouton Info, ou via le terminal ps -ax -O ppidsi je me souviens bien.

  • Ce pourrait être un autre processus de Sophos mais avec un nom furtif, ou peut-être même votre logiciel VPN. Dans ce cas, vous pouvez tout simplement killles faire tous.

  • L'autre possibilité est que le processus soit maintenu en vie par le démon de lancement launchd. Dans ce cas, vous trouverez une entrée (un fichier XML plist) pour votre antivirus dans ~/Library/LaunchAgents, /Library/LaunchAgents(probablement) ou /System/Library/LaunchAgents(j'espère sincèrement que non).

Si le second est le cas, vous pouvez soit:

  • Modifiez le fichier et modifiez le paramètre KeepAlive, en le supprimant ou en le modifiant (vous pouvez faire des choses astucieuses, voir les documents pour plus).

  • Demandez simplement à launchd de faire l'arrêt pour vous. Malheureusement, vous ne pouvez pas simplement le dire launchtl stopcar le processus ne ferait que réapparaître. Vous devrez utiliser
    sudo launchctl unload /path/to/the/plist file

Agos
la source
Merci Agos, c'est exactement le conseil que je cherchais. Cependant, je ne trouve pas la chose sacrément! Il n'y a pas de PID avec des numéros proches (l'original, pré-tué) de Sophos Anti-Virus que je peux lui associer. Rien n'est apparu dans les répertoires LaunchAgents (bien que tout ce que j'ai fait était une simple vérification d'expression régulière dans / System /). Existe-t-il un fichier journal dans lequel launchd enregistrerait le redémarrage d'un processus? J'ai vérifié system.log et d'autres sans chance ...
keflavich
Le dossier pour moi était ici /Library/LaunchDaemons/com.sophos.common.servicemanager.plist- vous pouvez le trouver via mdfind -name Sophos. La suppression du paramètre Keep Alive a fonctionné.
Dhruv Ghulati
Ne fonctionne pas pour les processus dans / System / Library / LaunchDaemons - OSX vous donne une erreur "Impossible de trouver le service spécifié"
Adam
7

Je commenterais le post d'Agos, mais je suis trop nouveau pour le faire. Donc:

Autant que je me souvienne, ils devraient avoir un agent de lancement /Library/LaunchAgents. Je vous demanderais simplement de faire un ls /Library/LaunchAgents, ls /Library/LaunchDaemonset ls /System/Library/LaunchDaemons. Quelque chose va apparaître.

Vous pouvez également ouvrir /Applicationset vérifier Désinstaller Sophos.app avec Show Package Contentspuis consulter le script de désinstallation.

GhostLyrics
la source
1
Merci Ghost. Le répertoire laissé par Agos était / Library / LaunchDaemons, qui contient le fichier plist. Je vous ai donné un +1, mais Agos la réponse, car il a obtenu l'essentiel. J'apprécie énormément l'aide!
keflavich
Assurez-vous que vous exécutez Spotlight pour rechercher les fichiers Sophos laissés après la désinstallation du nom mdfind Sophos
chiggsy
@chiggsy pourquoi ferait-il ça? Il ne veut pas désinstaller l'application mais l'empêche de redémarrer à chaque fois qu'il la tue.
GhostLyrics
C'est tout? C'est tout ce qu'il veut?
chiggsy
4
man launchctl


launchctl list |grep -i 'sophos'

pour décharger un démon de façon permanente, mais pas le désinstaller

launchctl unload -w /full/path/to/file.plist
chiggsy
la source
1
C'est la "meilleure" réponse car elle l'empêchera également de se charger (-w)
Dustin
sophos se cache. Cela ne fonctionne pas sur les sophos.
Ben
1

Pour savoir quel launchdtravail fait réapparaître les choses tail -f /var/log/system.loget sudo kill -9 <pid>le processus qui vous intéresse.

Soudain, launchdvous dira exactement quel travail est responsable:

com.apple.launchd[1] (com.sophos.managementagent[83911]): Exited: Killed: 9

Vous pouvez également essayer d'augmenter le niveau de journalisation pour déterminer précisément ce qui se passe: launchctl log level debug

Gardez à l'esprit que certains travaux seront exécutés en tant que root, il sudo launchctl listpeut donc vous montrer des travaux supplémentaires en cours d'exécution sur votre machine.

Jose Alban
la source
0

Vous pouvez également contrôler quels Launch Agent et Daemons s'exécutent et quand avec l'application utile Lingon, disponible sur le Mac App Store et en ligne.

JeffCGD
la source