Мне нужно определить, какие агенты и демоны отключены на моем OSX. У каждого процесса есть файл plist с параметрами. Я предполагаю, что за это отвечает клавиша «Отключено». Но не все агенты / демоны имеют это значение. Значит, если в списке свойств нет этого параметра, значит, он отключен или включен? Я не нашел информации о значении по умолчанию для этого элемента.

Пожалуйста, дайте ссылку на документацию Apple, подтверждающую это.

0
Serge 31 Июл 2013 в 17:37

1 ответ

Лучший ответ

Ключи «Отключено» в каждом файле LaunchDaemon можно переопределить записью в /private/var/db/launchd.db/com.apple.launchd/overrides.plist, и есть аналогичная система для агентов LaunchAgents в / private / var / db / launchd.db / com.apple.launchd.peruser. userID /overrides.plist. Я не думаю, что Apple где-либо документировала это, а это означает, что от вас не ожидается непосредственного взаимодействия с этими файлами, просто используйте launchctl. Это также означает, что они могут быть изменены (т.е. это не всегда работало таким образом и может измениться без уведомления в более поздних версиях OS X). Кроме того, файл для LaunchDaemons доступен для чтения только root.

1
Gordon Davisson 31 Июл 2013 в 18:35
Я запускаю свое приложение как root. Так что я могу читать все файлы plist. Мне просто нужно знать, если у plist нет ключа «Отключено», это означает, что он отключен или включен по умолчанию?
 – 
Serge
1 Авг 2013 в 16:03
Если ключ «Отключено» отсутствует, задание будет включено по умолчанию (т. Е. Значение по умолчанию «Отключено» равно false).
 – 
Gordon Davisson
1 Авг 2013 в 18:55
Гордон Дэвиссон, есть ли ссылки в документации, подтверждающие это?
 – 
Serge
1 Авг 2013 в 19:23
Нет, хотя это подразумевается в описании в справочная страница: "Отключено Этот дополнительный ключ используется как подсказка для launchctl (1), что он не должен отправлять это задание в launchd при загрузке задания или заданий". - подразумевая, что ключ может отключать задания, но нет необходимости явно устанавливать его в ложь, чтобы разрешить задание.
 – 
Gordon Davisson
2 Авг 2013 в 00:49