initclt не видит сценарий инициализации в Ubuntu 12 64bit

Я создал сценарий инициализации в формате LSB и скопировал его в каталог /etc/init.d. Я могу вручную запустить, остановить, статус службы и все работает нормально. Затем я пытаюсь настроить службу на автоматическую остановку / запуск с уровнями выполнения, выполнив:

update-rc.d service defaults

и я вижу такие предупреждения, как:

update-rc.d: предупреждение: xxx аргументы уровня запуска start (none) не соответствуют значениям lsb default-Start (3 4 5).

и список initctl "не показывает мой сервис. Есть ли шаг, который мне нужно сделать, чтобы этот сервис регистрировался или отображался правильно? (Я знаю, что в RedHat это"chkconfig --add xxx), но я недостаточно хорошо знаю Ubuntu.

1 ответ

initctl является частью механизма выскочки Uubuntu. initctl list только показывает вам статус upstart-заданий. Ваш скрипт действительно является скриптом инициализации SysV.

Чтобы просмотреть состояние сценария инициализации SysV, используйте эту команду:

service --status-all

Ваш сервис должен быть указан там.


Для создания ссылок в /etc/rcN папки используют следующую команду:

update-rc.d your_init_script defaults

Из справочной страницы update-rc.d:

Если используются значения по умолчанию, то update-rc.d создаст ссылки для запуска службы на уровнях запуска 2345 и для остановки службы на уровнях запуска 016.

Другие вопросы по тегам