开机流程分析,进程,故障排错..docVIP

  1. 1、本文档共14页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
开机流程分析,进程,故障排错.

一:RHEL6的开机流程分析 要启动系统首先就得去加载BIOS(Basic Input Output System),并通过BIOS程序去加载CMOS的信息,并且由CMOS内的设定值取得主机的各项硬件配置信息(如开机设备的搜寻顺序、硬盘的大小与类型、 系统时间、各周边总线的是否启动Plug and Play (PnP, 即插即用设备)、等等)。在取得这些信息后,BIOS还会进行开机自检(Power-on Self Test, POST)。 然后开始执行硬件检测的初始化,并设定PnP设备,之后再定义出可开机的设备顺序, 接下来就会开始进行开机设备的数据读取了(MBR相关的任务开始)。 我们还需要一个开机管理程序来处理内核文件的加载问题,这个开机管理程序就被称为Boot Loader。这个Boot Loader程序安装在开机设备的第一个扇区(sector)内,也就是MBR (Master Boot Record,主要启动记录区,第一个扇区的512字节)。 Boot Loader最主要功能是加载内核到主存储器中去执行,由于不同操作系统的文件格式不一致,因此每种操作系统都有自己的boot loader。 由boot loader的管理而开始读取内核文件后,接下来,Linux 就会将内核解压缩到主存储器当中, 并且利用内核的功能,开始测试与驱动各个周边设备,包括储存设备、CPU、网卡、声卡等等。 此时 Linux 内核会以自己的功能重新检测一次硬件,内核会被放置到 /boot 里面,并且取名为 /boot/vmlinuz init及配置文件 /etc/inittab 与 runlevel 在内核加载完毕、进行完硬件检测与驱动程序加载后,此时主机硬件已经准备就绪了,这时候内核会启动第一个程序,那就是 /sbin/init;/sbin/init 最主要的功能就是准备软件执行的环境,包括系统的主机名、网络设定、语言、文件系统格式及其他服务的启动等。 而所有的动作都会通过 init的配置文件/etc/inittab来规划,而inittab 内还有一个很重要的设定内容,那就是默认的 runlevel (开机运行级别)。 Linux就是通过设定runlevel来规定系统使用不同的服务来启动,让Linux的使用环境不同。这个inittab文件里面的支持级别(RHEL6系统里面的,和以前的其它版本有很大的差别) 现在我们来看一看/etc/inittab文件中内容: #vim /etc/inittab 部分内容解释如下: 0 - halt (系统直接关机) 1 - single user mode (单人维护模式,用在系统出问题时的维护) 2 - Multi-user, without NFS (类似底下的 runlevel 3,但无 NFS 服务) 3 - Full multi-user mode (完整含有网络功能的纯文本模式) 4 - unused (系统保留功能) 5 - X11 (与 runlevel 3 类似,但加载使用 X Window) 6 - reboot (重新启动) 0, 4, 6 不是关机、重新启动就是系统保留的,所以不能将预设的run level设定为这三个值。 RHEL6系统上的这个文件和以前的版本有很大的差别,目前这个文件只能设置运行级别,其它的相关配置文件,在此文件中已经做了说明如: System initialization is started by /etc/init/rcS.conf Individual runlevels are started by /etc/init/rc.conf Ctrl-Alt-Delete is handled by /etc/init/control-alt-delete.conf Terminal gettys are handled by /etc/init/tty.conf and /etc/init/serial.conf,with configuration in /etc/sysconfig/init. 更多的内容,可以到/etc/init/目录中查看;红帽已经使用新的Upstart启动服务来替换以前的init。在RHEL6的版本中,我们可以把/etc/init/这个目录里面的内容,看成是以前/etc/inittab这个文件里的拆分。 下面是RHEL6上面Upstart大致的一个启动过程: 1.内核启动init 2.系统初始化:(根据/etc/init/rcS.conf文件中的记录 “exec /etc/rc.d/rc.sysinit”执行rc.sysinit系统初始化脚本) 3.init找到/etc/inittab文件,确定默认的运行级别(X) (

文档评论(0)

dbtx + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档