Еще одно важное нововведение, которое тихой сапой появилось при агрейде системы до 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:
alexx@cubana:/etc/init$ sudo initctl stop cron cron stop/waiting alexx@cubana:/etc/init$ sudo initctl stop cron initctl: Unknown instance: alexx@cubana:/etc/init$ sudo initctl start cron cron start/running, process 13430 alexx@cubana:/etc/init$ sudo initctl start cron initctl: Job is already running: cro
На первый взгляд, все как бы просто, доступно и понятно. Но это-то и настораживает. Часто случается так, что отладка таких "простых и понятных" программ превращается в настоящий ад. Надеюсь, это не тот случай.