Linux systemctl 命令是 systemd 系统和服务管理器的主要命令之一,它可以启动、停止、重启、重新加载和查询系统服务状态等操作。以下是 systemctl 命令的常用选项和用法:

语法

systemctl [OPTIONS] COMMAND [UNIT]
  • OPTIONS: 可选参数,用于指定 systemctl 的行为。
  • COMMAND: 必需参数,用于执行特定的 systemd 命令,例如启动、停止或重新启动服务。
  • UNIT: 可选参数,用于指定要操作的服务或单元。

常用选项

  • -H, --host: 指定要在远程主机上运行的 systemd 实例的主机名或 IP 地址。
  • -a, --all: 显示所有已加载的单位,而不仅仅是当前活动的单位。
  • -t, --type: 根据指定的单元类型筛选单元列表。支持的单元类型包括 service、socket、mount 等。
  • -u, --user: 执行与当前用户相关联的用户级服务。

常用命令

systemctl 是 Linux 操作系统中用于管理系统服务的命令行工具。它可以启动、停止、重启、启用或禁用服务,并提供有关服务状态和控制的信息。下面是对 systemctl 命令的全面详细解释:

1. 查看服务状态:

  • systemctl status :显示指定服务的运行状态、日志信息和依赖关系。
  • systemctl is-active :检查指定服务是否处于激活状态(运行中)。
  • systemctl is-enabled :检查指定服务是否已启用(将在系统引导时自动启动)。
  • systemctl is-failed :检查指定服务是否处于失败状态。

2. 管理服务:

  • systemctl start :启动指定服务。
  • systemctl stop :停止指定服务。
  • systemctl restart :重新启动指定服务。
  • systemctl reload :重新加载指定服务的配置文件。
  • systemctl enable :启用指定服务,使其在系统引导时自动启动。
  • systemctl disable :禁用指定服务,使其不会在系统引导时启动。

3. 管理服务单元:

  • systemctl list-units:列出所有已知的服务单元并显示其当前状态。
  • systemctl list-unit-files:列出所有已安装的服务单元文件。
  • systemctl show :显示指定服务单元的详细信息。

4. 系统操作:

  • systemctl poweroff:关闭系统。
  • systemctl reboot:重启系统。
  • systemctl suspend:将系统置于挂起状态(睡眠模式)。
  • systemctl hibernate:将系统置于休眠状态(保存当前状态到磁盘)。

5. 日志查询:

  • systemctl status .service:显示服务或单元的当前状态和日志。
  • journalctl -u .service:查看指定服务或单元的日志。

示例

  • 启动 Apache 服务器服务:

    systemctl start httpd.service
  • 停止 Apache 服务器服务:

    systemctl stop httpd.service
  • 查看 Apache 服务器服务状态:

    systemctl status httpd.service
  • 设置 Apache 服务器在系统启动时自动启动:

    systemctl enable httpd.service
  • 禁用 Apache 服务器在系统启动时自动启动:

    systemctl disable httpd.service

以上是 systemctl 命令的基本介绍和常用选项、命令及示例。需要注意的是,使用 systemctl 命令需要有管理员权限(例如 root 或具有 sudo 权限的用户)。