功能
控制和监控 linux 初始化系统和服务管理器 systemd
的工具
1.管理服务
启动/停止 服务:
sudo systemctl start apache2.service
sudo systemctl stop apache2.service
以上两行命令,分别是启动和停止 apache2
服务的命令,命令中的 .service
后缀是可选的,没有带后缀, systemctl
也会识别到对应的服务,如下命令,
sudo systemctl start apache2
重启服务:
sudo systemctl restart apache2
重新加载配置文件:
sudo systemctl reload apache2
2.开机启动服务
开机启动某个服务:
sudo systemctl enable nginx
停止开机启动:
sudo systemctl disable nginx
以上两个命令不会立刻执行,如果需要在立刻启动/停止服务,加上 --now
选项:
sudo systemctl enable nginx --now
3.查看服务的状态
systemctl
可以查看某个服务的状态:
systemctl status apache2
看到的结果大致如下:
此外,还可以使用 is-active
,is-enabled
和 is-failed
监控服务的状态
要查看系统中所有启动的服务,使用 list-unit
命令,使用 --type
选项筛选服务
systemctl list-units --type=service
查看所有的服务,包括没有运行的服务 添加上 --all
选项
systemctl list-units --type=service --all
此外,还可以根据服务的状态进行筛选,使用 --state
选项,多个状态使用顿号隔开,如列出系统中所有 非活动 或者 退出状态的服务:
systemctl list-units --type=service --all --state=exited,inactive
参考:
部分翻译于:
[1] https://www.linode.com/docs/quick-answers/linux-essentials/introduction-to-systemctl/