当前位置: 首页 > 图文教程 > 操作系统 > Unix/Linux > 剖析Linux系统启动过程(4)

Unix/Linux
Linux [系统管理命令中文详解][转]
C++
11次编译的结果
LVM2+ReiserFS使用小记(转载)
下面说一下如何扩充,删除,管理LVM
VFS虚拟文件系统
freeswan 文档摘录
重新安装Gcc
发布名一个目录并添加认证
检测程序运行的命令
linux进程调度方法
新手日记(待续)
让拥有AMD处理器的本本在linux下支持 PowerNow!技术
FC3,RHEL4中挂载有中文的U盘,移动硬盘
互斥型信号量和二进制信号量
fcitx输入法快速安装
xmms1.2.10版 + MP3播放 + WMA播放 + 不完善中文显示
qmail+maildrop对单个用户的来信进行过滤
干吗还用 7.2 ?
心情小笔

Unix/Linux 中的 剖析Linux系统启动过程(4)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-01   浏览: 87 ::
收藏到网摘: n/a

第三部分:系统初始化
  在init的配置文件中有这么一行:  si::sysinit:/etc/rc.d/rc.sysinit  它调用执行了/etc/rc.d/rc.sysinit,而rc.sysinit是一个bash shell的脚本,它主要是完成一些系统初始化的工作,rc.sysinit是每一个运行级别都要首先运行的重要脚本。它主要完成的工作有:激活交换分区,检查磁盘,加载硬件模块以及其它一些需要优先执行任务。  rc.sysinit约有850多行,但是每个单一的功能还是比较简单,而且带有注释,建议有兴趣的用户可以自行阅读自己机器上的该文件,以了解系统初始化所详细情况。由于此文件较长,所以不在本文中列出来,也不做具体的介绍。  当rc.sysinit程序执行完毕后,将返回init继续下一步。  第四部分:启动对应运行级别的守护进程   在rc.sysinit执行后,将返回init继续其它的动作,通常接下来会执行到/etc/rc.d/rc程序。以运行级别3为例,init将执行配置文件inittab中的以下这行:  l5:5:wait:/etc/rc.d/rc 5  这一行表示以5为参数运行/etc/rc.d/rc,/etc/rc.d/rc是一个Shell脚本,它接受5作为参数,去执行/etc/rc.d/rc5.d/目录下的所有的rc启动脚本,/etc/rc.d/rc5.d/目录中的这些启动脚本实际上都是一些链接文件,而不是真正的rc启动脚本,真正的rc启动脚本实际上都是放在/etc/rc.d/init.d/目录下。而这些rc启动脚本有着类似的用法,它们一般能接受start、stop、restart、status等参数。  /etc/rc.d/rc5.d/中的rc启动脚本通常是K或S开头的链接文件,对于以以S开头的启动脚本,将以start参数来运行。而如果发现存在相应的脚本也存在K打头的链接,而且已经处于运行态了(以/var/lock/subsys/下的文件作为标志),则将首先以stop为参数停止这些已经启动了的守护进程,然后再重新运行。这样做是为了保证是当init改变运行级别时,所有相关的守护进程都将重启。  至于在每个运行级中将运行哪些守护进程,用户可以通过chkconfig或setup中的"System Services"来自行设定。常见的守护进程有:  amd:自动安装NFS守护进程  apmd:高级电源管理守护进程  arpwatch:记录日志并构建一个在LAN接口上看到的以太网地址和IP地址对数据库  autofs:自动安装管理进程automount,与NFS相关,依赖于NIS  crond:Linux下的计划任务的守护进程  named:DNS服务器  netfs:安装NFS、Samba和NetWare网络文件系统  network:激活已配置网络接口的脚本程序  nfs:打开NFS服务  portmap:RPC portmap管理器,它管理基于RPC服务的连接  sendmail:邮件服务器sendmail  smb:Samba文件共享/打印服务  syslog:一个让系统引导时起动syslog和klogd系统日志守候进程的脚本  xfs:X Window字型服务器,为本地和远程X服务器提供字型集  Xinetd:支持多种网络服务的核心守护进程,可以管理wuftp、sshd、telnet等服务  这些守护进程也启动完成了,rc程序也就执行完了,然后又将返回init继续下一步。