TypechoJoeTheme

至尊技术网

统计
登录
用户名
密码

如何查看Linux启动服务systemctl列出所有服务

2026-03-20
/
0 评论
/
2 阅读
/
正在检测是否收录...
03/20

标题:Linux系统服务管理全攻略:systemctl命令详解
关键词:Linux服务管理, systemctl命令, 启动项查看, 服务状态, 系统守护进程
描述:本文深度解析Linux系统中systemctl命令的使用方法,包括如何查看所有服务、管理启动项、解读服务状态等实用技巧,帮助您全面掌握系统服务管理能力。

正文:

在Linux系统的日常管理和运维中,服务(Service)管理是每个管理员必须掌握的核心技能。随着主流发行版全面转向systemd初始化系统,systemctl命令已成为服务管理的瑞士军刀。本文将带您深入探索这套工具的使用精髓。

一、为什么要使用systemctl?

传统Linux使用init.d脚本或service命令管理服务,但这种分散式管理存在效率低下、启动顺序难以控制等问题。systemd的出现统一了服务管理接口,提供更快的启动速度、更精确的依赖管理,而systemctl正是其核心控制工具。

二、查看所有服务列表

要获取当前系统所有服务的完整清单,最基础的命令是:

systemctl list-units --type=service --all

这个命令会输出包括已激活、未激活、运行失败等所有状态的服务。输出列分为:
- UNIT:服务单元名称
- LOAD:配置文件是否加载成功
- ACTIVE:高级别运行状态
- SUB:低级别运行状态
- DESCRIPTION:服务简要说明

三、精准筛选服务状态

  1. 仅查看运行中的服务
systemctl list-units --type=service --state=running
  1. 查找失败的服务(排错必备):
systemctl list-units --type=service --state=failed
  1. 按启动类型分类查看

- 查看所有开机自启服务:

systemctl list-unit-files --type=service --state=enabled
  • 查看被禁用的服务:
systemctl list-unit-files --type=service --state=disabled

四、解读服务状态信息

执行systemctl status 服务名时,关键信息包括:
- Loaded行:显示配置文件路径和是否启用开机启动
- Active行:精确到毫秒的运行时间和当前状态
- Main PID:主进程ID及其命令
- CGroup:相关的控制组信息
- 日志片段:自动显示最近的10行相关日志

例如查看Nginx服务的详细状态:

systemctl status nginx.service

五、服务生命周期管理

  1. 启动/停止/重启服务
systemctl start nginx
systemctl stop nginx
systemctl restart nginx
  1. 启用/禁用开机启动
systemctl enable nginx
systemctl disable nginx
  1. 重新加载配置(不中断服务):
systemctl reload nginx

六、高级技巧与注意事项

  1. 查看服务依赖关系
systemctl list-dependencies nginx
  1. 分析服务启动耗时
systemd-analyze blame
  1. 重要目录说明

- /usr/lib/systemd/system/:软件包安装的默认单元文件
- /etc/systemd/system/:管理员自定义的单元文件

需要注意的是,修改服务配置后需要执行systemctl daemon-reload使变更生效。对于生产环境中的关键服务,建议在修改前先使用--dry-run参数测试,或通过systemctl cat 服务名查看完整配置。

掌握这些技巧后,您将能游刃有余地管理系统服务,快速定位问题,并根据实际需求优化服务启动策略。systemctl的强大之处还在于其与其他systemd工具(如journalctl日志查看)的无缝配合,这些组合技能将大幅提升您的Linux系统管理效率。

朗读
赞(0)
版权属于:

至尊技术网

本文链接:

https://www.zzwws.cn/archives/43381/(转载时请注明本文出处及文章链接)

评论 (0)
37,628 文章数
92 评论量

人生倒计时

今日已经过去小时
这周已经过去
本月已经过去
今年已经过去个月