linux基础(28)--linux启动过程详解--RHEL6.5

1.  linux系统启动过程如下:

 (1) 进入BIOS开机自检,获取系统的引导方式

  系统启动时首先进入BIOS,加载BIOS信息,在此步骤选择开机引导方式,如磁盘,光盘或者网络引导。

  本文假设磁盘为第一引导

 (2) 读取磁盘中MBR的boot Loader

  MBR是磁盘的0柱面0磁头1扇区。

  MBR由三部分组成:主引导程序,磁盘分区表和硬盘有效标志。

  不同盘片的相同扇区组成柱面。

  MBR大小为512字节,其中主引导程序未446字节,负责从活动分区中装载运行系统引导程序,磁盘分区表即DPT占64字节,每个分区表项为16字节,64/16=4, 这也就是为什么ext4文件系统最多有4个主分区的原因。分区有效标志位占2个字节,规定为55AA,如果此标志位为0xAA55则此为MBR。

  grub是一个来自GNU项目的多操作系统启动程序。

(3)依据 boot loader的设定到引导分区加载kernel。

  kernel会开始侦测硬件并加载驱动程序。

(4) 硬件驱动成功后kernel会主动执行init程序。

(5) init程序读取/etc/inittab文件中runlevel值

  根据独到的runlevel决定进入哪个运行级别

(6)init读取/etc/rc.d/rc.sysinit配置,完成对应运行级别环境的配置。

  如时区、网络的配置。

(7)init执行对应runlevel下的服务

(8)init读取文件/etc/rc.local,执行开机执行的命令

(9)init执行虚拟终端控制程序mingetty来启动login程序,然后进入登录界面。

  开机后通过ps -aux | grep mingetty可以看到没有tty1,即运行级别5.因为tty1是从/bin/bash中直接启动的。

2. 文本界面向图形界面切换

  startx或者init 5皆可,二者区别是startx运行级别未发生改变,init 5运行级别切换到5, init 5服务需要重启,statx不需要服务的重启。

3. 开机涉及的文件

  grub文件:   /etc/grub.conf  , grub加密、开机顺序、延迟等都可在此设置

  runlevel文件: /etc/inittab,在此修改开机启动级别

  /etc/rc.d/rc.sysinit :系统初始化文件,主机名、mount分区、激活swap等都在此记录。

  如运行级别3:/etc/rc.d/rc3.d里面S开头的是需要开机启动的,K开头的为开机不启动的服务,K/S后面数值是启动的优先级,数值越小优先级越高。

  rcn.d即不同级别下需要开机时需要开启和关闭的服务,虽然在这些文件里面可以查看到服务的开机启动与否,但是不可再次进行开机启动与否的设置。

  服务的开机启动方式:

  (1)chkconfig

  (2)/etc/init.d

  (3)/erc/rc.local

 

  

  

  

你可能感兴趣的:(自动化运维--基础)