一个服务的提供会启动一到多个daemo,daemon为系统提供的服务所需要启动的进程。
查看某个服务使用的端口:grep [service name] /etc/services ;
(一)Daemon的分类:
Stand_alone:此daemon可自行单独启动服务。
特点:
1、可自行启动不必通过其他机制的管理;
2、一直占用内存与系统资源;
3、对于客户端的请求,响应速度快;
4、常见的stand_alone有httpd , vsftpd;
Super daemon:一个特殊的daemon来统一管理xinetd。
特点:
1、通过一个统一的daemon来唤起服务;
2、当有客户端请求时,才唤醒相对应的服务,请求结束后关闭服务。
3、 对于客户端的请求,响应比较慢;
4、 可以具有安全控管的机制,提供IP来源、时间、连线管理等功能;
5、 不会一直占用系统资源
6、常见的有telnet;
Super daemon可以有单线程处理和多线程处理的方式。
另一种分类:以工作形态来分类
Signal-control:通过信号来管理,只要有客户端请求,立即启动去处理,例打印机服务cupsd;
Interval-control:每个一段时间就主动去执行某项工作,在配置文件指定服务要进行的时间与工作,该服务会在指定的时间去完成工作,例atd ,crond ;
(二)服务与端口的对应
配置文件:/etc/services
格式:<daemon_name> <port/数据包协议> <该服务的说明>
Daemon的启动需要执行文件、配置文件、执行环境。启动脚本可以进行环境的检测、加载提供的函数功能、配置文件的分析、PID文件的放置,以及相关重要交换文件的锁住操作。
- /var/run/:启动的daemon进程PID记录处
- /etc/init.d/*:启动脚本放置处,管理一个或多个daemon的启动;
- /etc/sysconfig/*:各服务的初始化环境配置文件;
- /etc/xinetd.conf:super daemon配置文件;
- /var/lib/*:各服务产生的数据库;
(文章最后有每个目录的图)
Stand alone的启动:service [service name] (start|stop|restart|status…)
Super daemon的启动:因为super daemon是stand alone类型的,所以启动方式与stand alone一样。Service xinetd start;
(四)解析super daemon—xinetd的配置文件
——默认值配置文xinetd.conf
若xinetd管理的服务没有设置值,则会默认使用xinetd.conf的设置值。
针对每个服务的参数文件设置:
Service <service_name>
{
<attrivute> <assign_op> <value> <value> …
…
}
- service_name:服务的名称
- attrivute:管理参数
- assign_op:参数的设置方法
- = :表示后面的设置参数就是这样;
- += :表示后面的设置为在原来的设置里面加入新的参数;
- -= :表示后面的设置为在原来的设置里面舍弃这里注入的参数;
- value:设置值;
选项表:
/var/run/:启动的daemon进程PID记录处
/etc/init.d/*:启动脚本放置处,管理一个或多个daemon的启动;
- /etc/sysconfig/*:各服务的初始化环境配置文件;
- /etc/xinetd.conf:super daemon配置文件;
- /var/lib/*:各服务产生的数据库;