Чому крон застаряється?


21

Щойно я з'ясував, що cronце застаріло в Mac OS X. Чому це так, і зрештою, він буде повністю видалений з майбутніх версій?

Відповіді:


24

З випуском Mac OS 10.4 launchdбуло обрано заміну cronв Mac OS. Ось кешована версія запущеної сторінки від Apple Developer Connection в 2005 році. У ній пояснюється причина cronзастарілості, а також переваги launchdз точки зору Apple.

Резюме: launchdбуло створено , щоб не тільки замінити , cronале і init, xinetdдля кращої продуктивності і кращого контролю над конфігурацією і самі актуальних завдань.

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


13

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

У двох словах, launchdзамінює 7 основних завдань та завантаження скриптів ( inetd , init та rc та пов'язані з ними структури скриптів оболонки, crond , atd , watchdogd , SystemStarter ) одним набагато більш потужним відкритим інструментом.

Чому:

  • швидше
  • більш потужний
  • уніфіковані та централізовані
  • більш безпечним

Коли: 29 квітня 2005 р. (Коли OS X Tiger був випущений на продаж)

Немає нічого, що не заважає нам усім використовувати запускати і запускати крон зараз на Тигра, Леопарда або Снігового Леопарда.

Якщо майбутня Apple припинить доставку /usr/sbin/cron, вона, безумовно, закінчиться, як wget та інші зрілі інструменти з відкритим кодом, які збираються та потребують додавання як окремий інструмент командного рядка.


5

Я навіть не знаю, чи був cron застарілим. man crontabСхоже, вказує на те, що він не:

(Примітка Дарвіна: Хоча cron (8) і crontab (5) офіційно підтримуються в Дарвіні, їх функціональність була поглинена в запуск (8), що забезпечує більш гнучкий спосіб автоматичного виконання команд. Для отримання додаткової інформації див. Startctl (1)) .)

Посібник з програмування демонів та служб говорить, що він застарілий:

Примітка: Хоча це все ще підтримується, cron не є рекомендованим рішенням. Це застаріло на користь запуску.

crontab також потрібен POSIX , а ОС X повинна бути сумісною з SUS.

У будь-якому випадку, cron, ймовірно, не припинить роботу незабаром, і я не знаю, чи можна сказати, що він повільніше або менш безпечний, ніж запуск. Процес керування повинен використовувати майже не час та пам'ять процесора. Деякі переваги використання або навчання cron полягають у тому, що він також доступний на інших платформах, а формат конфігурації - простіший.

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