全部博文(107)
分类: LINUX
2011-12-23 11:01:48
关于rcN.d:这里的N代表数字0~6,即rc0.d,rc1.d,rc2.d,...,rc6.d,也与runlevels N(runlevels 0,runlevels 1,runlevels 2,...,runlevels 6)里的数字吻合。
关于runlevels:
Runlevel 0用于关闭系统,如果软电源设置恰当,它能关闭系统电源。
Runlevel 1是单用户无网络的模式,它用于低水平的故障修复和管理操作。
Runlevel 2到Runlevel 5正常系统操作的多用户模式。Runlevel2和3是命令行模式,3有网络连接而2没有网络连接。Runlevel 5用于启动X Windows提供图形用户接口。
Runlevel 6用于系统重启,当整个init系统甚至bootloader 需要重启时采用它。
rcN.d中的文件都是init.d中文件的连接,即service,文件的命名格式为:[KS]numberservicename
K和S开头是区别运行与否的:K不运行,S运行,之后的两位数确定了运行的顺序。
linux在启动时,如果确定了runlevels N(若无手工选择,系统会读取/etc/inittab里设置runlevels),那么系统就会执行rcN.d目录下允许运行的服务(即Snumberservicename格式的文件)。如/etc/rc3.d/S10network,表示系统启动在3 runlevels下,会启动network服务,这也与chkconfig查询的结果吻合:
[[root@l305 etc]# ll /etc/rc3.d/S10network
lrwxrwxrwx 1 root root 17 Dec 16 2010 /etc/rc3.d/S10network -> ../init.d/network
[root@l305 etc]# chkconfig --list|grep network
network 0:off 1:off 2:on 3:on 4:on 5:on 6:off
这就是rcN.d与runlevels之间的关系。