Linux的系统服务

daemon服务

系统为了某些功能必须要提供一些服务,这个服务称为service。但service的提供总是需要进程的运行,所以实现这个service的程序我们就称为daemon。举例来说,实现循环型例行性工作调度服务的程序为crond这个daemon。

daemon的主要分类

stand_alone:此daemon可以自行单独启动服务

这种类型的daemon可以自行启动而不必通过其他机制的管理,它的特点是常驻内存,因此对于发生客户端的请求,其响应速度较快,常见的stand_alone服务有httpd,vsftpd等。

super daemon:一个特殊的daemon来统一管理

这一种服务的启动方式是通过一个统一的daemon来负责唤起服务,这个特殊的daemon就被称为super daemon。它的特点是当没有客户端请求时,各项服务都是未启动的状态,等到有客户端请求时,super daemon才唤醒相对应的服务,当客户端请求过后,被唤醒的服务也会关闭并释放系统资源。

这种机制的好处是:(1)由于super daemon由daemon唤醒,可以有一个较为安全的管控机制。(2)由于在客户端连接后就关闭,因此不会一直占用系统资源。缺点在于:由于不是常驻内存,因此响应速度较慢。

daemon的工作形态类型

signal-control

只要有客户端请求,就会立即启动处理。

interval-control

每隔一段时间就会主动去执行某工作。

服务与端口的对应

查看方法:cat /etc/services

daemon的启动脚本与启动方式

/etc/init.d/*:启动脚本放置处

系统上几乎所有的服务启动脚本都放置在这里。

/etc/sysconfig/*:各服务的初始化环境配置文件

几乎所有的服务都会将初始化的一些参数设置写入到这个目录下

/var/run/*:各服务的程序PID记录处

service [service name] (start|stop|restart|...) 修改各服务的状态            

  service --status-all 列出所有服务的状态

设置开机后立即启动服务的方法

先来了解一下Linux的开机过程

1、打开计算机电源,开始读取BIOS并进行主机的自我测试。

2、通过BIOS取得第一个可开机设备,读取主要开机区(MBR)取得启动装载程序。

3、通过启动装载程序的设置,取得kernel并加载内存且检测系统硬件。

4、内核主动调用init进程。

5、init进程开始执行系统初始化(/etc/rc.d/rc.sysinit)。

6、依据Init的设置进行deamonstart(/etc/rc.d/rc[0-6].d/*)

7、加载本机设置。




最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容