服务器 频道

4.1.7 Linux的第一个进程:init(2)

4.1.7  Linux的第一个进程:init(2)

4.process

process为init执行的进程,这些进程都保存在目录/etc/rc.d/rcX中,其中的X代表运行级别,rc程序接收X参数,然后运行/etc/rc.d/rc.X下面的程序。使用如下命令可以查看/etc/rc.d目录内容。

#ls -l /etc/rc.d/
总用量 112
drwxr-xr-x  2 root root  4096  3月 15 14:44 init.d
-rwxr-xr-x  1 root root  2352 2008-03-17  rc
drwxr-xr-x  2 root root  4096  3月 15 17:42 rc0.d
drwxr-xr-x  2 root root  4096  3月 15 17:42 rc1.d
drwxr-xr-x  2 root root  4096  3月 15 17:42 rc2.d
drwxr-xr-x  2 root root  4096  3月 15 17:42 rc3.d
drwxr-xr-x  2 root root  4096  3月 15 17:42 rc4.d
drwxr-xr-x  2 root root  4096  3月 15 17:42 rc5.d
drwxr-xr-x  2 root root  4096  3月 15 17:42 rc6.d
-rwxr-xr-x  1 root root   220 2008-06-24  rc.local
-rwxr-xr-x  1 root root 27411 2008-08-03  rc.sysinit
使用如下命令查看/etc/rc.d/rc5.d的内容。
# ls -l /etc/rc.d/rc5.d
总用量 432
lrwxrwxrwx  1 root root 21  4月 29 15:11 K01tog-pegasus
-> ../init.d/tog-pegasus
lrwxrwxrwx  1 root root 24  4月 29 14:20 K02NetworkManager
-> ../init.d/NetworkManager
lrwxrwxrwx  1 root root 17  4月 29 15:29 K02oddjobd
-> ../init.d/oddjobd
lrwxrwxrwx  1 root root 14  4月 29 15:31 K05innd
-> ../init.d/innd
lrwxrwxrwx  1 root root 19  4月 29 14:17 K05saslauthd
-> ../init.d/saslauthd
lrwxrwxrwx  1 root root 19  4月 29 14:21 K10dc_server
-> ../init.d/dc_server
lrwxrwxrwx  1 root root 16  4月 29 14:21 S09pcmcia
-> ../init.d/pcmcia
lrwxrwxrwx  1 root root 17  4月 29 14:17 S10network
-> ../init.d/network
lrwxrwxrwx  1 root root 16  4月 29 14:17 S12syslog
-> ../init.d/syslog
……………………………………

这些文件都是符号链接,以S打头的标识启动该程序,而以K打头的标识终止该程序,后面的数字标识执行顺序,越小越先执行,剩下的标识程序名。系统启动或者切换到该运行级别时会执行以S打头的程序,系统切换到该运行级别时会执行以K打头的程序。

这个目录下的程序可通过chkconfig程序进行管理,当然这个目录下的程序需要符合一定规范,如果了解shell编程,可以查看这些符号链接所指向的程序的源代码。

init也是一个进程,和普通的进程具有一样的属性。比如修改了/etc/inittab,想让修改马上生效,可通过运行"kill-SIGHUP 1"来实现,也可通过运行"init q"来实现。

0
相关文章