systemctl 命令介绍
systemctl 是 Linux 系统(主要是基于 systemd 的发行版,如 CentOS 7+、Ubuntu 16.04+、Debian 8+ 等)中用于 管理系统服务(Systemd units) 的命令行工具。它是对传统 service 和 chkconfig 命令的统一替代。
🔧 基本功能
systemctl 可用于:
-
启动、停止、重启服务
-
启用、禁用服务(开机自动启动)
-
查看服务状态
-
管理系统级别(runlevel/target)
-
管理挂载点、定时任务、设备等(因为 systemd 管理一切)
🧭 常用命令速查表
✅ 服务管理
|
命令 |
含义 |
|---|---|
|
systemctl start 服务名 |
启动服务 |
|
systemctl stop 服务名 |
停止服务 |
|
systemctl restart 服务名 |
重启服务 |
|
systemctl reload 服务名 |
重新加载配置(不中断服务) |
|
systemctl status 服务名 |
查看服务状态 |
|
systemctl is-active 服务名 |
查看服务是否在运行 |
|
systemctl is-enabled 服务名 |
查看服务是否开机自启 |
🔁 启动设置
|
命令 |
含义 |
|---|---|
|
systemctl enable 服务名 |
设置开机自动启动 |
|
systemctl disable 服务名 |
禁止开机自动启动 |
|
systemctl reenable 服务名 |
重建软链接以开机启动 |
|
systemctl mask 服务名 |
禁用服务(彻底禁止启动) |
|
systemctl unmask 服务名 |
解除 mask 限制 |
📂 系统级别(Target)管理
|
命令 |
含义 |
|---|---|
|
systemctl get-default |
查看默认启动级别(target) |
|
systemctl set-default multi-user.target |
设置系统默认为命令行模式 |
|
systemctl set-default graphical.target |
设置系统默认为图形界面模式 |
|
systemctl isolate multi-user.target |
立即切换到命令行模式 |
🧾 查看日志(结合
journalctl
)
|
命令 |
含义 |
|---|---|
|
journalctl -u 服务名 |
查看某个服务的日志 |
|
journalctl -xe |
查看系统错误日志(常用于故障排查) |
📝 示例
# 启动 Docker 服务
systemctl start docker
# 设置开机启动 Docker
systemctl enable docker
# 查看 kubelet 服务状态
systemctl status kubelet
# 停止 Nginx 服务
systemctl stop nginx
🧠 提示
-
systemctl 后的服务名不需要 .service 后缀(但可以加)
-
如:systemctl status docker 等同于 systemctl status docker.service
-
-
要查看所有可用服务,可用 systemctl list-units --type=service
浙公网安备 33010602011771号