7.5. Управление уровнями выполнения в Debian

Проблема
Требуется выбрать службы, запускающиеся при загрузке системы Debian, на каждом
уровне выполнения. При установке новых служб (таких, как Apache, Exim или
OpenSSH) Debian настраивает их на запуск при загрузке. Но пока тестирование
еще не завершено, вы предпочитаете запускать и останавливать их вручную. А может
быть, во время тестирования на разных уровнях должны стартовать разные службы.
Решение
Воспользуйтесь командой update-rc.d. В следующем примере на уровне 5 до бавляется новая служба KDE Display Manager. Kdm — имя запускаемого файла
в /etc/init.d. Список уровней выполнения должен завершаться точкой:
# update-rc.d kdm start 99 5 . stop 01 0 1 2 3 4 6 .
Следующая команда удаляет службу на всех уровнях выполнения. Удаление
не может быть избирательным; удаляется либо всех, либо ничего.
# update-rc.d -f kdm remove
Изменение уровня выполнения для существующей службы производится в два
этапа: сначала удалите службу, а затем добавьте ее на нужных уровнях. Обязательно
создайте записи для всех служб на всех уровнях, как для запуска, так и для остановки.
Комментарий
Помните, что update-rc.d работает с именами сценариев в /etc/init.d. Для тестиро вания команд update-rc.d используется ключ -п:
# update-rc.d -f -n kdm remove
При необходимости можно удалить сценарии из init.d при помощи ключа remove:
# update-rc.d --purge kdm remove
Но обычно лучше оставить их на случай, если они понадобятся в будущем.
См. также
update-rc.d(8).