systemctl 是一个用于管理 systemd 系统和服务管理器的命令行工具,它在大多数现代 Linux 发行版中被用来控制系统的服务和进程。以下是一些 systemctl 的常见命令:
系统管理和状态检查
-
启动/停止/重启服务:
- 启动服务:
sudo systemctl start [服务名] - 停止服务:
sudo systemctl stop [服务名] - 重启服务:
sudo systemctl restart [服务名]
- 启动服务:
-
查看服务状态:
sudo systemctl status [服务名]:显示特定服务的状态信息。
-
重新加载服务配置:
sudo systemctl reload [服务名]:重新加载服务的配置文件,而不中断服务。
-
列出运行中的服务:
sudo systemctl list-units --type=service:列出所有已启动的服务。
-
查看所有服务(包括未运行的):
sudo systemctl list-unit-files --type=service:显示所有服务及其启动状态。
启动级别和目标管理
-
更改运行级别(目标):
sudo systemctl isolate [目标名]:更改到特定运行级别(例如:graphical.target、multi-user.target)。
-
设置默认运行级别(目标):
sudo systemctl set-default [目标名]:设置系统启动时的默认目标。
-
查看当前和默认的运行级别(目标):
- 查看当前目标:
sudo systemctl get-default - 查看默认目标:
sudo systemctl list-units --type=target
- 查看当前目标:
启用和禁用服务
- 启用/禁用服务:
- 启用服务:
sudo systemctl enable [服务名]:使服务在启动时自动启动。 - 禁用服务:
sudo systemctl disable [服务名]:停止服务在启动时自动启动。
- 启用服务:
其他常用命令
-
查看系统日志:
journalctl:用于查看systemd日志,与systemctl密切相关。
-
查看已启动的最耗时的单位:
systemd-analyze blame:显示启动时耗时最长的服务和单位。
-
查看系统启动时间:
systemd-analyze time:显示系统启动所需的总时间。
这些命令提供了对系统服务和进程的基本控制,是进行系统管理和维护的重要工具。需要注意的是,许多 systemctl 命令需要超级用户权限,因此在使用时可能需要在前面加上 sudo。