在 CentOS 7 里,修改默认运行级别不用再去动 systemctl set-default,原因很简单:/etc/inittab 这套方式已经被 systemd 弃用了,继续改基本不会生效。现在的“运行级别”实际上是用 target 来对应的,其中 multi-user.target 大致等同于 runlevel 3,graphical.target 则基本对应 runlevel 5。

CentOS 7怎么修改系统运行级别模式

CentOS 7 修改默认运行级别,只用 systemctl set-default 就够了,其他方式要么多余、要么容易出错。

为什么不能改 /etc/inittab?

原因很直接:在 CentOS 7 里,这个文件已经被 systemd 彻底废弃了。打开后基本只会看到这样一行注释:# inittab is no longer used when using systemd.。也就是说,不管怎么改它,比如把 id:3:initdefault: 这类内容改来改去,实际上都不会生效,系统启动时压根不会去读取这个文件。

systemctl set-default 怎么用才可靠?

这是唯一推荐的永久生效方式,它会自动更新 /etc/systemd/system/default.target 的软链接指向,并确保下次启动生效。

别手动 ln -sf /etc/systemd/system/default.target

虽然技术上可行,但绕过 systemctl set-default 直接操作软链接,容易踩三个坑:

临时切换和永久修改别混淆

systemctl isolateinit 命令只能临时切换当前 session,重启即失效,不是“修改运行级别”的解法。

最常被忽略的点:改完必须重启才能验证是否真正生效;systemctl get-default 显示正确 ≠ 下次开机就是这个 target —— 因为内核参数或 GRUB 配置(如 systemd.unit=)仍可能强制覆盖 default.target。

本文转载于:https://www.php.cn/faq/2992980.html 如有侵犯,请联系zhengruancom@outlook.com删除。
免责声明:正软商城发布此文仅为传递信息,不代表正软商城认同其观点或证实其描述。