Можно ли отключить Gatekeeper через терминал в OS X 10.8 Mountain Lion?

17

Как вы можете отключить гейткипер с помощью терминальных команд в OS X 10.8 Mountain Lion? Я хочу повторить выбор панели настроек «Безопасность и конфиденциальность», чтобы запустить приложения, загруженные из Anywhere :

введите описание изображения здесь

Имея команду терминала, я могу написать скрипт для выполнения этой задачи удаленно, вместо того, чтобы вручную переходить на каждый Mac и изменять эти настройки с помощью мыши и нескольких щелчков мыши.

Брайан Маккарти
источник

Ответы:

22

Инструмент spctl должен сделать эту работу.

sudo spctl --master-disableотключит проверки гейткипера и sudo spctl --master-enableснова включит их (к настройкам по умолчанию App Store и подписанных приложений - не представляется возможным установить его только в App Store).

Обратите внимание, что он не выдаст ошибку, если вы запустите его без sudoразрешений, но sudoна самом деле требуется.

robmathers
источник
1
На странице руководства говорится, что spctl --disable --label "Mac App Store" отключит установку всех приложений Mac App Store, поэтому может показаться, что он может - включить только приложения MAS.
Меган Уокер
@SamuelWalker Я не замечал этого раньше, но что действительно требовалось бы, так это правило или метка, которая эквивалентна всем приложениям, не относящимся к App Store. В противном случае это спорный вопрос, поскольку вы не можете отключить все другие источники независимо от того, что я могу сказать.
Робматерс 20.12.12
Это правда. Я только что посмотрел на фактическую базу данных SystemPolicy, и из того, что я могу сказать, есть только несколько меток, которые она использует. «GKE», «ID разработчика», «Mac App Store», «Apple System», «Apple Installer», «Нет подходящих правил». Хотя эти строки произвольны [и могут измениться в будущих версиях OSX], это может быть слишком хакерским, но кажется возможным, что вы можете вручную отключить GKE и Developer ID.
Меган Уокер
@robmathers, спасибо за ваш ответ! Я изучил другой обходной путь: вы можете щелкнуть правой кнопкой мыши установщик и нажать кнопку «Открыть» (который откроет приложение без проверки с привратником)
Брайан Маккарти
Да, это определенно более простой способ, если вам просто нужно запустить что-то на разовой основе.
Робматерс 20.12.12
3

Любой из них также отключает диалоги гейткипера (после перезапуска), но они не изменяют настройки, показанные в Системных настройках.

sudo defaults write /var/db/SystemPolicy-prefs.plist enabled -string no
defaults write com.apple.LaunchServices LSQuarantine -bool false

Я не знаю, spctl --master-disableотличается ли это от отключения Gatekeeper от Системных настроек, но spctl --statusизменяется assessments disabledпосле отключения Gatekeeper в Системных настройках.

LRI
источник