Сценарий:
У меня есть процесс, работающий в Linux, который запускается в фоновом режиме с помощью скрипта, подключенного к /etc/init.d/
, называемого MyApp
, который является просто сценарием оболочки без .sh
. Ниже приведен мой init.d
скрипт сценария
#!/bin/sh
PARAM=$1
case ${PARAM} in
start)
MyApp &
;;
stop)
killall -9 MyApp
;;
*)
echo "Usage: $0 {start|stop}" >&2
exit 1
;;
esac
Как вы можете видеть, он начинается MyApp
на заднем плане.
Цель и задача:
Я хочу перезагрузить MyApp
, когда он падает. Я пытался выяснить, как это делается. Похоже, я должен добавить запись в /etc/inittab
из различных ссылок, которые я прочитал. Поэтому я добавил следующую запись в /etc/inittab
.
MyApp:12345:respawn:MyApp
Вопрос:
Выше, кажется, не работает, и как я могу заставить это работать правильно? Что плохого я здесь делаю?
Примечание:
Я делаю killall -9 MyApp
и ожидаю его перезапуска из-за записи, которую я добавил в /etc/inittab
. Это ожидание правильно?