Еще одно важное нововведение, которое тихой сапой появилось при агрейде системы до 9.10, стал новый демон upstart
, который заменил собой старый, хорошо изученный SysV init
.
Теперь запуск сервисов настраивается не через скрипты в /etc/init.d
(хотя в целях обратной совместимости обвязка для их запуска имеется), а через конфигурационные файлы в /etc/init
.
Вот, скажем, конфигурация для cron
, /etc/init/cron.conf:
# cron - regular background program processing daemon # # cron is a standard UNIX program that runs user-specified programs at # periodic scheduled times description "regular background program processing daemon" start on runlevel [2345] stop on runlevel [!2345] expect fork respawn exec cron
Управление сервисами ('Jobs' в терминологии upstart) производится утилитой initctl:
[email protected]:/etc/init$ sudo initctl stop cron cron stop/waiting [email protected]:/etc/init$ sudo initctl stop cron initctl: Unknown instance: [email protected]:/etc/init$ sudo initctl start cron cron start/running, process 13430 [email protected]:/etc/init$ sudo initctl start cron initctl: Job is already running: cro
На первый взгляд, все как бы просто, доступно и понятно. Но это-то и настораживает. Часто случается так, что отладка таких "простых и понятных" программ превращается в настоящий ад. Надеюсь, это не тот случай.