systemctl常用命令

166 阅读2分钟

systemctl 是一个用于管理 systemd 系统和服务管理器的命令行工具,它在大多数现代 Linux 发行版中被用来控制系统的服务和进程。以下是一些 systemctl 的常见命令:

系统管理和状态检查

  1. 启动/停止/重启服务

    • 启动服务:sudo systemctl start [服务名]
    • 停止服务:sudo systemctl stop [服务名]
    • 重启服务:sudo systemctl restart [服务名]
  2. 查看服务状态

    • sudo systemctl status [服务名]:显示特定服务的状态信息。
  3. 重新加载服务配置

    • sudo systemctl reload [服务名]:重新加载服务的配置文件,而不中断服务。
  4. 列出运行中的服务

    • sudo systemctl list-units --type=service:列出所有已启动的服务。
  5. 查看所有服务(包括未运行的)

    • sudo systemctl list-unit-files --type=service:显示所有服务及其启动状态。

启动级别和目标管理

  1. 更改运行级别(目标)

    • sudo systemctl isolate [目标名]:更改到特定运行级别(例如:graphical.target、multi-user.target)。
  2. 设置默认运行级别(目标)

    • sudo systemctl set-default [目标名]:设置系统启动时的默认目标。
  3. 查看当前和默认的运行级别(目标)

    • 查看当前目标:sudo systemctl get-default
    • 查看默认目标:sudo systemctl list-units --type=target

启用和禁用服务

  1. 启用/禁用服务
    • 启用服务:sudo systemctl enable [服务名]:使服务在启动时自动启动。
    • 禁用服务:sudo systemctl disable [服务名]:停止服务在启动时自动启动。

其他常用命令

  1. 查看系统日志

    • journalctl:用于查看 systemd 日志,与 systemctl 密切相关。
  2. 查看已启动的最耗时的单位

    • systemd-analyze blame:显示启动时耗时最长的服务和单位。
  3. 查看系统启动时间

    • systemd-analyze time:显示系统启动所需的总时间。

这些命令提供了对系统服务和进程的基本控制,是进行系统管理和维护的重要工具。需要注意的是,许多 systemctl 命令需要超级用户权限,因此在使用时可能需要在前面加上 sudo