linux中的daemon进程

1.daemon进程

       service是个抽象的概念,实现这个service的进程我们称之为daemon进程。可以理解为daemon为进程里面的一类。daemon可以翻译成守护进程、后台进程。


2.daemon进程的命名规则

daemon进程一般会在服务的名称后面加上一个字母d,流入httpd,sshd,atd,crond等等


3.daemon进程的分类

按照daemon的启动和管理方式来区分,分为如下两类:

(1)可以单独启动的stand_alone daemon进程

stand_alone daemon进程的启停脚本scripts都放在了/etc/init.d/*目录中,例如启停httpd服务的命令是:

cd /etc/init.d && ./httpd start

cd /etc/init.d && ./httpd stop

另外可以用一个脚本/sbin/service来启动服务,其实是对上面的方式封装了一下。例如启停httpd服务的命令也可以是:

/sbin/service httpd start

/sbin/service httpd stop

备注:

A)/sbin/service  --status-all  可以查看所有服务的工作状态

B)这些都是sysvinit初始化init系统的管理方式,而使用systemd就不是这个样子了哈


(2)由一个称为super daemon的进程来统一管理的daemon进程

        super daemon进程有inetd和xinetd,现在主流用的是xinetd,其实super daemon自身是一个stand_alone的daemon进程,那么它自身的启停方式参见上面的说明即可。

       super daemon进程的工作机制是其管理了很多的服务,当没有客户端的请求时,各项服务都是未启动的状态,等待有来自客户端的请求时,super daemon才唤醒相对应的服务。当客户端的请求结束后,被唤醒的这个服务也会关闭并释放系统资源。这是和stand_alone daemon进程的重要区别,也就是daemon进程是否一直开启服务。常见的由super daemon管理的daemon进程有rsync,telnet等。

       super daemon自身的配置文件是/etc/xinetd.conf

       super dammon所管理的服务,都会在/etc/xinit.d目录下有一个单独的文件,文件中标识该服务是否disable等信息。例如rsync服务对应的文件就是/etc/xinetd.d/rsync。

       举例来说,使用xinetd服务来启停rsync daemon服务得操作是:

#使用xinetd super-daemon进程来启动rsync服务
步骤一:编辑/etc/xinetd.d/rsync,将disable的值改为no
步骤二:重启xinetd服务,使用/etc/init.d/xinetd restart命令

#使用xinetd super-daemon进程来停止rsync服务
步骤一:编辑/etc/xinetd.d/rsync,将disable的值改为yes
步骤二:重启xinetd服务,使用/etc/init.d/xinetd restart命令

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值