曲径通幽论坛

标题: /etc/rc.d/rcx.d(x=0,1,2,3,4,5,6,S) 里程序命名介绍 [打印本页]

作者: beyes    时间: 2008-12-1 00:26
标题: /etc/rc.d/rcx.d(x=0,1,2,3,4,5,6,S) 里程序命名介绍
通过 ls -l查看 /etc/rc.d/rc5.d目录里的文件(linux 发行版为 opensuse11.1,下面情况会和其他发行版会有所不同),部分如下所示:
lrwxrwxrwx 1 root root  7 11-29 17:26 K01a11y -> ../a11y
lrwxrwxrwx 1 root root 10 11-30 02:37 K01apache2 -> ../apache2
lrwxrwxrwx 1 root root  9 11-29 17:26 K01auditd -> ../auditd
lrwxrwxrwx 1 root root 21 11-29 17:33 K01bluetooth-coldplug -> ../bluetooth-coldplug
lrwxrwxrwx 1 root root  7 11-29 17:26 K01brld -> ../brld

....

lrwxrwxrwx 1 root root  8 11-29 17:26 S01acpid -> ../acpid
lrwxrwxrwx 1 root root  7 11-29 17:26 S01dbus -> ../dbus
lrwxrwxrwx 1 root root 14 11-29 17:26 S01earlysyslog -> ../earlysyslog
lrwxrwxrwx 1 root root  8 11-29 17:26 S01fbset -> ../fbset
lrwxrwxrwx 1 root root  9 11-29 17:26 S01random -> ../random

....

在上面可以看到,rc5.d 中文件都为链接文件,指向上一层目录的程序。各个编号的目录中,正是开机后执行由这些链接所指向的程序。

其中的链接文件命名有如下规则:

命名由 3 个部分组成:

第一部分为 K 或 S 开头; 第二部分为一组数字; 第三部分为程序名。

以 K 开头的文件,表明为 kill 之意,其表示要 停用 的服务;
以 S 开头的文件,表明为 start 之意,其表示要 启动 的服务;

数字部分表示需要根据数字的大小而决定执行的先后顺序,数字小者就先于数字大者执行。但是有必须是 K 开头的文件先执行,再执行 S 的文件。简单的说,就是先要结束掉不需要的服务,营造一个“干净”的环境,然后再启用需要的一些服务。



以启动或结束 httpd 服务为例,如果要启动服务,那么可以 : /etc/init.d/httpd start
                                                       如果要停止服务,那么可以 : /etc/init.d/httpd stop
作者: beyes    时间: 2009-1-1 19:21
标题: 手动设置启动一个守护进程
比如在运行级别 2 期间启动 CPUS 并在系统关闭以前妥善停止这个守护进程,那么如下创建链接:
ln -s /etc/init.d/cups /etc/rc2.d/S80cups      
ln -s /etc/init.d/cups /etc/rc2.d/K80cups

第一条命令告诉系统,当进入运行级 2 时,系统启动以带 start 参数的方式去运行 /etc/init.d/cups 这个脚本(脚本编号为 80)。

第二条命令告诉系统,当系统关闭时运行 以带 stop 参数的方式去运行 /etc/init.d/cups 这个脚本。

有些系统以不同的方式处理系统关闭和重新引导,所以我们需要在 /etc/rc6.d 目录中也放一个符号链接,以确保当系统重新引导时,该守护进程能够被正确关闭。




欢迎光临 曲径通幽论坛 (http://www.groad.net/bbs/) Powered by Discuz! X3.2