Удалить агента из launchd

удалить-запустить-сервис

Подавляющему большинству пользователей Mac не нужно вручную настраивать launchd и launchctl, но бывают случаи, когда вы удаляете или прекращаете использование приложения в Mac OS X, и агент службы продолжает без необходимости загружаться в launchd. Это раздражает, но эти мошеннические агенты легко удалить через командную строку, поэтому запустите Терминал и вперед. Кроме того, бывают ситуации, когда опытные пользователи могут захотеть настроить агентов, загруженных в launchd по любой причине. В любом случае мы подробно расскажем, как перечислить элементы в launchd, как удалить их из launchd в OS X, а также как повторно загрузить агентов в launchd на Mac.

Вам потребуется некоторое понимание и удобство использования командной строки и Терминала, чтобы использовать это должным образом, что делает это идеальным для более продвинутых пользователей, которые знают о демонах запуска и о том, как их отслеживать, что иногда является просто вопросом найти его в Activity Monitor Mac OS X или с помощью команды launchctl, которую мы вскоре обсудим. Если вы решите отменить модификацию, вы также можете загрузить службу или демон обратно в launchd с помощью другой команды, которая фактически отменяет начальный шаг удаления. Перейдем к этому:

Удаление агентов запуска и служб из launchd в OS X

Программы для Windows, мобильные приложения, игры - ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале - Подписывайтесь:)

Вот это как удалить сервис из launchd. Запустите Терминал, а затем используйте следующий синтаксис с командой launchctl:

launchctl remove name

Например, если я хочу удалить службу с именем «com.annoying.service», синтаксис будет следующим:

launchctl remove com.annoying.service

Вам может потребоваться префикс команды с помощью sudo, чтобы удалить службу, в этом случае команда будет такой:

sudo launchctl remove com.annoying.service

С префиксом sudo вам нужно будет ввести пароль администратора перед выполнением команды.

Как посмотреть, что загружено в launchd

Вы также можете проверить, что загружено в launchd, используя следующую командную строку:

launchctl list

Эта команда выводит список всех агентов и заданий, загруженных в launchd, что позволяет легко управлять запущенными агентами. Поскольку он выводит на экран тонны информации одновременно, вы можете захотеть передать его через более или менее команды, например:

launchctl list |more

Это позволяет вам нажимать клавишу возврата для более медленной навигации по списку.

Если вы в целом знаете службу, которую ищете, вы также можете использовать grep, чтобы найти точную службу агентов, давайте в качестве примера воспользуемся mdworker:

launchctl list |grep mdworker

Это сообщит только о следующих запускающих агентах:

- 0 com.apple.mdworker.sizing
- 0 com.apple.mdworker.single
- 0 com.apple.mdworker.shared
- 0 com.apple.mdworker.mail
- 0 com.apple.mdworker.lsb
- 0 com.apple.mdworker.isolation
- 0 com.apple.mdworker.bundles
- 0 com.apple.mdworker.32bit

Для некоторых служб при выгрузке списка также может отображаться PID (идентификатор процесса) активной службы.

Загрузка агента обратно в launchd

Если вы решите, что хотите повторно включить и перезагрузить службу в launchd, используйте флаг загрузки следующим образом:

launchctl load com.example.service.to.load

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

Программы для Windows, мобильные приложения, игры - ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале - Подписывайтесь:)

Похожие записи

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *