13章的过程:
1 文件的权限 = open参数3 &(~umask) umask防止权限过大
0644= 06660022
要取消限制: umask(0);设置屏蔽字为0
2 fork : 结束父进程
3 在孤儿进程中调用setsid(void);
4 chdir("/")
5 关闭已经打开的文件描述符
6将0,1,2重定向到/dev/null
守护进程的配置: 全部通过配置文件控制
如果出错应该如何处理?
日志(自定义的日志 或者 系统日志(/var/log/messages))
如果要放到系统日志中: 必须通过syslogd函数(linux习惯 :XXXd,即为守护进程)
//syslog
syslog(): 将错误信息写入到系统日志中!依赖syslogd服务!
syslogd (参数1,参数2,参数3)
参数1 :信息的严重性(自己规定的,跟系统无关)
参数2 3 :类似printf
1 文件的权限 = open参数3 &(~umask) umask防止权限过大
0644= 06660022
要取消限制: umask(0);设置屏蔽字为0
2 fork : 结束父进程
3 在孤儿进程中调用setsid(void);
4 chdir("/")
5 关闭已经打开的文件描述符
6将0,1,2重定向到/dev/null
守护进程的配置: 全部通过配置文件控制
如果出错应该如何处理?
日志(自定义的日志 或者 系统日志(/var/log/messages))
如果要放到系统日志中: 必须通过syslogd函数(linux习惯 :XXXd,即为守护进程)
//syslog
syslog(): 将错误信息写入到系统日志中!依赖syslogd服务!
syslogd (参数1,参数2,参数3)
参数1 :信息的严重性(自己规定的,跟系统无关)
参数2 3 :类似printf