我正在探索 ubuntu 系统的运行级别,
当我运行runlevel
以显示当前运行级别时,我得到:
N 5
但在里面/etc/init/rc-sysinit.conf
:
env DEFAULT_RUNLEVEL=2
为什么默认运行级别与我当前的运行级别不同,我没有对它做任何更改
并且运行级别数字代表:
Code Description
2 Graphical multi-user with networking
3-5 Unused but configured the same as runlevel 2
我对此感到困惑
答案1
前几天一直被这个问题困扰,最后才知道ubuntu从15.04版本开始已经改用systemd来完成初始化和命令过程了,initSysV和start-up都已经不用了,因为/etc/init/rc-sysinit.conf是启动的配置文件……所以……
systemd 仅使用“运行级别”来保持兼容性。
您可以通过查看 /sbin/init 来确认这一点
mt@mt-X550VC:~$ 文件 /sbin/init
/sbin/init:到 /lib/systemd/systemd 的符号链接
mt@mt-X550VC:~$ ll /sbin/init
lrwxrwxrwx 1 root root 20 2月 10 16:53 /sbin/init -> /lib/systemd/systemd*
当您运行“init”时,您实际上运行的是“systemd”:)
详情请见此处:https://en.wikipedia.org/wiki/Systemd
奇怪的是,如果你在 x-window 上运行“init [2,4]”,你就会卡住,原因我仍然不知道。你可以在 tty1 中运行“init 5”来返回。但是如果你运行“runlevel”,你会得到一个输出“3 5”,而不是“2 5”或“4 5”,所以我相信当你运行“init [2,3,4]”时变量“runlevel”被分配给“3”,当运行“init 5”时被分配给“5”。
我是中国人,英语不太好,希望我已经说清楚了:)