diff --git a/docs/systemd.md b/docs/systemd.md index 116b178..b1b3fc0 100644 --- a/docs/systemd.md +++ b/docs/systemd.md @@ -15,7 +15,17 @@ Systemd `systemctl list-jobs` | 查看活动的 systemd 作业 `systemctl list-unit-files` | 查看单元文件及其状态 `systemctl list-units` | 显示单位是否已加载/活动 -`systemctl get-default` | 列出默认目标(如运行级别) +`systemctl get-default` | 列出默认目标(如运行级别) + + +### 改变系统状态 + +:- | - +:- | - +`systemctl reboot` | 重启系统(reboot.target) +`systemctl poweroff` | 关闭系统(poweroff.target) +`systemctl emergency` | 进入紧急模式(emergency.target) +`systemctl default` | 返回默认目标(multi-user.target) ### 使用服务 @@ -33,23 +43,14 @@ Systemd `systemctl reset-failed` | 将任何单位从失败状态重置 `systemctl enable service` | 使服务在启动时启动 `systemctl disable service` | 禁用服务 - 不会在启动时启动 -`systemctl show service` | 显示服务(或其他单元)的属性 +`systemctl show service` | 显示服务(或其他单元)的属性 `systemctl edit service` | 创建片段以放入单元文件 `systemctl edit --full service` | 编辑整个单元文件以进行服务 `systemctl -H host status network` | 远程运行任何 systemctl 命令 -### 改变系统状态 - -:- | - -:- | - -`systemctl reboot` | 重启系统(reboot.target) -`systemctl poweroff` | 关闭系统(poweroff.target) -`systemctl emergency` | 进入紧急模式(emergency.target) -`systemctl default` | 返回默认目标(multi-user.target) - - ### 查看日志消息 + :- | - :- | - @@ -57,10 +58,53 @@ Systemd `journalctl -u network.service` | 查看网络服务消息 `journalctl -f` | 关注出现的消息 `journalctl -k` | 仅显示内核消息 - + +### SysVinit 到 Systemd + + +SysVinit | Systemd | 说明 +:- | - | - +`service SERVICE_NAME start` | `systemctl start SERVICE_NAME` | 用于启动服务(不重启持久) +`service SERVICE_NAME stop` | `systemctl stop SERVICE_NAME` | 用于停止服务(不永久重启) +`service SERVICE_NAME restart` | `systemctl restart SERVICE_NAME` | 用于停止然后启动服务 +`service SERVICE_NAME reload` | `systemctl reload SERVICE_NAME` | 重新加载配置文件而不中断挂起的操作 +`service SERVICE_NAME condrestart` | `systemctl condrestart SERVICE_NAME` | 如果服务已在运行,则重新启动 +`service SERVICE_NAME status` | `systemctl status SERVICE_NAME` | 判断服务当前是否正在运行 +`chkconfig SERVICE_NAME on` | `systemctl enable SERVICE_NAME` | 打开服务,以便在下次启动时启动,或其他触发器 +`chkconfig SERVICE_NAME off` | `systemctl disable SERVICE_NAME` | 为下次重新启动或任何其他触发器关闭服务 +`chkconfig SERVICE_NAME` | `systemctl is-enabled SERVICE_NAME` | 用于检查服务是否配置为在当前环境中启动 +`chkconfig –list` | `systemctl list-unit-files –type=service` (or)
`ls /etc/systemd/system/*.wants/` | 打印一个服务表,列出每个配置的运行级别打开或关闭 +`chkconfig –list \| grep 5:on` | `systemctl list-dependencies graphical.target` | 打印启动到图形模式时将启动的服务表 +`chkconfig SERVICE_NAME –list` | `ls /etc/systemd/system/*.wants/SERVICE_NAME.service` | 用于列出此服务配置为打开或关闭的级别 +`chkconfig SERVICE_NAME –add` | `systemctl daemon-reload` | 在创建新服务文件或修改任何配置时使用 + + +### 目标运行级别 + + +SysVinit | Systemd | 说明 +:- | - | - +`0` | `runlevel0.target`, `poweroff.target` | 停止系统 +`1`, `s`, `single` | `runlevel1.target`, `rescue.target` | 单用户模式 +`2`, `4` | `runlevel2.target`, `runlevel4.target`, `multi-user.target` | 用户定义/站点特定的运行级别。 默认情况下,与 3 相同 +`3` | `runlevel3.target`, `multi-user.target` | 多用户,非图形。 用户通常可以通过多个控制台或通过网络登录 +`5` | `runlevel5.target`, `graphical.target` | 多用户,图形。 通常具有运行级别 3 的所有服务以及图形登录 +`6` | `runlevel6.target`, `reboot.target` | 重启 +`emergency` | `emergency.target` | 应急外壳 + + +### 更改运行级别 + + +SysVinit | Systemd | 说明 +:- | - | - +`telinit 3` | `systemctl isolate multi-user.target`
OR `systemctl isolate runlevel3.target`
OR `telinit 3` | 更改为多用户运行级别 +`sed s/^id:.*:initdefault:/id:3:initdefault:/` | `ln -sf /lib/systemd/system/multi-user.target /etc/systemd/system/default.target` | 设置为在下次重新启动时使用多用户运行级别 + 另见 --- - [Systemd 官网](https://systemd.io/) _(systemd.io)_ -- [Systemd Cheat Sheet](https://access.redhat.com/sites/default/files/attachments/12052018_systemd_6.pdf) _(access.redhat.com)_ \ No newline at end of file +- [Systemd Cheat Sheet](https://access.redhat.com/sites/default/files/attachments/12052018_systemd_6.pdf) _(access.redhat.com)_ +- [Systemd Cheat Sheet](https://www.linuxtrainingacademy.com/systemd-cheat-sheet/) _(linuxtrainingacademy.com)_ \ No newline at end of file