13守护进程

13.3编程规则

1)umask将文件模式创建屏蔽字设置为0.

2)调用fork,然后使父进程退出。

3)调用setsid以创建一个新会话。

4)将当前工作目录更改为根目录。

5)关闭不再需要的文件描述符。

6)某些守护进程打开/dev/null使其具有文件描述符0,1,2

-----------------------------------------------------------------

13.4出错记录

三种方法产生日志消息

1)内核例程可以调用log函数

2)大多数守护进程调用syslog(3)函数以产生日志消息。

3)在此主机上的一个用户进程,伙同过tcp/ip网络链接到此主机得起它主机上的一个用户进程可将日志消息发向udp端口514

syslog设施函数

void openlog(const char *ident, int option, int facility)

void syslog(int priority, const char * format,...)

void closelog(void)

int setlogmask(int maskpri)

----------------------------------------------------------

13.5单实例守护进程

13.6守护进程的惯例

1)若守护进程使用锁文件,那么该文件通常存放在/var/run目录中。

2)若守护进程支持配置选项,那么配置文件通常存放在/etc目录中。

3)守护进程可用命令行启动,但通常它们是由系统初始化脚本之一/etc/rc*或/etc/init.d/*启动。如果终止时,需自动重新启动,可在/etc/inittab中为该守护进程包括_respawn记录项,这样init就将重启动该守护进程。

4)若一守护进程有一配置文件,那么当该守护进程启动时,它读该文件,但在此致后一般就不会再查看它。

你可能感兴趣的:(13守护进程)