Назад | Перейти на главную страницу

Перезапуск службы с помощью / `chkconfig`?

После запуска:

sudo chkconfig --add X
sudo chkconfig X on

Я побежал chkconfig --list X:

$ chkconfig --list X
X           0:off   1:off   2:on    3:on    4:on    5:on    6:off

Насколько я понимаю, после kill -9-на нем служба перезапустится.

Однако после запуска kill -9 $PID где $PID - PID процесса службы, он не перезапускался.

Другими словами, бег ps -ef | grep X вернул только grep результат.

Как я могу использовать chkconfig чтобы гарантировать, что после сбоя моей службы она перезапустится?

Это не работа chkconfig .. Попробуйте контролировать или т.п.

ckconfig фактически ничего не останавливает и не запускает. Как объясняется в руководстве:

chkconfig предоставляет простой инструмент командной строки для поддержки /etc/rc[0-6].d иерархия каталогов, освобождая системных администраторов от задачи прямого управления многочисленными символическими ссылками в этих каталогах. ...

Вот и все.

На RHEL 6 init и Upstart - это то, что на самом деле запускает и останавливает определенные задания при загрузке, завершении работы или при изменении уровней запуска в зависимости от того, как это /etc/rc[0-6].d иерархия каталогов настроена.

Вы можете использовать Upstart для управления запуском служб и перезапуском в случае их сбоя с помощью respawn ключевое слово в init conf файл.

/etc/inittab может использоваться для принудительного перезапуска службы, если она использует сценарий инициализации в стиле SystemV, если мы говорим о RHEL> = 6.2 Upstart также доступен, и вы можете просто добавить respawn строку в файл определения службы в /etc/init. См. DigitalOcean руководство для подробностей.

Или подумайте об обновлении / переустановке до RHEL7.

Systemd поддерживает автоматический перезапуск служб при сбоях.

Бегать systemctl edit foo.service

[Service]
Restart=on-failure