我发现了很多关于 ubuntu 的启动-停止-守护进程的好文档,并且有一个二进制daemon
.
但据我所知,在 rhel/centos 脚本中启动守护进程的规范方法是获取/etc/init.d/functions
然后使用该daemon()
函数。但我找不到任何好的例子或文档。
在 rhel/centos-6 init 脚本中启动守护进程的规范方法是什么?
我的第一次尝试是:
#!/bin/bash
source /etc/init.d/functions
daemon --user USER nohup /path/to/your/binary arg1 arg2 >/dev/null 2>&1 &
答案1
您要查找的文档和示例位于/usr/share/doc/initscripts-*/sysvinitfiles
CentOS/RHEL 上。这是该函数的具体文档daemon
:
守护进程 [ --check ] [ --user ] [+/-nicelevel] 程序 [参数] [&]
Starts a daemon, if it is not already running. Does other useful things like keeping the daemon from dumping core if it terminates unexpectedly. --check <name>: Check that <name> is running, as opposed to simply the first argument passed to daemon(). --user <username>: Run command as user <username>
使用 CentOS/RHEL 6,您还可以选择使用 upstart 作业文件,而不是编写 sysv 初始化脚本。