Systemd 是 Linux 系统工具,用来启动守护进程,已成为大多数发行版的标准配置。
由来
- 历史上,Linux 的启动一直采用init进程。
- 下面的命令用来启动服务。
1
2
3sudo /etc/init.d/apache2 start
或者
service apache2 start - 这种方法有两个缺点。
- 一是启动时间长 init 进程是串行启动 只有前一个进程启动完 才会启动下一个进程
- 二是启动脚本复杂 init 进程只是执行启动脚本 不管其他事情 脚本需要自己处理各种情况 这往往使得脚本变得很长
Systemd 概述
- Systemd 就是为了解决这些问题而诞生的。它的设计目标是,为系统的启动和管理提供一套完整的解决方案。
- 根据 Linux 惯例,字母
d
是守护进程(daemon)的缩写。 Systemd 这个名字的含义,就是它要守护整个系统。
Systemd 命令
开机自启动
systemctl enable firewalld
关闭自启动
systemctl disable firewalld
检查服务状态
systemctl status firewalld
检查发服务是否自启动
systemctl restart httpd.service
检查服务是否激活
systemctl is-active firewalld
显示所有已启动的服务
systemctl list-units --type=service
锁定服务
systemctl mask firewalld
解锁服务
systemctl unmask firewalld
重载服务
systemctl daemon-reload
一个简单的服务脚本
1 | [Unit] |