请选择 进入手机版 | 继续访问电脑版

[LINUX] 剖析 Linux体系 启动的引导流程

[复制链接]
查看119 | 回复9 | 2021-9-4 21:54:40 | 显示全部楼层 |阅读模式

  LINUX是自由开源软件,在LINUX里统统 都是文件,不管是下令 ,操作等等都是以文件情势 保存,这篇博客来记录LINUX启动时的引导流程是通过哪写文件来完成的.
     利用 的LINUX版本是CentOS5,CentOS和Ubuntu都是本身 接洽 利用 时的较抱负 版本.
     下面以CentOS5.5版本为例,先容 LINUX的引导流程,具体 流程如下:

2016216120312292.png (500×367)

下面具体 先容 每一步:
 
    1)第一步firmware固件自检,重要 是举行 CMOS/BIOS对硬件举行 POST加电自检,在物理层次上对硬件举行 检测是否正常。比方 检查硬盘是否插好等。
    2)第二步读取硬盘中MBR的BootLoader,自启动程序,Linux下常用的自启动程序是GRUB。这一步重要 的功能是载入内核。内核存放在/boot目次 下
   3)第三步就是载入的内核Kernel的过程,
        重要 功能是:1、驱动硬件,Kernel中含有大量驱动程序。2、启动init进程 。
    4)init进程 ,重要 是读取/etc/inittab文件,实验 缺省运行级别,从而继续引导。必要 注意 的是init都城 的PID恒为1,是全部 进程 的父进程 ,而init进程 的负景程是0,为内核调度器Kernel scheduler。
    5)/etc/inittab 定义了初始化的操作。

2016216120335483.png (538×238)

下令 重要 格式是:id: runlevels : action : process
    此中 ,如上图红框中所示
    1、run-levels运行级别有7个,0—6分别如下:
   0 —— halt 关机
   1 —— Single user mode 单用户模式
   2 —— Multiuser,withoutNFS 多用户模式但不带网络(text模式)
   3 —— Full multiuser mode 完备 功能的多用户模式(text模式)
   4 —— unused 预留
   5 —— X11 图形化多用户模式
   6 —— reboot 重启
可以根据这7个运行级别来举行 切换
下令 为:查看当前运行级别 #runlevel、 切换运行级别 #init[0 |1 |2 |3 |4 |5 |6]
     2、而acion中也有几个比较告急 的取值:
   1 initdefault:指定体系 缺省启动的运行级别,如上图中标出,通常用于修复,比如我们要进入单用户模式,则可以将其设置为1,不可将默认设置为0或6,否则无法启动.
 
   2sysinit:体系 启动实验 process中指定的下令

2016216120358904.png (316×35)

由inittab文件内容可以看出,没有设置运行级别,即为无论是哪个运行级别,都会实验 /etc/rc.d/rc.sysinit

   6)initdefault,如第五步所说到的,重要 是读取/etc/inittab中的信息,判断 缺省的运行级别是什么。
    7)/etc/rc.d/rc.sysinit
    在inittab文件中运行到第21行,变是启动这个脚本。完成体系 服务程序的启动,如体系 环境变量的设置、设置体系 时钟、加载字体、检查加载文件体系 、天生 体系 启动信息日志 文件等。由于是基础服务,由于 其run-level设置为空::即任何级别,action设置为sysinit。即该脚本在任何运行级别下都要启动,以完成基础服务的启动
   8)基础服务启动后,会实验 /etc/rc.d/rc这个脚本
    加载完基础服务后,就要根据不同的运行级别去启动相对应的下的目次 ,它的工作原理是先去判断 体系 的默认运行级别即第6步中的东西,然后再实验 相应的rcN.d目次 下的服务启动脚本如图

2016216120419054.png (341×144)

 9)实验 /etc/rc.d/rcN.d目次 下的服务启动脚本

    看下该目次 下的内容:

2016216120437630.png (671×247)

 此中 S表示要启动的脚本,K表示要关闭的脚本
    数字表示启动次序 ,数值小的优先.重要 是对一些服务的管理
    在这一步里,必要 阐明 一下/etc/rc.d/init.d这个目次 ,这个目次 里放的脚本是真正的脚本,而rcN.d里放置的都是init.d目次 里的软毗连 ,也就是说全部 rcN.d里的文件终极 都必要 来init.d里找真正的脚本
 看一下具体 细节:

2016216120456913.png (613×180)

2016216120516144.png (474×272)

实验 到这一步,界面就会提示输入用户名和暗码 了,也就是说体系 已经起来了,输入用户名和暗码 的过程后面再说,这次的引导流程就竣事 了
   
    末了 必要 阐明 的是,LINUX的引导流程的头脑 大致雷同 ,但细节由于 版本的标题 ,在设置 文件的名字或者是位置都不尽雷同 ,此次我用的是CentOS版本,而Ubuntu版本是没有inittab文件和grup.conf文件的,以是 假如 有爱好 ,大家可以按照这种思绪 去探索探索.

PS:关于GRUB
GNU GRUB(简称“GRUB”)是一个来自GNU项目的 启动引导程序。GRUB是多启动规范的实现,它答应 用户可以在计算机内同时拥有多个操作体系 ,并在计算机启动时选择盼望 运行的操作体系 。GRUB可用于选择操作体系 分区上的不同内核,也可用于向这些内核传递启动参数。

GNU GRUB的前身为Grand Unified Bootloader。它重要 用于类Unix体系 ;同大多Linux发行版一样,GNU体系 也采用GNU GRUB作为它的启动器。Solaris从10 1/06版开始在x86体系 上也采用GNU GRUB作为启动器。

GRUB可动态设置 ;它在启动时加载设置 信息,并答应 在启动时修改,如选择不同的内核和initrd。为此目的 ,GRUB提供了一个简单的雷同 Bash的下令 行界面,它答应 用户编写新的启动次序 。

GRUB非常轻巧 。它支持多种可实验 格式;它除了可实用 于支持多启动的操作体系 外,还通过链式启动功能支持诸如Windows和OS/2之类的不支持多启动的操作体系 。GRUB支持全部 的Unix文件体系 ,也支持Windows实用 的FAT和NTFS文件体系 ,还支持LBA模式。GRUB答应 用户查看它支持的文件体系 里文件的内容。

GRUB具有多种用户界面。多数Linux发行版利用 GRUB对图形界面的支持,提供了定制的带有背景图案的启动菜单,偶尔 也支持鼠标。通过对GRUB的笔墨 界面的设定,可以通过串口实现长途 终端启动。

GRUB可以从网络上下载操作体系 镜像,因此可以支持无盘体系 。GRUB支持在启动操作体系 前解压它的镜像。

与别的 启动器不同,GRUB可以通过GRUB提示符直接与用户举行 交互。载入操作体系 前,在GRUB文本模式屏幕下键入c键可以进入GRUB下令 行。在没有作业体系 或者有作业体系 而没有"menu.lst"文件的体系 上,同样可以进入GRUB提示符。通过雷同 bash的下令 ,GRUB提示符答应 用户手工启动任何操作体系 。把合适的下令 记录在"menu.lst"文件里,可以自动 启动一个操作体系 。

GRUB拥有丰富的终端下令 ,在下令 行下利用 这些下令 ,用户可以查看硬盘分区的细节,修改分区设置,暂时 重新映射磁盘次序 ,从任何用户定义的设置 文件启动,以及查看GRUB所支持的文件体系 上的别的 启动器的设置 。因此,即便不知道一台电脑上安装了什么,也可以从外部装备 启动一个操作体系 。

GRUB采用滚动屏幕选择想要启动的操作体系 。通过向"menu.lst"文件中添加相干 信息,GRUB可以控制150或者更多的启动选项,在启动时用方向键举行 选择。

通过链式启动,一个启动器可以启动另一个启动器。GRUB通过2到3行的下令 就可以从DOS、Windows、Linux、BSD和Solaris体系 启动。

只管 GRUB为类Unix体系 举行 了编译和打包,但也有供DOS和Windows利用 的GRUB。GRUB也可以不附带任何操作体系 而作为孤立体系 安装。从CD上启动时运用GRUB必要 1个文件,而从软盘、硬盘和USB装备 上启动时必要 2个文件。这些文件可以在任何支持GRUB的Linux CD上找到,用户可以很容易 的找到它们。


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

avatar 冀苍鸾 | 2021-9-18 23:50:33 | 显示全部楼层
有品位!
回复

使用道具 举报

avatar 瑞星卡卡卡卫 | 2021-9-19 13:24:22 | 显示全部楼层
admin楼主的帖子越来越有深度了!
回复

使用道具 举报

avatar 酱油的2017 | 2021-9-20 02:39:39 | 显示全部楼层
admin楼主的病历本丢我这里了!
回复

使用道具 举报

avatar 教风三应博 | 2021-10-15 20:45:25 | 显示全部楼层
你觉得该怎么做呢?
回复

使用道具 举报

avatar sun81ABC | 2021-10-20 22:29:46 | 显示全部楼层
admin楼主人气很旺!
回复

使用道具 举报

支持楼上的!
回复

使用道具 举报

看了这么多帖子,第一次看到这么有深度了!
回复

使用道具 举报

这么好的帖子,应该加精华!
回复

使用道具 举报

admin楼主,我告诉你一个你不知道的的秘密,有一个牛逼的网站,他卖的服务器是永久的,我们的网站用 服务器都是在这家买的,你可以去试试。访问地址:http://fwq.mxswl.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则