ubuntu 启动时运行脚本与服务分析
恩 首先所有的配置文件都在/etc下面,所有要启动的项目,脚本等杂七杂八的东西都放在/etc/init.d下面,
系统启动时 只认识 /etc/event.d/rc-default
在这个文件里 设定了系统的运行级别,在确定了运行级别之后,就会执行/etc/event.d/rcX 这里的x就是上面rc-default中定的级别
而rcx则指定了在自己的运行级别下,有哪些玩意可以启动,上面说了所有东东都放在了、/etc/init.d下面 难道这里要枚举么
非也
这个/etc/event.d/rcX 里面实际上是对执行了另外一个脚本,对是一个 不管x是多少,他只认一个脚本,就是/etc/init.d/rc 那怎么分辨运行级别呢,别着急完整的形式是这样滴 /etc/init.d/rc X。对,是把x作为参数传了进去。
好到此为止,运行级别算是从rc-default 传到了最下面要具体执行的小弟这了。就是到了/etc/init.d/rc X 。恩现在这个rc同志已经知道了X,那它又该如何确定要执行哪些脚本呢,毕竟所有的脚本都一锅混在一起了。
他呢其实只是根据运行级执行某个固定文件夹下的指定的脚本(这个指定其实是一个固定前缀而已)而已。 /etc/rcX.d 对就是这里。而这个/etc/rcX.d里面呢 其实都是符号链接,指向了/etc/init.d
ok到此为止。
还有一个/etc/rc.local, 其实这个东西是在 /etc/init.d/rc.local这个文件里被调用执行的 在/etc/rc2.d里就能看到他的踪迹。
# from the /etc/init.d/rc X
for s in /etc/rc$runlevel.d/S*
给个链接,我是从这看的 并经过了自己的验证与一些思考
http://nhlcorp.blog.ubuntu.org.cn/2009/08/02/ubuntu-%E5%90%AF%E5%8A%A8%E8%BF%90%E8%A1%8C%E8%84%9A%E6%9C%AC/
浙公网安备 33010602011771号