iDe*_*247 4 linux ubuntu init.d ubuntu-11.04
我已经使用 linux 一段时间了,但方式相当简单。
我知道 init.d 中的脚本在操作系统启动时执行,但它究竟是如何工作的?
操作系统如何知道将哪个参数传递给脚本?
要启动 apache,我会执行 sudo /etc/init.d/apache2 start。如果我运行 sudo /etc/init.d/apache2 它没有启动就无法工作。os pass 是如何开始到脚本的?
根据您的Linux发行版和发布,最终的sysvinit脚本(这些脚本中/etc/init.d/)通常由存在于符号链接运行/etc/rc[0-6S].d,通过/etc/init.d/rc。
Ubuntu下,你要么使用老式的sysvinit,或最近upstart。在 upstart 管理目录 ( /etc/events.d/) 下,您将找到一种回退到/etc/init.d/rc调用的旧模式。否则,/etc/init.d/rc通过 为每个运行级别调用/etc/inittab。
如果您检查 的逻辑/etc/init.d/rc,您会发现它根据运行级别(0&S无条件停止)或脚本前缀(S[0-9][0-9]*脚本开始,K[0-9][0-9]*(杀死)脚本停止)定义操作。运行级别目录中的脚本编号(例如:)/etc/rc1.d/决定了脚本停止或启动的顺序。先运行终止脚本,然后启动脚本。
有关这方面的更多信息,请研究 sysvinit 和 upstart。
| 归档时间: |
|
| 查看次数: |
233 次 |
| 最近记录: |