Припинення запускуАгенти та демон


23

Я працюю адміністратором в умовах коледжу. Одне з викликів - зупинити послуги, встановлені студентами з спеціальністю CS. Деякий час назад вони отримали доступ адміністратора та встановили агенти запуску та демон на деяких системах. Студенти також додали деякі списки як com.apple.myprog.run. Проблема полягає в тому, що вони відсутні в каталозі запусків або в каталозі запуску демонів.

Отже, моє запитання полягає в тому, як знайти шлях для цих служб демона. Наступний крок - як їх зупинити. Оскільки деякі з них можуть запускатися знову і знову (на основі певних прапорів).


Подібна проблема. Не вдається зупинити демон, з якого було запущено launchctl load -wF /Library/LaunchDaemons/name.of.this.plist.
Мелтемі

Відповіді:


21

Якщо ви хочете зупинити елемент для цього завантаження, просто видайте команду unload для запуску через launchctl. Для постійного виправлення додайте відключений ключ у пліст зі значенням true або видаліть / перемістіть файл у папку, де запуск не сканує його автоматично.

  • launchctl unload /System/Library/LaunchAgents/com.apple.AppStoreUpdateAgent.plist

Сторінка man для startctl має приємну документацію для контролю завдань. Що стосується загальної поразки CS-спеціальностей, ви можете також врахувати, що вони відредагували існуючі яблучні списки, щоб змусити їх робити те, чого ви не очікуєте, тому виявиться набагато простіше просто перевстановити ОС та перенести дані користувача назад з резервної копії (звертаючи особливу увагу на замітку, перевстановіть будь-які файли плістів у / Система / Бібліотека, / Бібліотечний простір (і, можливо, також перевірити ~ / Бібліотеку користувачів адміністратора). система в основному закінчується грою, і захист (пошук і відключення) змін дуже трудомісткий на відміну від образи (перевстановлення системи з відомого хорошого джерела та використання інструментів управління конфігурацією для забезпечення виявлення змінених файлів).


справа в тому, що я не знаю, де зберігався пліст. Я шукав у каталозі LaunchAgents, і я не бачу, щоб додатки там переглядалися.
Прашант

Вони можуть бути де завгодно. Ви можете завантажитися в безпечному режимі і порівняти вихідний список startctl зі звичайним списком завантаження. mdfind покаже вам файли, що містять непрацездатні завдання (якщо вони не виключали їх із уваги). Ви також можете теоретично запустити fs_usage проти самого запуску, щоб відстежувати, які файли він читав під час завантаження, але знову ж логістика запуску fs_usage, що незабаром під час завантаження, поєднується з тим, що вам все одно потрібно перевіряти кожен файл плісту, означає, що у вас багато роботи, вирізаної для "виявлення змін та хірургічного усунення", на відміну від початку чистого.
bmike

1
Якщо ви дійсно хочете знайти кожен .plist в системі, це зробить це. Це довгий список. find / -type f -name "*.plist"
afragen

man launchctl unload У попередніх версіях ця опція змінює файл конфігурації. Тепер стан ключа Disabled зберігається в іншому місці на диску. .. (
Накілон

@Nakilon Не могли б ви бути точними щодо версій? Ви маєте на увазі капітальний ремонт 10.11 запуску або іншу "попередню версію"?
bmike

17

Найпростіший спосіб я знайшов це зробити

sudo launchctl list | grep "rough name of what you want to find"
sudo launchctl remove "label.of.the.file"

Дякую, це саме те, що я хотів. Як видалити службу після видалення файлу!
chmac

2

Спробуйте перевірити ці місця:

/ Користувачі / ваше ім'я / Бібліотека / LaunchAgents /

/ Бібліотека / LaunchAgents /

/ Бібліотека / LaunchDaemons /

/ Система / Бібліотека / LaunchAgents /

/ Система / Бібліотека / LaunchDaemons /


1

Ви можете зробити "startctl dumpstate", і він покаже всі завантажені служби та шлях до запуску .plist та вмісту.

Ви, ймовірно, захочете запустити це через щось на зразок менше, оскільки це скидає багато інформації.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.