systemctl 与 service 命令对比速记清单
功能覆盖systemctl包含服务生命周期管理 + 开机自启 + 日志集成,功能更全;service仅支持基础启停。系统兼容性:CentOS 7+/Ubuntu 16.04+ 用systemctl;CentOS 6/Ubuntu 14.04 用servicechkconfig。日志便捷性systemctl可通过journalctl直接调取服务日志,无需手动找日志路径。
·
| 功能场景 | systemctl(Systemd 主流系统) |
service(SysVinit 老旧系统) |
适用系统 / 测试场景说明 |
|---|---|---|---|
| 启动服务 | systemctl start 服务名 |
service 服务名 start |
测试环境部署后启动依赖服务(如 nginx、mysql) |
| 停止服务 | systemctl stop 服务名 |
service 服务名 stop |
测试环境维护、清理时停止服务 |
| 重启服务 | systemctl restart 服务名 |
service 服务名 restart |
修改配置后重启服务,验证配置生效(如 tomcat) |
| 重载配置(不中断服务) | systemctl reload 服务名 |
无直接对应命令需用 service 服务名 reload(部分服务支持) |
不中断测试进程,热更新配置(如 nginx) |
| 查看服务状态 | systemctl status 服务名 |
service 服务名 status |
测试前快速判断服务是否正常运行 |
| 设置开机自启 | systemctl enable 服务名 |
chkconfig 服务名 on |
确保测试环境重启后服务自动恢复 |
| 关闭开机自启 | systemctl disable 服务名 |
chkconfig 服务名 off |
避免无关服务占用测试端口 / 资源 |
| 检查服务是否运行 | systemctl is-active 服务名 |
无直接对应命令需结合 ps 过滤 |
脚本化测试时快速校验服务状态 |
| 检查开机自启状态 | systemctl is-enabled 服务名 |
chkconfig --list 服务名 |
确认测试环境服务的自启配置 |
| 查看所有运行中服务 | systemctl list-units --type=service --state=running |
service --status-all |
排查测试环境中异常启动的服务 |
| 查看服务日志 | journalctl -u 服务名journalctl -u 服务名 -f(实时跟踪) |
无集成命令需手动查看日志文件(如 /var/log/服务名.log) |
测试问题定位,跟踪服务运行报错 |
关键区别总结
- 功能覆盖:
systemctl包含服务生命周期管理 + 开机自启 + 日志集成,功能更全;service仅支持基础启停。 - 系统兼容性:CentOS 7+/Ubuntu 16.04+ 用
systemctl;CentOS 6/Ubuntu 14.04 用service+chkconfig。 - 日志便捷性:
systemctl可通过journalctl直接调取服务日志,无需手动找日志路径。
更多推荐



所有评论(0)