谁能帮我用简体中文版解释一下/etc/init.d/rc.local 的程序解释?谢谢

sh/bash/dash/ksh/zsh等Shell脚本
回复
lastgame
帖子: 19
注册时间: 2008-10-17 21:20

谁能帮我用简体中文版解释一下/etc/init.d/rc.local 的程序解释?谢谢

#1

帖子 lastgame » 2009-10-30 15:39

# Default-Start: 2 3 4 5
# Default-Stop:
# Short-Description: Run /etc/rc.local if it exist
### END INIT INFO


PATH=/sbin:/usr/sbin:/bin:/usr/bin

. /lib/init/vars.sh
. /lib/lsb/init-functions

do_start() {
if [ -x /etc/rc.local ]; then
[ "$VERBOSE" != no ] && log_begin_msg "Running local boot scripts (/etc/rc.local)"
/etc/rc.local
ES=$?
[ "$VERBOSE" != no ] && log_end_msg $ES
return $ES
fi
}

case "$1" in
start)
do_start
;;
restart|reload|force-reload)
echo "Error: argument '$1' not supported" >&2
exit 3
;;
stop)
;;
*)
echo "Usage: $0 start|stop" >&2
exit 3
;;
esac
头像
cnkilior
论坛版主
帖子: 4984
注册时间: 2007-08-05 17:40

Re: 谁能帮我用简体中文版解释一下/etc/init.d/rc.local 的程序解释?谢谢

#2

帖子 cnkilior » 2009-11-01 9:42

这里面夹杂着lsb标准的函数,log_end_msg。

要看懂这个,先要知道如何调用他的。

代码: 全选

for i in /etc/rc${lever}.d/S*;do
       if [ -x $i ];then
              eval “$i start”
       fi
done
这就是大致的调用过程

脚本就从start分支入口了,进去之后就直接执行了do_start()函数,完成之后就退出分支结构。
do_start()函数也不过是记录了状态,然后执行了rc.local脚本。
tusooa
帖子: 6548
注册时间: 2008-10-31 22:12
系统: 践兔
联系:

Re: 谁能帮我用简体中文版解释一下/etc/init.d/rc.local 的程序解释?谢谢

#3

帖子 tusooa » 2009-11-08 20:40

最关键的只有一句:

代码: 全选

/etc/rc.local

代码: 全选

] ls -ld //
回复