Systemd介绍
在Linux启动流程的最后阶段,系统加载完根文件系统(rootfs)后随后会启动第一个用于管理用户空间资源的服务程序。在CentOS 5上称之为SysV init,在CentOS 6上则为Upstart init。而对于CentOS 7来说,全新的Systemd不同于早期的init程序,它有自己的管理机制,并且更高效、易于管理。
Systemd的核心是unit,它将系统功能划分为不同的unit,通过为这些unit提供各自的配置文件来管理各种功能,unit类型随后会提到。
Systemd特性:
服务的并行启动: 并非真正意义上上的并行启动,只是在服务被需要时根据某种激活机制来激活该服务,这些激活机制随后会介绍到。
按需激活机制: 根据某种条件激活服务,有效减少了内存资源消耗,下面是几种激活机制。
- 基于socket的激活机制:某些服务本身并未启动,由Systemd代为监听在某个套接字上,当有客户请求时,Systemd则会唤醒对应服务并向该服务传递该套接字,实现了服务与socket的分离。
- 基于bus的激活机制:与socket激活机制类似,在Linux上基于dbus进行通信的服务程序默认不启动,仅在被第一次请求时激活。
- 基于device的激活机制:当有设备添加至Linux主机时,激活某些服务程序。如挂载新设备时,就会激活挂挂载服务程序。
- 基于path的激活机制:当在某些目录下创建文件时,就可以指定激