Linux daemon进程的应用、实现和原理

在生产环境中,很多程序需要后台自动运行。本文探讨了如何使用daemon进程,包括通过nohup或作为其他daemon的子进程启动,以及何时选择写成daemon程序。介绍了Linux C/C++中使用`daemon()`函数创建daemon进程的方法,并详细阐述了实现daemon进程的步骤,如fork、setsid、umask、chdir及信号处理等核心操作。
摘要由CSDN通过智能技术生成

什么情况下用daemon进程

生产环境下,除了我们ssh登录上去,然后手动跑的那部分以外,其他都是自动运行的,这些大部分都应该是后台执行的。如何才能后台执行呢?

  1. nohup ./XXX & 
  2. 由系统的其他daemon进程启动。这样的话,你的程序是它的子进程,跟终端没关系。退出终端也不会导致进程退出。如写在crontab里。 
  3. 写成daemon程序,可以手动执行,退出终端时程序不退出。

如何选择呢?

(1)首先,清理过期日志这一类需求,可以写一个死循环一直运行,也可以写在crontab里,每次执行完就退出(如果每分钟一次可以满足的话);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值