systemctl 管理 Linux 系统服务
基本服务管理
systemctl 可用于启动、停止和检查服务状态
如
# 启动服务
sudo systemctl start nginx.service
# 停止服务
sudo systemctl stop nginx.service
# 重启服务
sudo systemctl restart nginx.service
# 查看服务状态
systemctl status nginx.service
服务名称后缀 .service 可省略,例如 systemctl start nginx。
设置开机启动和禁用服务
可以通过以下命令设置服务在系统启动时自动运行或禁用:
# 启用服务开机启动
sudo systemctl enable nginx.service
# 禁用服务开机启动
sudo systemctl disable nginx.service
检查服务状态
以下命令可用于检查服务的运行状态:
# 检查服务是否正在运行
systemctl is-active nginx.service
# 检查服务是否设置为开机启动
systemctl is-enabled nginx.service
# 检查服务是否启动失败
systemctl is-failed nginx.service
列出服务列出系统中所有服务或特定类型的服务:
# 列出所有已启动的服务
systemctl list-units
# 列出所有服务(包括未启动的)
systemctl list-units --all
# 列出所有类型为 service 的服务
systemctl list-units --type=service
查看和编辑服务配置
可以查看服务的配置文件内容或编辑服务的配置:
# 查看服务配置文件
systemctl cat nginx.service
# 编辑服务配置
sudo systemctl edit nginx.service
# 编辑完整配置文件
sudo systemctl edit --full nginx.service
修改配置后需重新加载:
sudo systemctl daemon-reload
sudo systemctl restart nginx.service
管理服务依赖
可以查看服务的依赖关系:
# 列出服务的依赖
systemctl list-dependencies nginx.service
遮蔽和取消遮蔽服务
遮蔽服务可防止其被启动:
# 遮蔽服务
sudo systemctl mask nginx.service
# 取消遮蔽服务
sudo systemctl unmask nginx.service
systemctl 是 Linux 系统服务管理的核心工具,熟练掌握它可以大大提高系统管理效率
上一篇: Linux tar命令
