位置: IT常识 - 正文

解析Linux系统启动的引导流程(简述linux系统的启动)

编辑:rootadmin
这篇文章主要介绍了Linux系统启动的引导流程,文中还附带了对多系统引导程序GRUB的介绍,需要的朋友可以参考下... 16-02-16

推荐整理分享解析Linux系统启动的引导流程(简述linux系统的启动),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:linux启动详解,linux系统的启动过程,5个步骤,linux启动详解,linux操作系统启动,linux操作系统启动,linux操作系统启动,linux启动详解,请总结linux系统的启动流程步骤,内容如对您有帮助,希望把文章链接给更多的朋友!

LINUX是自由开源软件,在LINUX里一切都是文件,不管是命令,操作等等都是以文件形式保存,这篇博客来记录LINUX启动时的引导流程是通过哪写文件来完成的. 使用的LINUX版本是CentOS5,CentOS和Ubuntu都是自己联系使用时的较理想版本. 下面以CentOS5.5版本为例,介绍LINUX的引导流程,具体流程如下:

下面详细介绍每一步:

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 定义了初始化的操作。

命令主要格式是: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中指定的命令

由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目录下的服务启动脚本如图

9)执行/etc/rc.d/rcN.d目录下的服务启动脚本

看下该目录下的内容:

其中S表示要启动的脚本,K表示要关闭的脚本 数字表示启动顺序,数值小的优先.主要是对一些服务的管理 在这一步里,需要说明一下/etc/rc.d/init.d这个目录,这个目录里放的脚本是真正的脚本,而rcN.d里放置的都是init.d目录里的软连接,也就是说所有rcN.d里的文件最终都需要来init.d里找真正的脚本看一下具体细节:

解析Linux系统启动的引导流程(简述linux系统的启动)

执行到这一步,界面就会提示输入用户名和密码了,也就是说系统已经起来了,输入用户名和密码的过程后面再说,这次的引导流程就结束了

最后需要说明的是,LINUX的引导流程的思想大致相同,但细节因为版本的问题,在配置文件的名字或者是位置都不尽相同,此次我用的是CentOS版本,而Ubuntu版本是没有inittab文件和grup.conf文件的,所以如果有兴趣,大家可以按照这种思路去探索探索.

PS:关于GRUBGNU 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上找到,用户可以很容易的找到它们。

本文链接地址:https://www.jiuchutong.com/zhishi/273837.html 转载请保留说明!

上一篇:笔记本电脑BIOS出现故障怎么办 三种常见BIOS故障解决方案(笔记本电脑bios设置)

下一篇:Win10/Win11如何高效地使用搜索引擎(win11如何降到win10)

  • vivos12有nfc功能吗(vivos1有无nfc)

    vivos12有nfc功能吗(vivos1有无nfc)

  • excel图案样式怎么设置(excel图案样式怎么设置为6.25%灰色)

    excel图案样式怎么设置(excel图案样式怎么设置为6.25%灰色)

  • 亲属卡能看到消费明细内容吗(亲属卡能看到消费明细吗)

    亲属卡能看到消费明细内容吗(亲属卡能看到消费明细吗)

  • qq匿问我答是只有好友才能提问吗(qq匿问我答问什么问题)

    qq匿问我答是只有好友才能提问吗(qq匿问我答问什么问题)

  • 微信被单删有哪些特征(微信被单删了会怎样)

    微信被单删有哪些特征(微信被单删了会怎样)

  • 三星s20能双卡加内存卡吗(三星s20u双卡)

    三星s20能双卡加内存卡吗(三星s20u双卡)

  • 苹果11老是跳出中国移动(苹果11老是跳出输入id密码)

    苹果11老是跳出中国移动(苹果11老是跳出输入id密码)

  • 电脑1分钟自动锁屏怎么办

    电脑1分钟自动锁屏怎么办

  • 手机上显示volte是什么意思

    手机上显示volte是什么意思

  • 苹果手机相机分辨率设置在哪里(苹果手机相机分辨率在哪里看)

    苹果手机相机分辨率设置在哪里(苹果手机相机分辨率在哪里看)

  • 华为手机微信底色变成黑色怎么办(华为手机微信底面黑色怎么办)

    华为手机微信底色变成黑色怎么办(华为手机微信底面黑色怎么办)

  • 快手戳一下是匿名的吗(快手里匿名是什么情况)

    快手戳一下是匿名的吗(快手里匿名是什么情况)

  • oppo官方系统升级(oppo官方更新系统)

    oppo官方系统升级(oppo官方更新系统)

  • 打印机已脱机什么意思(打印机脱机什么问题)

    打印机已脱机什么意思(打印机脱机什么问题)

  • 有没有方法可以改微信号(有没有方法可以侵入别人手机)

    有没有方法可以改微信号(有没有方法可以侵入别人手机)

  • 荣耀8x和8xmax怎么选(荣耀8x和8x max)

    荣耀8x和8xmax怎么选(荣耀8x和8x max)

  • 旭派电池耐用吗(中国电池十大名牌排名)

    旭派电池耐用吗(中国电池十大名牌排名)

  • xsmax如何显示电量百分比(xsmax怎么显示电池)

    xsmax如何显示电量百分比(xsmax怎么显示电池)

  • 微视提现了为什么没有到账(微视提现后就没红包了)

    微视提现了为什么没有到账(微视提现后就没红包了)

  • nova6se可以无线充电吗(nova6se wifi)

    nova6se可以无线充电吗(nova6se wifi)

  • 微信对方忙线中是为什么(微信对方忙线中符号)

    微信对方忙线中是为什么(微信对方忙线中符号)

  • 华为p30pro支持内存卡吗(华为p30pro支持内存卡口)

    华为p30pro支持内存卡吗(华为p30pro支持内存卡口)

  • pdu有什么用(pdu原理)

    pdu有什么用(pdu原理)

  • 苹果ios在哪里打开(iphone怎么打苹果)

    苹果ios在哪里打开(iphone怎么打苹果)

  • 微信能用哪种共享单车(微信可以共享支付吗)

    微信能用哪种共享单车(微信可以共享支付吗)

  • b站怎么看全部弹幕(B站怎么看全部关注)

    b站怎么看全部弹幕(B站怎么看全部关注)

  • 不动产租赁税率9%
  • 企业所得税留抵税额会显示在申报表上吗?
  • 税务人员岗位有哪些
  • 建筑公司跨区域迁入
  • 进口环节缴纳关税计入
  • 出口托收业务
  • 预缴企业所得税分录
  • 年终奖有计算公式吗
  • 施工企业确认收入的方法有哪两种
  • 高新技术企业进项加计扣除
  • 企业所得税少交了被税局查到怎么处理
  • 电子发票可以做报销凭证吗
  • 年度员工离职率的计算公式
  • 注册资本转让股权
  • 溢价转让股权的会计处理
  • 企业收到退款应该如何做会计处理?
  • 年折旧率怎么计算折旧几年
  • 事业单位的费用
  • 以公司名义购买房产的利与弊
  • 支付中间业务收入怎么算
  • MacOS Big Sur 11.3网页怎么设置时间限制?
  • 未知格式或损坏文件怎么办
  • 以太网默认网关怎么查看
  • 电脑fs0是什么
  • uniapp 安卓原生
  • 研发费用加计扣除75%还是100%
  • 员工重复报销后如何处理
  • php imagefill
  • 应付股利在资产负债表哪个科目
  • 公司当月申报的是下个月社保么
  • php图像
  • php7.3
  • 简单的php文件
  • 给员工报销
  • thinkphp分表查询
  • vue插槽的使用场景
  • 占统治地位的英文短语
  • nmap的命令
  • 港口公司属于什么性质的单位
  • python如何点击网页按钮
  • 老板天天吸烟
  • 房租费税金计入哪个科目
  • jquery vue.js
  • concat group
  • 未分配利润是怎么来的
  • 去年出口
  • 本年度发票一定要收回吗
  • 核定征收企业有没有自然人电子税务
  • 库存商品如何结转生产成本
  • 核定征收每月最低交多少税
  • 香港发票在内地认可吗
  • 应收账款的金额包括增值税吗
  • 进口关税,增值税,消费税
  • 信息服务费可以抵扣吗
  • 存货的实际成本法
  • 品种法在产品和产成品怎么分配
  • 存储过程mysql
  • mysql调用数据库语句
  • 在wind
  • 注册表里的默认可以删吗
  • win8 更改电脑设置
  • linux系统设置
  • win8是怎么样的
  • 请问菜单
  • Unity3D游戏开发pdf
  • opengl transform
  • nodejs内置的包管理器
  • 置顶在哪里
  • vue组件精讲
  • python数据结构与算法题库
  • unity销毁预制体
  • unity打开c#
  • javascript编写
  • 国企9000扣完五险一金
  • 外经证预缴税款网上流程
  • 境外服务收入如何纳税
  • 上海社保三方协议
  • 京东开的店
  • 2020江苏省禁钓规定
  • 重庆公交司机收入
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设