Linux 之systemd服务简介
-
Systemd机制
systemd是Linux下的一种init软件,作用是提供更优秀的框架以表示系统服务之间的依赖关系,并依次实现系统初始化时服务的并行启动,同时达到降级shell的系统开销效果。systemd是内核启动后拉起的第一个进程,是用户空间的1号进程,负责启用和管理系统的各种服务。 -
systemd的工具
1)systemctl:用作内省和控制systemd系统和服务管理器的状态。
2)system-cgls:以树形递归显示选中的Linux控制组织结构层次。
3)systemamd:一个systemd系统和服务管理器的图形化前端。 -
systemctl 命令
该命令可以查看系统状态和管理系统及服务。详见man 1 systemctl。
1)查看系统systemd的service整体情况
systemctl list-units --type service
2)控制systemd系统与服务管理器,用来对服务进行精细化控制/查询的命令
激活服务 systemctl start xxx.service
停止服务 systemctl stop xxx.service
重启服务 systemctl restart xxx.service
查看服务状态 systemctl status xxx.service
检查服务是否配置为自动启动 systemctl is-enabled xxx.service
将服务设置为自动启动 systemctl enable xxx.service
将服务设置为取消自动启动 systemctl disable xxx.service -
service命令
service命令本身是一个shell脚本,它在/etc/init.d/目录查找指定的服务脚本,然后调用该服务脚本来完成任务。
查看服务状态 service service.name status
启动服务 service service.name start
关闭服务 service service.name stop
查看所有服务状态 service --status-all -
systemd-analyze 命令
systemd-analyze 命令用于查看启动耗时,显示systemd设置服务相关的性能数据。
系统启动时间总览 systemd-analyze
查看每个服务的启动耗时 system-analyze blame
显示指定服务的启动流 systemd-analyze critical-chain atd.service