2009年2月24日星期二
ubuntu下/etc/event.d/rc-default文件解析
ubuntu下/etc/event.d/rc-default文件控制启动级别,
以ubuntu8.10为例对该文件进行解析
/etc/event.d/rc-default解析
#vi /etc/event.d/rc-default
# rc - runlevel compatibility,运行级别兼容性
#
# This task guesses what the "default runlevel" should be and starts the
# appropriate script.
# 该脚本决定什么是缺省运行级别,并启动相应的脚本
#rcS停止后启动
start on stopped rcS
#脚本段开始
script
#runlevel --reboot:在/var/run/utmp中以current time记录系统的启动时间
runlevel --reboot || true
#检查/proc/cmdline是否有single,如果存在将启动级别改为single,/proc/cmdline是linux启动时传给内核的参数
if grep -q -w -- "-s\|single\|S" /proc/cmdline; then
telinit S
#否则判断是否存在文件/etc/inittab,如果存在获取默认启动级别,并转到该默认启动级别
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
#不存在/etc/inittab,转到启动级别2
else
telinit 2
fi
else
telinit 2
fi
#脚本段结束
end script
实际上在debian系列操作系统中,启动级别2-5都是一样的。
以ubuntu8.10为例对该文件进行解析
/etc/event.d/rc-default解析
#vi /etc/event.d/rc-default
# rc - runlevel compatibility,运行级别兼容性
#
# This task guesses what the "default runlevel" should be and starts the
# appropriate script.
# 该脚本决定什么是缺省运行级别,并启动相应的脚本
#rcS停止后启动
start on stopped rcS
#脚本段开始
script
#runlevel --reboot:在/var/run/utmp中以current time记录系统的启动时间
runlevel --reboot || true
#检查/proc/cmdline是否有single,如果存在将启动级别改为single,/proc/cmdline是linux启动时传给内核的参数
if grep -q -w -- "-s\|single\|S" /proc/cmdline; then
telinit S
#否则判断是否存在文件/etc/inittab,如果存在获取默认启动级别,并转到该默认启动级别
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
#不存在/etc/inittab,转到启动级别2
else
telinit 2
fi
else
telinit 2
fi
#脚本段结束
end script
实际上在debian系列操作系统中,启动级别2-5都是一样的。
订阅 博文 [Atom]