守护进程编写规则
1、首先要做的是调用umask将文件模式创建屏蔽字设置为0。
2、调用fork,然后使父进程退出。
3、调用setsid以创建一个新会话。
4、将当前工作目录更改为根目录。
5、关闭不再需要的文件描述符。
6、某些守护进程打开/dev/null使其具有文件描述符0、1和2。
守护进程的惯例
1、若守护进程使用锁文件,那么该文件通常存放在/var/run目录中(注意,这个目录需要超级用户才可以操作)。锁文件的名字通常是name.pid。
2、若守护进程支持配置选项,那么配置文件通常存放在/etc目录中。配置文件的名字通常是name.conf
3、守护进程可用命令行启动,但通常它们是由系统初始化脚本之一(/etc/rc*或者/etc/init.d/*)启动的。
4、若一守护进程有一配置文件,那么当该守护进程启动时,它读该文件,但在此之后一般就不会再查看它。如果想要守护进程重新读配置文件,可以让守护进程捕捉SIGHUP信号,接收到时,重新读取配置文件。
可以使用文件锁实现单实例守护进程