Если есть приложение, которое запускается само по себе, какими будут наиболее эффективные места для его поиска? У кого-нибудь есть хороший исчерпывающий список того, где проверять элементы запуска, элементы входа, хуки входа, Cron, расширения ядра и т. Д.
На данный момент я забываю, где находится половина этих папок / plist-файлов. Я надеюсь, что у кого-то есть чит-лист, которым они могут поделиться.
В основном я ищу список наиболее распространенных мест, где Mac OS запускает приложения или скрипты автоматически (например: при входе в систему, по расписанию и т. Д.)
macos
troubleshooting
cron
launchd
имя пользователя
источник
источник
Ответы:
Приложения, которые запускаются при запуске:
/Library/StartupItems
- Стандартные пункты запуска находятся здесьsudo launchctl list
или посмотрите/Library/LaunchDaemons
и/System/Library/LaunchDaemons
запустите списки запуска, которые настроены на запуск без обязательного входа в систему. Примечание. Некоторые файлы .plist в перечисленных папках не будут отображаться,launchctl list
поскольку они не загружены для запуска.Приложения, которые запускаются при входе в систему:
Проверьте элементы входа в систему, перейдя на панель настроек учетных записей в системных настройках.
Проверьте
~/Library/LaunchAgents
,/Library/LaunchAgents/
и/System/Library/LaunchAgents
для .plists , что запуск программ выполняется , когда пользователь вошел в систему - вы можете использовать ,sudo launchctl list
чтобы увидеть , какие из них будут загружены.Приложения, работающие по расписанию:
В терминале:
crontab -e
покажет, что было запланировано с помощью cron для запуска элементов в определенное время. Элементы в любой из папокLaunchAgents
илиLaunchDaemons
могут быть настроены на выполнение с интервалами, а также определены в их файле .plistРасширения ядра
Чтобы увидеть, какие расширения ядра загружены, вы можете любой пользователь
Applications/Utilites/System Profiler.app
(его можно быстро открыть, удерживая нажатой optionпри нажатии на меню Apple - Об этом Mac ... меняется на System Profiler ... в 10.5+)В качестве альтернативы вы можете запустить
kextstat
в командной строке.Крючки для входа / выхода
Чтобы выяснить, установлен ли Хук входа в систему или выхода из системы и найти файл сценария, вы можете выполнить следующую команду:
defaults read com.apple.loginwindow LoginHook
иdefaults read com.apple.loginwindow LogoutHook
или получить оба одновременно:
/usr/libexec/PlistBuddy -c Print /var/root/Library/Preferences/com.apple.loginwindow.plist | grep 'Hook'
источник
/Library/Receipts/
которые требуют его использования. Чтобы узнать больше хуков входа в систему, посетите krypted.com/mac-os-x/login-logout-hooksНекоторые вещи можно найти в параметрах запуска пользователя, как указано в loxp, но не все.
Некоторые вещи настроены на запуск с помощью launchd в разное время. Вы можете просмотреть файловую систему, чтобы выяснить, что запускается (я забыл точные пути), или взять Lingon и посмотреть, что он перечисляет.
источник