«

Linux查看系统运行级别,multi-user.target详解

时间:2026-10-6 08:05     作者:emer     分类: 无


前言

经常听到别人说"运行级别 3"、"运行级别 5",这是什么意思?CentOS7 之后用 systemd 代替了老的 SysVinit,运行级别也变成了 target。本文讲一下怎么查看和切换系统运行级别。

老的运行级别(SysVinit)

老系统(CentOS6 之前)用数字表示运行级别:

级别 含义
0 关机
1 单用户模式(救援模式)
2 多用户模式(无 NFS)
3 完全多用户模式(命令行,服务器常用)
4 未使用
5 图形界面模式
6 重启

新的 target(systemd)

CentOS7 之后用 target 代替了数字运行级别:

target 对应老级别 含义
poweroff.target 0 关机
rescue.target 1 救援模式
multi-user.target 3 命令行模式(服务器常用)
graphical.target 5 图形界面模式
reboot.target 6 重启

查看当前运行级别

systemctl 命令

systemctl get-default

输出:

multi-user.target

就是当前默认的运行级别是命令行模式。

老命令(还能用)

runlevel

输出类似:

N 3

第一个是上次运行级别(N 表示没有),第二个是当前运行级别。

切换运行级别

临时切换(重启后恢复)

systemctl isolate 目标target

比如从图形界面切到命令行:

systemctl isolate multi-user.target

或者从命令行切到图形界面:

systemctl isolate graphical.target

永久切换(重启后生效)

systemctl set-default 目标target

比如默认启动到命令行模式:

systemctl set-default multi-user.target

默认启动到图形界面:

systemctl set-default graphical.target

常用操作

进入救援模式

系统出问题了进不去?进救援模式:

systemctl rescue

进入紧急模式

更底层的救援模式:

systemctl emergency

关机

systemctl poweroff

或者:

systemctl halt

重启

systemctl reboot

常见坑

坑1:图形界面切命令行后黑屏

执行了 isolate multi-user.target,屏幕黑了。

原因: 这是正常的,切到命令行模式就是黑屏,只有终端提示符。

解决: 输入用户名密码登录就行。

坑2:设置了 multi-user.target 但还是进图形界面

执行了 set-default multi-user.target,但重启后还是进图形界面。

原因: 可能有多个桌面管理器在抢着启动。

解决: 确认一下:

systemctl get-default

应该显示 multi-user.target。如果不对,再执行一次。

坑3:把运行级别设成 0 或 6 了

不小心设成了 poweroff.target 或 reboot.target。

后果: 一开就关机或者一开就重启,无限循环。

解决: 进救援模式改回来。

总结

命令 作用
systemctl get-default 查看当前默认运行级别
systemctl set-default multi-user.target 设置为命令行模式
systemctl set-default graphical.target 设置为图形界面模式
systemctl isolate multi-user.target 临时切到命令行
systemctl isolate graphical.target 临时切到图形界面
runlevel 老命令查看运行级别

服务器一般用 multi-user.target(命令行模式),更省资源、更稳定。

遇到问题加QQ23979811 协助处理

标签: Linux 运行级别 systemd multi-user.target target