一、systemctl介绍
通常,Linux 的启动一直采用init进程。
我们经常看到
$ sudo /etc/init.d/apache2 start
或者
$ service apache2 start
这种方法有两个缺点:
一是启动时间长。init进程是串行启动,只有前一个进程启动完,才会启动下一个进程。
二是启动脚本复杂。init进程只是执行启动脚本,不管其他事情。脚本需要自己处理各种情况,这往往使得脚本变得很长。
为此,LINXU设计引入了Systemd
它的设计目标是,为系统的启动和管理提供一套完整的解决方案。根据 Linux 惯例,字母d是守护进程(daemon)的缩写。Systemd 这个名字的含义,就是它要守护整个系统。使用了 Systemd,就不需要再用init了。Systemd 取代了initd,成为系统的第一个进程(PID 等于 1),其他进程都是它的子进程。
通过上图的命令,我们可以查看Systemd版本。
总的来说,Systemd 的优点是功能强大,使用方便,缺点是体系庞大,非常复杂。事实上,现在还有很多