原来,在Ubuntu 6.1之后,开始用upstart替代init,主要脚本都在/etc/event.d下面,默认情况下,没有/etc/inittab文件。
比较困惑,Linux的不同distribution之差别咋就那么大呢?
在目录/etc/event.d下,发现文件rc-default,它的内容如下。
===============================================================
# rc - runlevel compatibility
#
# This task guesses what the "default runlevel" should be and starts the
# appropriate script.
start on stopped rcS
script
runlevel --reboot || true
if grep -q -w -- "-s/|single/|S" /proc/cmdline; then
telinit S
elif [ -r /etc/inittab ]; then
RL="$(sed -n -e "/^id:[0-9]*:initdefault:/{s/^id://;s/:.*//;p}" /etc/inittab || true)"
if [ -n "$RL" ]; then
telinit $RL
else
telinit 2
fi
else
telinit 2
fi
end script
===============================================================
它为使用/etc/inittab保留了入口。我们可以自己建立一个inittab,放在默认的路径/etc下面。在其中加入诸如默认启动级别之类的信息,如:
id:3:initdefault:
另外,Ubuntu的一个特殊的地方是,它默认的启动级别是2,使用runlevel命令查看,得到N 2。一般系统,如R.H.,启动的级别是5。但仔细查看Ubuntu中的/etc/rc2.d和/etc/rc5.d,它们所包含的内容基本一致。