配置文件位置不同:
service命令使用/etc/init.d/目录下的脚本文件,
而systemctl命令使用/lib/systemd/system/目录下的unit文件。
状态信息不同:service命令通过执行脚本来获取服务状态信息,而systemctl命令通过systemd的状态管理功能来获取状态信息。因此,systemctl命令提供了更详细和准确的状态信息。
命令选项不同:service命令只有start、stop、restart、reload等简单选项,而systemctl命令提供了更多的选项,比如enable、disable、status、is-active、is-enabled等。
兼容性不同:一些较老的服务可能只能通过service命令启动或停止,而systemctl命令并不支持。
综上所述,虽然两者都可以用于管理系统服务,但systemctl命令更加强大和灵活,更适合在CentOS 7中使用。
service 指令
- service xxx start —启动指定的服务
- service xxx stop ----- 停止指定的服务
- service xxx restart ---- 重启指定的服务
- service xxx reload -----重新加载指定的服务 (修改了配置文件,在不重启服务的情况下,加载配置文件)
- service xxx status ---- 查看指定服务的运行状态
- service xxx enable —开机启动指定服务
- service xxx disable —禁止开机启动指定服务
- service xxx --full-restart -----重启指定的服务,会满足所有配置文件的改动
- service --status-all —列出所有系统中的服务及状态
- service xxx configtest —检查指定服务的配置文件是否正确
- service xxx condrestart — 重新启动指定的服务,但只有在该服务已经改动过时才执行
- service xxx try-restart —重新启动指定的服务,但在服务没有启动前不执行
- service xxx reload-or-restart —尝试通过卸载和重新加载服务来重新启动指定服务
systemctl 指令
- systemctl start xxx —启动指定的服务
- systemctl stop xxx – 停止指定的服务
- systemctl restart xxx ----重启指定的服务
- systemctl reload xxx —重新加载指定的服务
- systemctl status xxx – 查看指定服务的运行状态
- systemctl enable xxx — 开机启动指定的服务
- systemctl disable xxx —禁止开启启动指定的服务
- systemctl is-active xx —判断指定的服务是否正在运行
- systemctl is-enable xx —判断指定的服务是否开启启动了开机启动
- systemctl is-faild xxx —判断指定的服务是否启动失败
- systemctl mask xxx --锁定指定的服务,禁止所有对他的操作
- systemctl unmask xxx —解锁指定发服务
- systemctl daemon-reload —重载syatemctl 守护进程,读取最新的服务配置
- systemctl list-units —查看所有正在运行的服务
- systemctl list-unit-fiels 查看所有已安装的服务文件
- systemctl show xxx 显示指定服务的属性信息
- systemctl set-property 服务名 属性名=属性值 ----设置指定服务的属性
- systemctl edit 服务名 编辑指定服务的配置文件 (如果没有则新建一个)