尽管 DEFAULT_RUNLEVEL 设置为 2,为什么 Linux Mint 仍以运行级别 5 启动?

尽管 DEFAULT_RUNLEVEL 设置为 2,为什么 Linux Mint 仍以运行级别 5 启动?

在研究 Linux 运行级别时,我在尝试更改 DEFAULT_RUNLEVEL 时遇到了一些无法向自己解释的情况。

当我启动 Mint 时,它以运行级别 5 启动,尽管它明确指出 DEFAULT_RUNLEVEL 是 2。

在 Linux Mint 18.3 中,默认情况下不再有 /etc/inittab。因此,DEFAULT_RUNLEVEL 配置来自 /etc/init/rc-sysinit.conf。

该文件有一些对 DEFAULT_RUNLEVEL 或 RUNLEVEL 的引用,如下面的摘录所示:

# Default runlevel, this may be overriden on the kernel command-line
# or by faking an old /etc/inittab entry
env DEFAULT_RUNLEVEL=2

然而,没有 /etc/inittab。因此,我继续阅读 rc-sysinit.conf 文件:

for ARG in $(cat /proc/cmdline)
do
case "${ARG}" in
-b|emergency)
    # Emergency shell
    [ -n "${FROM_SINGLE_USER_MODE}" ] || sulogin
    ;;
[0123456sS])
    # Override runlevel
    DEFAULT_RUNLEVEL="${ARG}"
    ;;
-s|single)
    # Single user mode
    [ -n "${FROM_SINGLE_USER_MODE}" ] || DEFAULT_RUNLEVEL=S
    ;;
esac
done

尽管这似乎是我的问题的解决方案,但查看 /proc/cmdline 发现它不满足情况 [0123456sS],因为 cat /proc/cmdline 会产生以下输出:

BOOT_IMAGE=/boot/vmlinuz-4.10.0-38-generic root=UUID=03a422a0-4301-4153-8c60-1ea912ad732f ro quiet splash vt.handoff=7

还有其他地方可以覆盖 DEFAULT_RUNLEVEL 吗?

相关内容