«

Linux查看开机自启服务systemctl命令大全

时间:2026-11-14 07:16     作者:emer     分类: Linux


前言

排查开机慢、多余服务自启时,需要列出所有开机自启的服务并按需关闭。systemctl 是 systemd 系统管理服务的统一命令,取代了旧的 chkconfig。本文讲解列出自启服务、查看单个服务状态、设置自启/取消自启、查看服务依赖的完整命令。

操作步骤

1. 列出所有开机自启服务

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

2. 列出全部服务及状态

systemctl list-unit-files --type=service

3. 查看单个服务是否自启

systemctl is-enabled nginx

4. 设置开机自启

systemctl enable nginx

5. 取消开机自启

systemctl disable nginx

6. 查看服务当前运行状态

systemctl status nginx

7. 查看服务日志与启动耗时

systemctl list-units --type=service
journalctl -u nginx

常见坑

  1. enable 只是设置自启,不立即启动服务,启动要加 start。
  2. disable 只取消自启,不会停止当前正在运行的服务。
  3. mask 会彻底禁用服务,比 disable 更彻底,慎用。
  4. 服务名带 .service 后缀可省略,但别名容易搞错。
  5. 很多服务是 socket 激活或依赖触发,enabled 列表不等于全部运行服务。
  6. 第三方软件自己的自启项可能不在 systemd,要查 rc.local 或应用配置。
  7. 误关关键服务(如 sshd、网络)会导致远程失联。

总结

查自启用 list-unit-files --state=enabled,用 enable/disable 管理开机项。enable 不等于 start,两者分开。关闭服务前先确认用途,保留 sshd、网络等关键项,避免远程管理失效。定期清理无用自启可加快开机速度、减少攻击面。

遇到问题加QQ23979811 协助处理

标签: Linux systemctl 开机自启 服务