如何使用 systemctl 命令?

在Linux系统中,服务(Service)是后台运行的守护进程,负责处理关键任务(如网络、安全、数据库等),掌握查看服务的方法对系统管理、故障排查和性能优化至关重要,以下是多种专业且实用的查看方式,适用于主流的Linux发行版(如Ubuntu、CentOS、Fedora)。
适用场景:现代Linux系统(Systemd系统,如Ubuntu 16.04+、CentOS 7+)。
步骤

  1. 查看所有服务状态

    systemctl list-units --type=service --all
    • --all:显示包括未激活的服务。
    • 输出列说明:LOAD(配置加载状态)、ACTIVE(运行状态)、SUB(详细状态)、DESCRIPTION(服务描述)。
  2. 查看单个服务详情

    systemctl status apache2.service  # 替换为你的服务名(如nginx、mysql)

    关键信息:运行状态(Active)、日志片段(Latest logs)、进程ID(Main PID)。

  3. 过滤服务状态

    systemctl list-units --type=service --state=running  # 仅显示运行中的服务

通过 service 命令(传统SysVinit系统)

适用场景:旧版系统(如CentOS 6)或兼容性操作。
步骤

service --status-all  # 列出所有服务状态
  • [ + ]:服务正在运行;[ - ]:服务已停止;[ ? ]:状态未知。
  • 查看具体服务:
    service nginx status  # 示例

通过 ps 命令查看服务进程

适用场景:确认服务是否在进程层级运行。
步骤

ps aux | grep -E 'nginx|mysql|httpd'  # 替换为服务名关键词
  • 关键列:USER(运行用户)、%CPU(CPU占用)、COMMAND(进程命令)。
  • 组合命令:
    ps -ef | grep -i "cron"  # 不区分大小写搜索cron服务

通过 netstat/ss 命令查看服务端口

适用场景:确认服务是否监听端口(如Web服务、数据库)。
步骤

  1. 使用 netstat

    netstat -tulpn | grep ':80'  # 查看80端口占用服务
    • -t(TCP)、-u(UDP)、-l(监听状态)、-p(显示进程名)。
  2. 使用 ss(更高效)

    ss -ltnp | grep sshd  # 查看SSH服务监听端口

通过 /etc/init.d/ 目录(SysVinit脚本)

适用场景:直接操作服务脚本(适用于无 systemctl 的系统)。
步骤

ls /etc/init.d/         # 列出所有服务脚本
/etc/init.d/nginx status  # 查看状态

图形化工具(可选)

  1. systemd-cgls
    systemd-cgls  # 以树形结构显示服务层级
  2. Cockpit Web控制台
    • 安装后通过浏览器访问 http://localhost:9090,在”Services”模块管理服务。

总结与建议

方法 适用场景 优势
systemctl 现代Linux系统(主流选择) 信息详细,支持状态过滤
service 旧版系统或兼容操作 命令简洁
ps + grep 确认进程是否存在 直接关联资源占用
ss/netstat 验证网络服务端口 快速定位网络问题

最佳实践

  • 优先使用 systemctl(兼容性广且功能强大)。
  • 组合命令使用(如 systemctl status + ss -ltnp 验证服务运行和端口)。
  • 权限提示:普通用户需加 sudo 查看系统级服务。

引用说明

  • 基于Linux man手册(systemctl(1)、ss(8)等)及官方文档(systemd.io)。
  • 命令兼容性参考Red Hat、Ubuntu及Arch Linux的发行版指南。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/9288.html

(0)
酷番叔酷番叔
上一篇 2025年7月30日 14:31
下一篇 2025年7月30日 14:43

相关推荐

  • 如何用cat n命令瞬间定位文件关键行?,cat n命令能快速查看文件指定内容吗?,cat命令隐藏了哪些高效技巧?

    cat -n命令用于在终端显示文件内容的同时为每一行添加行号,该功能便于用户快速定位文本位置,常见于日志分析或代码调试场景,在Linux/Unix系统中操作时,只需在文件路径前添加”-n”参数即可实现行号标注。

    2025年6月21日
    18000
  • 启动Linux系统难吗?详细步骤揭秘

    启动前的准备工作硬件检查按下电源键后,主板通电并执行 POST(上电自检):检测 CPU、内存、硬盘等关键硬件屏幕显示厂商 Logo(如 Dell/HP)或检测进度若硬件故障,主板蜂鸣器报错或屏幕显示错误代码固件阶段:BIOS/UEFIBIOS 系统(传统模式):读取主板 ROM 中的程序按预设顺序(硬盘&gt……

    2025年7月21日
    17600
  • Linux没有IP文件夹?正确操作指南

    访问本地网络配置文件目录Linux的网络配置通常存储在以下目录中,需使用终端命令操作:打开终端Ctrl+Alt+T(Ubuntu)或右键选择“打开终端”,进入网络配置目录通用路径(大部分系统): cd /etc/network/关键文件:interfaces(Debian/Ubuntu旧版)Red Hat/Ce……

    2025年6月26日
    16500
  • Linux如何进入computer设备?操作步骤有哪些?

    Linux作为开源操作系统,其核心魅力在于对计算机硬件与软件资源的深度控制能力,“进入computer”在Linux语境中,并非指物理进入设备,而是通过命令行、图形界面或系统工具访问、配置和管理计算机的核心资源,包括硬件、系统服务、用户数据及运行状态,本文将从命令行管理、图形界面操作、硬件访问配置及系统监控维护……

    2025年10月7日
    17900
  • linux 如何停止进程

    Linux 中,可使用 kill 命令停止进程,先通过 ps 或 top 等找到进程 PID,

    2025年8月16日
    16400

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信