Як запобігти автоматичному перезапуску процесу? (конкретно, антивірус софосу)


13

Мене вимагає, щоб моє програмне забезпечення VPN встановило і працювало антивірус Sophos. Однак, коли я НЕ на VPN, я не хочу, щоб він працював зовсім - я хочу його мертвим.

Однак убити завдання неефективно:

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

Він просто автоматично перезапускається. Що мені потрібно зробити, щоб цього не допустити?


Можливо, є перевага в програмному забезпеченні Sophos, щоб його вимкнути?
daviesgeek

Не наскільки я можу сказати; якщо він є, це приховано.
кефлавич

Відповіді:


17

Це означає, що існує ще один моніторний процес, який його відновить.

Ви можете перевірити, хто є батьківським процесом: виберіть процес у моніторі діяльності та скористайтесь кнопкою "Інфо", або через термінал, ps -ax -O ppidякщо я правильно пам'ятаю.

  • Це може бути ще один процес від Sophos, але з прихованою назвою або, можливо, навіть з вашим програмним забезпеченням VPN. У такому випадку ви можете просто killїх усіх.

  • Інша можливість полягає в тому, що процес підтримує демоном запуску launchd. В цьому випадку ви знайдете запис (а PLIST XML - файл) для вашого антивіруса в будь-якому ~/Library/LaunchAgents, /Library/LaunchAgents(ймовірно) або /System/Library/LaunchAgents(я сподіваюся , що дорого немає).

Якщо це справа другої, ви можете:

  • Відредагуйте файл та змініть параметр KeepAlive, видаливши чи змінивши його (ви можете зробити вишукані речі, докладнішу інформацію див. У документах ).

  • Просто попросіть startd зробити зупинку для вас. На жаль, ви не можете просто сказати, launchtl stopоскільки процес просто відновився. Вам доведеться скористатися
    sudo launchctl unload /path/to/the/plist file


Дякую, Agos, саме та порада, яку я шукав. Однак я не можу знайти прокляте! Немає ПІД-номерів з номерами поряд (оригінальний, попередньо вбитий) антивірус Sophos, який я можу пов’язати з ним. У каталогах LaunchAgents нічого не з’явилося (хоча все, що я робив, - це проста реєстрація регулярних виразів у системі / System /). Чи є файл журналу, в якому запуск записував би перезапуск процесу? Я перевірив system.log та інших без везіння ...
keflavich

Файл для мене був тут /Library/LaunchDaemons/com.sophos.common.servicemanager.plist- ви можете знайти через mdfind -name Sophos. Видалення параметру Keep Alive запрацювало.
Друв Гулаті

Не працює для процесів в / Система / Бібліотека / LaunchDaemons - OSX видає помилку "Не вдалося знайти вказану послугу"
Adam

7

Я б прокоментував пост Агоса, але я занадто новий для цього. Тому:

Наскільки я пам’ятаю, у них повинен бути пусковий агент /Library/LaunchAgents. Я просто прошу вас зробити ls /Library/LaunchAgents, ls /Library/LaunchDaemonsі ls /System/Library/LaunchDaemons. Щось з’явиться .

Також ви можете відкрити /Applicationsта перевірити Видалення Sophos.app, а Show Package Contentsпотім перевірити сценарій видалення.


1
Спасибі Привид. Каталог Agos залишили / Library / LaunchDaemons, у якому є файл плістів. Я дав вам +1, але Агос відповідь, оскільки він отримав більшість. Я дуже ціную допомогу!
кефлавич

Переконайтесь, що ви запускаєте прожектор, щоб шукати файли Sophos, залишені після 'видалення' mdfind-імені Sophos
chiggsy

@chiggsy, чому він це зробив? Він не хоче видаляти додаток, але не дозволяє йому перезавантажуватися кожного разу, коли він вбиває його.
GhostLyrics

Це воно? Це все, що він хоче?
chiggsy

4
man launchctl


launchctl list |grep -i 'sophos'

щоб назавжди вивантажити демон, але не видалити його

launchctl unload -w /full/path/to/file.plist

1
Це "краща" відповідь, оскільки вона також не дасть їй коли-небудь завантажуватись (-w)
Дастін,

софос ховається. Це не працює на софосах.
Бен

1

Щоб дізнатися, яка launchdробота нерестує речі, tail -f /var/log/system.logі sudo kill -9 <pid>процес, який вас цікавить.

Раптом launchdвам точно скажуть, за яку роботу відповідає:

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

Ви також можете спробувати збільшити рівень журналу, щоб точно визначити, що відбувається: launchctl log level debug

Майте на увазі, що деякі завдання виконуватимуться як rootтакі, що sudo launchctl listможе відображати додаткові завдання на вашій машині.


0

Ви також можете контролювати, який запуск агента та демонів запускати, а коли - за допомогою корисного додатка Lingon, доступного через магазин додатків Mac та в Інтернеті.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.