麒麟OS当前支持poweroff.target、rescue.target、multi-user.target、graphical.target、reboot.target等systemd目标,分别对应传统runlevel 0、1、3、5、6;执行systemctl list-units --type=target --all可查看所有目标状态,systemctl get-default显示默认启动目标,sudo systemctl isolate可临时切换目标。

你需要确认麒麟OS当前支持哪些运行级别(runlevel)以及systemd目标(target),以便进行服务管理、故障排查或系统模式切换,比如从图形界面临时切到多用户文本模式。
查看当前及所有可用的systemd目标
银河麒麟V10及后续版本已全面采用systemd,传统SysV runlevel已被target机制替代。systemd中每个target对应一个运行状态,如graphical.target等价于旧版runlevel 5,multi-user.target等价于runlevel 3。
在终端中执行:systemctl list-units --type=target --all。
该命令会列出所有已加载的目标单元,包括active(正在使用)、inactive(未激活)和failed(加载失败)三类;重点关注State列为active的行,它们代表当前生效或可立即切换的目标。
注意:输出中带@符号的目标(如basic.target)是基础抽象目标,不直接启用;真正可切换的是multi-user.target、graphical.target、rescue.target等。
查看当前默认启动目标
这一步告诉你系统开机后默认进入哪种模式,相当于旧系统的默认runlevel设置。
输入命令:systemctl get-default。
终端将返回类似graphical.target或multi-user.target的字符串——这就是当前默认目标。它由/etc/systemd/system/default.target软链接指向决定,修改该链接即可更改默认启动模式。
【修改前务必确认当前登录会话仍可访问,否则可能丢失图形界面且无法回退】
映射传统runlevel与systemd target
虽然麒麟OS不再实际使用runlevel数字,但部分旧脚本或文档仍会提及,因此需掌握对应关系:
runlevel 0 → poweroff.target;runlevel 1 → rescue.target;runlevel 3 → multi-user.target;runlevel 5 → graphical.target;runlevel 6 → reboot.target。
执行runlevel命令仍可返回两个字符(如N 3),但其数值仅作兼容性展示,底层完全由target控制;若显示unknown,说明系统已彻底脱离SysV init路径。
想验证某个target是否具备对应runlevel语义,可用systemctl list-dependencies --reverse <target>查看其依赖层级,例如systemctl list-dependencies --reverse multi-user.target会显示它被graphical.target所依赖,从而确认其基础地位。
临时切换运行目标(不重启)
方法一:切换至多用户文本模式(停用图形界面)→ 执行sudo systemctl isolate multi-user.target。
方法二:切回图形界面 → 执行sudo systemctl isolate graphical.target。
方法三:进入救援模式(单用户维护环境)→ 执行sudo systemctl isolate rescue.target。
这些操作即时生效,无需重启,但会终止当前图形会话中的所有用户进程;切换后可再次用systemctl get-default确认当前目标是否已变更。

















