什么是start-stop-daemon以及如何使用它?
我正在尝试自动运行特定程序。只要系统启动,程序就应该运行。为此,我在/etc/init.d/
位置编写脚本。
答案 0 :(得分:58)
这是一个管理系统级后台进程(守护进程)的启动和停止的程序。您可以通过传入参数(例如创建/检查的pid文件)和要启动的进程的命令参数来使用它。
然后,你做两件事之一:
start-stop-daemon -S [other arguments] something
如果something
尚未运行,请启动something
。如果它正在运行,则什么也不做。
start-stop-daemon -K [other arguments] something
停止something
。如果something
未运行,则不执行任何操作。
man page提供了有关各种参数的更多信息。通常,/etc/init.d/
中提供了一个模板,其中包含用于控制后台进程运行的init进程的其他命令。
start-stop-daemon --start --background -m --oknodo --pidfile $ {PIDFILE} --exec $ {DAEMON} - $ {TARGETDIR}
--background
=启动作为后台流程-m
=制作一个PID文件。当您的进程未创建自己的PID文件并与--background
--oknodo
=如果守护程序未执行任何操作,则返回0
,而不是1
--pidfile ${PIDFILE}
=检查是否已创建PID文件--exec
=确保进程是此可执行文件的实例(在您的情况下为DAEMON
)答案 1 :(得分:9)