到某些½本没有办法直½塞入
systemd
的处理,因此这些½本还是被保留下来,
所以,我们在这里
还是稍微½绍了一下。更多更详细的数据就请自己查询旧版本啰!如下就是一个可以参考的版本:
.
http://linux.vbird.org/linux_basic/0560daemons/0560daemons-centos5.php
17.1.2 systemd
使用的
unit
分类
CentOS 7.x
以后,
Red Hat
系列的
distribution
放弃沿用多年的
System V
开机启动服务的流程,
就是前一小½提到的
init
启动½本的方法,
改用
systemd
这个启动服务管理机制~那么
systemd
有什么好处呢?
.
平行处理所有服务,加速开机流程
旧的
init
启动½本是『一项一项任务依序启动』的模式,因此不相依的服务也是得要一个一个的等待。但
目前我们的硬件主机系统与操作系统几乎都支持多核心架构了,
没道理未相依的服务不能同时启动啊!
systemd
就是可以让所有的服务同时启动,因此你会发现到,系统启动的速度变快了!
.
一经要求就响应的
on-demand
启动方式
systemd
全部就是½有一只
systemd
服务搭配
systemctl
指令来处理,无须其他额外的指令来支持。不像
systemV
还要
init, chkconfig, service...
等等指令。
此外,
systemd
由于常驻内存,因此任何要求
(on-demand)
都可以立即处理后续的
daemon
启动的任务。
.
服务相依性的自我检查
由于
systemd
可以自定义服务相依性的检查,因此如果
B
服务是架构在
A
服务上面启动的,那当你在没
有启动
A
服务的情况下½手动启动
B
服务时,
systemd
会自动帮你启动
A
服务喔!这样就可以免去管
理员得要一项一项服务去分析的麻烦~
(
如果读者不是新手,应该会有印象,当你没有启动网络,
但却启动
NIS/NFS
时,那个开机时的
timeout
甚至可达到
10~30
分钟
...)
.
daemon
功能分类
systemd
旗下管理的服务非常多,包山包海啦~为了厘清所有服务的功能,因此,首先
systemd
先定义所
有的服务为一个服务单位
(unit)
,并½该
unit
归类到不同的服务类型
(type)
去。
旧的
init
½分为
stand
alone
super daemon
实在不够看,
systemd
½服务单位
(unit)
区分为
service, socket, target, path, snapshot,
timer
等多种不同的类型
(type)
方便管理员的分类与记忆。
.
½多个
daemons
集合成为一个群组
如同
systemV
init
里头有个
runlevel
的特色,
systemd
亦½许多的功能集合成为一个所谓的
target
目,这个项目主要在设计操作环境的½置,
所以是集合了许多的
daemons
,亦即是执行某个
target
就是执
行好多个
daemon
的意思!
.
向下兼容旧有的
init
服务½本
基本上,
systemd
是可以兼容于
init
的启动½本的,因此,旧的
init
启动½本也能够透过
systemd
来管
理,只是更½½的
systemd
功能就没有办法支持就是了。
虽然如此,不过
systemd
也是有些地方无法完全取代
init
的!包括:
.
runlevel
的对应上,大概½有
runlevel 1, 3, 5
有对应到
systemd
的某些
target
类型而已,没有全部对应;
.
全部的
systemd
都用
systemctl
这个管理程序管理,而
systemctl
支持的语法有限制,不像
/etc/init.d/daemon
就是纯½本可以自定义参数,
systemctl
不可自定义参数。;