Linux守护进程
守护进程
Daemon(进程),是Linux中的后台服务器进程,通常独立于控制终端,并且周期性的执行某种任务或者等待处理。某些发生的事件,一般采用d结尾的名字。
Linux后台的一些系统服务进程,没有控制终端,不能直接和用户交互。不受用户登录、注销的影响,一直在运行着,他们就是守护进程。
创建守护进程
- 创建子进程,父进程退出。
使得所有工作在子进程中的任务脱离终端。 - 在子进程中创建新
session
setsid()
函数- 使得子进程完全独立出来,脱离父进程的权限控制
- 改变当前目录为根目录
chdir()
函数- 这是为了防止占用可卸载的文件系统
- 重新设置文件掩码
umask()
函数- 防止继承的文件创建屏蔽字来拒绝某些权限
- 关闭文件描述符
- 关闭:
STDOUT_FILENO
、STDIN_FILENO
、STDERR_FILENO
。 dup2()
函数,重定向到dev/null
- 关闭:
- 守护进程的任务。
完成前面的准备工作,这里开始实现任务。 - 守护进程退出
可使用信号机制。
原文地址:https://blog.csdn.net/H520xcodenodev/article/details/140691766
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!