systemctl
systemctl 是用于管理 systemd 服务的命令行工具,适用于大多数现代 Linux 发行版。
🔧 基本服务控制
| 功能 | 命令 | 说明 |
|---|---|---|
| 启动服务 | systemctl start 服务名 | 启动指定服务 |
| 停止服务 | systemctl stop 服务名 | 停止指定服务 |
| 重启服务 | systemctl restart 服务名 | 重启服务 |
| 查看状态 | systemctl status 服务名 | 查看服务当前状态 |
| 重载配置 | systemctl reload 服务名 | 重载服务配置(不中断) |
🚀 开机启动设置
| 功能 | 命令 | 说明 |
|---|---|---|
| 设置开机启动 | systemctl enable 服务名 | 开机自动启动 |
| 禁用启动 | systemctl disable 服务名 | 禁用开机启动 |
| 查看是否启用 | systemctl is-enabled 服务名 | 显示是否启用 |
📋 服务管理与查询
| 功能 | 命令 | 说明 |
|---|---|---|
| 查看所有服务状态 | systemctl list-units --type=service | 显示所有已加载服务 |
| 查看失败的服务 | systemctl --failed | 显示启动失败的服务 |
| 查看服务配置文件路径 | systemctl cat 服务名 | 查看实际的 service 配置内容 |
| 重新加载 systemd 配置 | systemctl daemon-reexec | 重新启动 systemd 主进程 |
| 重新加载服务单位配置 | systemctl daemon-reload | 在修改 unit 文件后需执行 |
📝 日志查看
| 功能 | 命令 | 说明 |
|---|---|---|
| 查看服务日志 | journalctl -u 服务名 | 查看服务的运行日志 |
| 实时查看日志 | journalctl -f -u 服务名 | 类似 tail -f 的功能 |
| 显示开机后的日志 | journalctl -b | 当前启动后的所有日志 |
📌 示例
bash
systemctl start nginx
systemctl enable nginx
systemctl status nginx