Коли ви вмикаєте свій Mac, то в фоновому режимі запускається досить велика кількість процесів, додатків і доповнень. Як правило, ці автоматично запущені програми відповідають вашим бажанням, але іноді в Activity Monitor (Моніторинг Системи) можна побачити програми, які Ви не запускали і вони вам не потрібні. Звідки беруться такі процеси? Адже дані додатки збільшують час завантаження операційної системи і можуть знизити продуктивність комп'ютера. Є різні методи управління автоматично запускаються додатками в операційній системі Apple Mac OS X.
Події при вході користувача в систему.
Відкрийте вкладку Об'єкти входу в "Системні настройки-> Користувачі та Групи". Там ви побачите список програм, а іноді папки файли, які відкриваються при кожному вході в систему. Даний список індивідуальний для кожного користувача Mac OS. Більшість з цих додатків при установці не питають "Запускати автоматично при вході в систему". Тут можна за допомогою кнопок "+" і "-" додати і видалити програми.елементи автозавантаження
У більш ранніх версіях OS X для зберігання списку програм автозапуску використовувала дві папки / Library / StartupItems і / System / Library / StartupItems. Тепер Apple рекомендує розробникам використовувати тільки режим елементів автозавантаження в системних настройках, однак старі програми як і раніше використовують цей механізм. Як правило, папка / System / Library / StartupItems повинна бути порожньою, але якщо в ній знаходиться що-небудь і цей додаток не використовується, то цей елемент можна відправити в кошик.
Запуск демонів і агентів
Починаючи з OS X 10.4 Tiger, компанія Apple надала розробникам ще один механізм для автоматичного запуску елементів: запуск демонів і агентів, контрольований процесом launch. Даний механізм забезпечує більшу гнучкість, ніж механізми StartupItems і подій при вході в систему, але він менш прозорий для користувачів.
Замість прямого відкриття додатків launchd завантажує спеціально відформатований файл настройок XML (файл з розширенням .plist) в якому вказані процеси і за яких умов.
вони повинні запуститися. Умови запуску можуть бути найрізноманітніші: постійна робота в фоновому режимі, робота за розкладом, у міру необхідності - наприклад, у відповідь на подію, що відбулася.
Використовувані процесом launchhd .plist файли можуть перебувати в будь-який з п'яти перерахованих нижче папок, і їх розташування визначає, коли вони завантажуються і з якими правами.
Об'єкти, що знаходяться в каталогах / Library / LaunchDaemons і / System / Library / LaunchDaemons. запускаються під час завантаження операційної системи з правами суперкористувача root.
Об'єкти з папок / Library / LaunchAgents і / System / Library / LaunchAgents завантажуються в момент входу будь-якого користувача і працюють з правами даного користувача.
Об'єкти з папки / Users / your-username / Library / LaunchAgents (або
/ Library / LaunchAgents) описують додатки для конкретного користувача і працюють з його правами.
Не чіпати! Файли налаштувань, розташовані в папках / Library / LaunchDaemons і / System / Library / LaunchDaemons призначені для компонентів, які є частиною OS X, і необхідно багато разів подумати, перш ніж чіпати там що-небудь, так як ці зміни можуть серйозно вплинути на працездатність самої операційної системи. Відкриття доступу до папки / System / Library / LaunchDaemons НЕ root користувачам зробить вашу систему не завантажується.
Міняйте, як хочете. Об'єкти, розташовані в інших трьох папках можна спокійно переглядати і вивчати. Але перш ніж змінювати там що-небудь, необхідно розуміти деякі речі як це працює.
Під час завантаження і під час входу в систему дані із зазначених вище папок завантажуються і реєструються в системі. Після цього записані дії та умови будуть виконуватися до наступного перезавантаження, навіть якщо ви видалите файл настройки. Щоб отримати список всіх завантажених команд необхідно в терміналі набрати команду launchctl list і натиснути Enter.
Для того щоб зупинити запуск елемента без перезавантаження виконайте команду:
Додаток вказується з повним шляхом, найпростішим способом отримання повного шляху буде перетягування з вікна Finder в вікно терміналу (terminal.app). Вийде наступний код:
Дана команда вивантажить запущеного агента, що дозволяє AppleSript працювати з папками. Для повторного запуску замініть unload на load.
Необхідно розуміти, що більшість елементів з цих .plist файлів запускаються за розкладом або на вимогу, тому процес, знайдений вами в папці в даний момент часу може бути відключений. Перевірте, чи активне того чи іншого процесу можна використовувати "Моніторинг Системи", при цьому потрібно пам'ятати, що назва програми і ім'я процесу можуть відрізнятися.
Існують інші способи, які можуть бути використані для автоматичного запуску додатків:
Розширення ядра або драйвери kext знаходяться в папці / System / Library / Extension s і також запускаються при запуску операційної системи. Вони забезпечують функції "низького" рівня, такі як обробка аудіо та підтримку периферійних пристроїв. Більшість кекстов (kext) є частиною операційної системи і видалення сторонніх драйверів краще проводити за допомогою утиліти видалення випущеної виробником даного драйвера.
Завдання Cron. Cron - це Unix утиліта планування запуску процесів вбудована в Mac OS X. Завдання, записані в Cron можна подивитися командою терміналу
або за допомогою утиліти cronnix. Але компанія Apple не рекомендує використовувати даний механізм для управління процесами в Mac OS X.
Login scripts. Раніше ще існували сценарії входу в систему або скрипти автозавантаження, які запускалися при вході користувача. Зараз цей механізм є застарілим.