Автоматичний запуск програм в mac os x

Коли ви вмикаєте свій Mac, то в фоновому режимі запускається досить велика кількість процесів, додатків і доповнень. Як правило, ці автоматично запущені програми відповідають вашим бажанням, але іноді в Activity Monitor (Моніторинг Системи) можна побачити програми, які Ви не запускали і вони вам не потрібні. Звідки беруться такі процеси? Адже дані додатки збільшують час завантаження операційної системи і можуть знизити продуктивність комп'ютера. Є різні методи управління автоматично запускаються додатками в операційній системі Apple Mac OS X.

Події при вході користувача в систему.

Автоматичний запуск програм в 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. Раніше ще існували сценарії входу в систему або скрипти автозавантаження, які запускалися при вході користувача. Зараз цей механізм є застарілим.

Схожі статті