Убийство неизвестного запуска демона
Я отлаживал демон запуска и каким-то образом создал его, которого я не могу ни убить, ни даже найти связанный с ним демон Label
, Я знаю, что он работает, потому что он добавляет файл "hello world" каждые 10 секунд. Какие у меня есть варианты для отладки этого? Есть ли способ отменить, какой процесс выполняет сценарий оболочки?
Я пробовал:
launchctl unload
все отредактированные.plists, которые все еще существуютlaunchctl list | grep
для всех ярлыков, которые я создал (я думаю!!)- перезапустил систему
Я перепробовал все предложения, размещенные здесь и в других местах.
Ссылка на страницу здесь
1 ответ
Поведение / видимость демона привязано к владельцу. Для системных демонов предпочтительный синтаксис (по состоянию на 2017 год):
- любой
.plist
файл должен принадлежать пользователю root в/Library/LaunchDaemons
или это может не загружаться правильно. - демоны начались (как root) с
sudo launchctl load my_daemon.plist
будет только с командойsudo launchctl list
; также - демоны начались (как пользователь) с
launchctl load my_daemon.plist
будет только с командойsudo launchctl list
Если в любое время в прошлом load
был вызван с -w
флаг демон будет постоянно загружен даже после перезагрузки и потребует -w
чтобы разгрузить его:
sudo launchctl load -w my_daemon.plist
загрузить демон, иsudo launchctl unload -w my_daemon.plist
,
В случае вопроса демон, вероятно, был запущен с некоторой комбинацией sudo
и / или -w
а затем запросили /"остановили" без.