如何查看服务的状态linux
如何查看服务的状态linux详细介绍
在 Linux 中查看服务状态的方法取决于系统使用的 init 系统(如 systemd、sysvinit 等),以下是最常用的方式:
一、使用
systemctl(systemd 系统,主流发行版默认)
适用于 CentOS 7+/Rocky Linux/Ubuntu 16.04+ 等新系统:
bash
systemctl status 服务名.service
systemctl status nginx.service
- 输出说明:
active (running):服务正在运行inactive (dead):服务未运行failed:服务启动失败(可通过journalctl -u <服务名>查看日志)
bash
systemctl list-units service running
systemctl list-units service failed
二、使用
service 命令(兼容 sysvinit 系统,如旧版 CentOS 6)
适用于 CentOS 6/RedHat 6 等旧系统:
bash
服务名 status
httpd status
三、通用方法:检查端口监听(辅助验证)
无论 init 系统如何,均可通过端口判断服务是否启动:
bash
端口号
ss 服务名或端口
ss
四、补充:服务的启用状态(非运行状态)
bash
systemctl is-enabled 服务名.service
服务名
五、典型场景示例
- 查看 Docker 服务是否运行:bash
systemctl status docker.service - 查看 MySQL 服务状态(注意服务名可能为
mysql或mariadb):bashsystemctl status mariadb.service - 排查服务启动失败:bash
journalctl 服务名.service
总结
- 优先用
systemctl status:适用于大多数新系统,信息最全面。 - 旧系统用
service status:兼容 CentOS 6 等过渡版本。 - 端口检查:作为辅助手段,确认服务是否监听目标端口。
根据你的 Linux 发行版和服务类型选择对应命令即可。