使用 inittab 中的重生条目重新启动 linux 应用程序不起作用
Restarting a linux app using a respawn entry in inittab does not work
场景:
我在 linux 上有一个进程 运行,它在后台由连接在 /etc/init.d/
的脚本启动,称为 MyApp
,它只是一个 shell 脚本,没有.sh
。以下是我的init.d
脚本script
#!/bin/sh
PARAM=
case ${PARAM} in
start)
MyApp &
;;
stop)
killall -9 MyApp
;;
*)
echo "Usage: [=11=] {start|stop}" >&2
exit 1
;;
esac
如您所见,它在后台启动 MyApp
。
Objective 问题:
我想在它崩溃时重新启动 MyApp
。我试图找出这是如何完成的。看起来我必须从我阅读的各种链接向 /etc/inittab
添加一个条目。所以我在 /etc/inittab
.
中添加了以下条目
MyApp:12345:respawn:MyApp
问题:
以上似乎不起作用,我怎样才能让它正常工作?我在这里做错了什么?
注:
由于我添加到 /etc/inittab
的条目,我正在执行 killall -9 MyApp
并期望它重新启动。这个预期是否正确?
case ${PARAM} in
start)
(while :; do MyApp ;done) &
;;
这个答案来的比较晚,但是你在你写的行中的唯一 ID 是 5 个字符。 ID 的最大长度必须为 4。
场景:
我在 linux 上有一个进程 运行,它在后台由连接在 /etc/init.d/
的脚本启动,称为 MyApp
,它只是一个 shell 脚本,没有.sh
。以下是我的init.d
脚本script
#!/bin/sh
PARAM=
case ${PARAM} in
start)
MyApp &
;;
stop)
killall -9 MyApp
;;
*)
echo "Usage: [=11=] {start|stop}" >&2
exit 1
;;
esac
如您所见,它在后台启动 MyApp
。
Objective 问题:
我想在它崩溃时重新启动 MyApp
。我试图找出这是如何完成的。看起来我必须从我阅读的各种链接向 /etc/inittab
添加一个条目。所以我在 /etc/inittab
.
MyApp:12345:respawn:MyApp
问题:
以上似乎不起作用,我怎样才能让它正常工作?我在这里做错了什么?
注:
由于我添加到 /etc/inittab
的条目,我正在执行 killall -9 MyApp
并期望它重新启动。这个预期是否正确?
case ${PARAM} in
start)
(while :; do MyApp ;done) &
;;
这个答案来的比较晚,但是你在你写的行中的唯一 ID 是 5 个字符。 ID 的最大长度必须为 4。