centos6启动流程

centos6启动流程

centos6启动流程图:

1585633669(1).jpg

1、POST加电自检

加载BIOS的硬件信息,获取第一个启动设备。自检主要是检测一下硬件设备是否存在并且能正常运行。

例如BIOS会检测CPU、内存以及I/O设备是否能够正常运行,如果是个人计算机的话可能还会检测一下显示器。只要一通电,CPU就会自动去加载ROM芯片上的BIOS程序,是这样来实现的。而检测完成之后进行硬件设备的初始化。

2、MBR引导加载

当第一步自检硬件没有问题时候,这里以BIOS为例,BIOS将会直接去找硬盘的第一个扇区,找到前446字节,将MBR加载到内存中,MBR将告诉程序下一阶段去哪里找系统grub引导。

这个阶段属于grub的第一阶段。前面的BIOS通过读取并执行启动设备的MBR中的bootloader,而bootloader要实现的功能就是提供一个菜单给用户,让用户去选择要启动的系统或不同的内核版本,因为一块硬盘上可能不止一个操作系统。然后把用户选择的内核版本加载到RAM中的特定空间,接着在RAM中解压、展开,而后把系统控制权移交给内核。

(推荐教程:centos教程)

3、加载系统内核kernel,执行系统初始化信息

豆包AI编程 豆包AI编程

豆包推出的AI编程助手

豆包AI编程 483 查看详情 豆包AI编程

在Bootloader开始读取操作系统内核文件时,接下来会将内核文件解压缩后装在到内存当中,然后根据内核提供的功能开始加载各个设备。这里的各个操作都是由内核来完成的,而我们的内核文件通常都存放在/boot目录当中,并且是一个vmlinux开头的文件。如下图所示:

[root@centos6 ~]# cd /boot[root@centos6 boot]# pwd/boot[root@centos6 boot]# lsconfig-2.6.32-696.el6.x86_64           lost+foundefi                                    symvers-2.6.32-696.el6.x86_64.gzgrub                                   System.map-2.6.32-696.el6.x86_64initramfs-2.6.32-696.el6.x86_64.img    vmlinuz-2.6.32-696.el6.x86_64initrd-2.6.32-696.el6.x86_64kdump.img

但是,此时内核程序还没有加载到磁盘,如何读取内核文件呢?如果要先加载磁盘,就要有磁盘驱动程序,而驱动程序又在硬盘上,这样就陷入了一个无限循环。所以我们要采用一种叫做虚拟文件系统的东西来解决这个问题。同样的,这个文件系统也放在了/boot下,是一个initrd开头的文件,如上图所示。

Boot Loader可以加载kernel和initrd,然后把initrd解压成根目录,然后内核就可以在这个虚拟的根文件系统上加载驱动程序,之后释放根文件系统,最后开始正常的启动过程。

4、启动init

对于CentOS6来说,init配置文件为:/etc/inittab, /etc/init/*.conf,也就是upstart将配置文件拆分成多个,在/etc/init/目录下以conf结尾的都是upstart风格的配置文件,而/etc/inittab仅用于设置默认运行级别。运行级别是为了系统运行或维护等目的而设定,分为0-6,共七个级别:

     0:关机(shutdown);     1:单用户模式(single user):不需要通过认证,登录进去之后为root用户身份;     2:多用户模式(multi user):会启动网络功能,但不会启动NFS;     3:多用户模式(multi user):为完全功能模式,提供文本界面;     4:预留级别,目前无特别使用目的;     5:多用户模式(multi user):为完全功能模式,提供图形化界面;     6:重启(reboot),reboot;

通常我们使用默认级别3或5,不同级别的页面是可以切换的,切换方式为:init[0-6],使用runlevel命令来查看当前运行的级别。

5、用户登录

相关视频教程推荐:linux视频教程

以上就是centos6启动流程的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/609188.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年11月11日 00:18:13
下一篇 2025年11月11日 00:20:08

相关推荐

  • centos6系统出现中文乱码怎么办

    问题: Windows的默认编码为GBK,Linux的默认编码为UTF-8。在Windows下编辑的中文,在Linux下显示为乱码。为了解决此问题,修改Linux的默认编码为GBK。 (推荐教程:centos使用教程) 解决方法: 1、安装英文版默认的字符集配置为: 文心快码 文心快码(Comate…

    2025年11月6日 运维
    000
  • centos5与centos6有什么区别

    1、安装时,centos5.*一般都是在定制完系统后才开始格式化盘,安装相关的包,而centos6.*则格式化完硬盘才开始定制系统。 2、centOS6.*修改ifcfg-eth0文件,保存后网络会马上生效,而不会像以前版本修改后改变需要重启网络。 3、centos6.2开始网卡ifcfg-eth0…

    2025年11月6日 运维
    000
  • centos6与centos7有哪些区别

    区别如下: 一、系统初始化技术演变——开机启动流程 CentOS 6:采用了INIT技术,整个开机过程是自检BIOS——MBR引导——GRUB加载——加载内核——启动INIT进程——读取INITTAB配置文件,根据配置文件指定的模式按顺序来启动进程服务。INIT技术让启动流程很清晰,依赖SHELL脚…

    2025年11月6日 运维
    000
  • centos6启动流程是什么

    centos6启动流程是什么?   下面开始简单的了解一下CentOS6的启动流程吧。  第一步、硬件启动阶段   简单说一下这一步的流程:打开电源;POST自检;BIOS逐一排查设备启动顺序;如果是硬盘启动,读取硬盘的MBR的BootLoader。(这里默认MBR分区,暂不考虑GPT分区)   这…

    2025年11月6日 运维
    100
  • centos7和centos6的区别是什么

    区别:1、centos7内核是“3.10”,centos6内核是“2.6”;2、文件系统不一样,CentOS6默认用ext4,而CentOS7用xfs;3、硬盘默认调度算法不一样,CentOS6用cfq,而CentOS7用deadline。 本教程操作环境:centos7系统、thinkpad t4…

    2025年11月6日 运维
    100

发表回复

登录后才能评论
关注微信