Как упоминает @cheezsteak, запуск и остановка выполняются до конца launchctl
. Процесс ниже позволяет остановить автозапуск при загрузке.
Сначала я извлек список всех процессов "citrix", которые запускаются при запуске:
launchctl list | grep citrix
Чтобы полностью удалить их из автоматического запуска , я использую следующие команды:
launchctl remove com.citrix.ServiceRecords
launchctl remove com.citrix.ReceiverHelper
launchctl remove com.citrix.AuthManager_Mac
Единственная проблема сейчас заключается в том, что при открытии приложения Citrix Receiver вы можете получить что-то вроде следующей ошибки:
Невозможно подключиться к службе Citrix AuthManager
Чтобы это исправить, вам нужно вручную запустить сервисы снова:
launchctl load /Library/LaunchAgents/com.citrix.ServiceRecords.plist
launchctl load /Library/LaunchAgents/com.citrix.ReceiverHelper.plist
launchctl load /Library/LaunchAgents/com.citrix.AuthManager_Mac.plist
К сожалению, это немного громоздкий процесс. Особенно повторять это время от времени. Но я упростил задачу Automator, которая запускает упомянутые команды для запуска службы и сразу после запуска Citrix Receiver.
На самом деле, я не сомневаюсь, что Citrix относительно легко сделать это настраиваемым в качестве предпочтения. На самом деле на их форуме идет дискуссия , но она кажется мертвой и без ответа. Пока - и как простой принцип - я сам выбираю трудный путь.
Для получения дополнительной информации о launchctl этот ответ AskDifferent весьма полезен.
launchctl list | grep citrix | awk '{print $NF}' | xargs launchctl remove
Создание приложения в Automator с помощью сценария оболочки прекрасно работает для выгрузки при запуске без удаления файлов plist.
Вы должны добавить:
Добавьте это приложение для запуска при запуске, и оно устранит ошибку при открытии приложения Citrix Receiver.
источник