Linux服务器查看启动服务的5种方式总结

 更新时间:2025年09月15日 14:09:51   作者:刘一说  
本文介绍Linux系统查看服务状态的多种方法,包括systemctl(推荐)、service、检查端口及进程,建议优先使用systemctl查看运行服务,结合ss -tuln验证网络监听,最后用systemctl list-unit-files确认开机自启项,以全面掌握服务情况

1. 使用systemctl命令(推荐,适用于使用 systemd 的系统)

现代Linux发行版大多使用 systemd 作为初始化系统和服务管理器。

查看所有已激活(运行中)的服务

systemctl list-units --type=service --state=active

或简写:

systemctl --type=service --state=active

查看所有已启用(开机自启)的服务

systemctl list-unit-files --type=service --state=enabled

查看所有服务的综合状态(包括运行和未运行)

systemctl list-units --type=service

说明

  • active 状态表示服务当前正在运行。
  • enabled 表示服务设置为开机自启动。
  • loaded 表示服务配置已加载。

2. 使用service命令(传统SysVinit系统,或兼容模式)

虽然较老,但在许多系统上仍然可用。

查看所有服务状态

service --status-all
  • [ + ] 表示服务正在运行。
  • [ - ] 表示服务未运行。
  • [ ? ] 表示状态未知。

查看特定服务状态

service <service_name> status
# 例如:
service sshd status
service nginx status

3. 检查监听的网络端口(间接查看网络服务)

许多服务会监听特定的端口。通过查看监听的端口,可以推断哪些网络服务已启动。

# 使用 netstat (需安装 net-tools)
netstat -tuln

# 或使用 ss (更现代,推荐)
ss -tuln
  • -t:显示TCP端口
  • -u:显示UDP端口
  • -l:仅显示监听状态的端口
  • -n:以数字形式显示端口号和IP地址(不解析名称)

示例输出解读

tcp    0    0 0.0.0.0:22    0.0.0.0:*    LISTEN    # 表示SSH服务在运行
tcp    0    0 0.0.0.0:80    0.0.0.0:*    LISTEN    # 表示Web服务(如Nginx/Apache)在运行

4. 查看开机自启服务(SysVinit风格)

对于仍使用SysVinit的系统,或查看传统服务的开机启动项:

# CentOS/RHEL
chkconfig --list

# Ubuntu/Debian
ls /etc/rc*.d/S*

5. 查看进程(最底层方法)

直接查看正在运行的进程,可以找到服务相关的进程。

# 查看所有进程
ps aux

# 或结合grep过滤特定服务
ps aux | grep nginx
ps aux | grep mysql

总结与建议

方法优点推荐场景
systemctl list-units --type=service --state=active最准确、最标准首选方法,查看当前运行的服务
systemctl list-unit-files --type=service --state=enabled查看开机自启服务检查哪些服务会随系统启动
ss -tuln查看网络服务监听情况快速判断Web、数据库等网络服务是否启动
service --status-all兼容性好在较老系统或快速检查时使用

推荐操作流程:

  1. 首先使用 systemctl --type=service --state=active 查看当前运行的服务。
  2. 使用 ss -tuln 验证关键网络服务(如SSH、Web、数据库)是否在监听端口。
  3. 如需了解开机启动项,使用 systemctl list-unit-files --type=service --state=enabled

这样可以全面、准确地掌握服务器上运行的服务情况。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Linux(centos7)虚拟机没有IP问题及解决方案

    Linux(centos7)虚拟机没有IP问题及解决方案

    文章介绍了在CentOS 7中配置虚拟机网络并使用Xshell连接虚拟机的步骤,首先,检查并配置网卡ens33的ONBOOT属性为yes,然后重启网络服务,接着,使用Xshell新建连接,输入虚拟机的IP地址、端口号以及账户密码,完成连接并可以在Xshell上执行命令
    2025-11-11
  • Linux下磁盘空间不足问题的处理方案

    Linux下磁盘空间不足问题的处理方案

    在Linux系统运维过程中,磁盘空间不足是最常见的问题之一,当系统提示"No space left on device"或通过df -h命令发现磁盘使用率接近100%时,系统性能会显著下降,本文将详细介绍Linux下磁盘空间不足问题的处理方案,需要的朋友可以参考下
    2025-04-04
  • linux服务器中开放端口实现过程

    linux服务器中开放端口实现过程

    本文介绍了如何在Linux上使用firewall命令开放端口,包括查看状态、开启和关闭端口、添加和移除IP段规则、批量添加区间端口、开放系统服务等操作
    2025-11-11
  • linux中Centos7的LVM磁盘扩容问题

    linux中Centos7的LVM磁盘扩容问题

    本篇文章给大家详细介绍了在linux中Centos7的LVM磁盘扩容问题,以及注意点做了分享,需要的朋友分享下吧。
    2018-02-02
  • 在 Linux 终端中查找域名 IP 地址的命令(五种方法)

    在 Linux 终端中查找域名 IP 地址的命令(五种方法)

    本教程介绍了如何在 Linux 终端验证域名或计算机名的 IP 地址。我们将教你如何有效使用这些命令在 Linux 终端中识别多个域的 IP 地址信息
    2019-12-12
  • Ubuntu系统缺少iptables工具的解决方法

    Ubuntu系统缺少iptables工具的解决方法

    文章介绍了如何解决Docker启动失败的问题,主要原因是系统缺少iptables工具,解决方案包括在Ubuntu/Debian系统上安装iptables并重启Docker服务,此外,还详细描述了如何在离线环境下安装iptables,需要的朋友可以参考下
    2026-02-02
  • 详解xshell远程连接自动断开的问题解决办法

    详解xshell远程连接自动断开的问题解决办法

    这篇文章主要介绍了详解xshell远程连接自动断开的问题解决办法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07
  • LNMP系列教程之 设置404错误页面

    LNMP系列教程之 设置404错误页面

    在之前的文章中分享到”设置301重定向的方法“文章,提到301,那肯定也要说说404错误页面吧。因为我们默认安装了LNMP后404页面不会自动设置,也不会默认到程序的404错误页面,而需要我们手工设置
    2012-09-09
  • linux查看匹配内容的前后几行方法

    linux查看匹配内容的前后几行方法

    这篇文章给大家分享了linux查看匹配内容的前后几行的方法以及实例代码,有兴趣的朋友可以参考学习下。
    2018-07-07
  • Windows 10利用虚拟机安装Linux图文教程

    Windows 10利用虚拟机安装Linux图文教程

    这篇文章主要为大家详细介绍了Windows 10利用虚拟机安装Linux的图文教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-03-03

最新评论