系统服务配置
2025-02-17
Systemd 服务管理
服务单元介绍
Systemd 中的服务单元(Unit)是系统服务的基本单位:
- 以
.service结尾的文件表示一个服务 - 支持开机自启动配置
- 可以管理传统的 init 服务
服务状态查看
# 列出所有服务单元
systemctl list-unit-files --type=service
# 查看服务详细信息
systemctl status service_name
# 查看服务配置文件
systemctl cat service_name.service服务状态说明
| STATE | 说明 |
|---|---|
| disabled | 开机不启动 |
| enabled | 开机自启动 |
| static | 对应的Unit文件没有定义[Install]区域,所以无法设置为开机启动 |
| masked | 服务被禁止启动 |
服务管理命令
# 启动服务
systemctl start service_name
# 停止服务
systemctl stop service_name
# 重启服务
systemctl restart service_name
# 重新加载配置
systemctl reload service_name
# 设置开机自启
systemctl enable service_name
# 禁用开机自启
systemctl disable service_name系统管理
# 查看启动失败的服务
systemctl --failed
# 重新加载所有服务文件
systemctl daemon-relaod服务配置文件
配置文件位置
/etc/systemd/system/- 系统服务配置文件/usr/lib/systemd/system/- 软件包安装的服务文件
配置文件示例
[Unit]
Description=My Service
After=network.target
[Service]
Type=simple
ExecStart=/usr/bin/myservice
Restart=always
[Install]
WantedBy=multi-user.target最佳实践
服务管理
- 使用 systemctl 管理服务
- 定期检查服务状态
- 及时处理失败服务
配置建议
- 遵循最小权限原则
- 合理设置依赖关系
- 添加适当的服务描述
注意:
- 修改配置后需要重新加载
- 注意服务间的依赖关系
- 重要服务建议设置自动重启