美文网首页
浅析Linux操作系统之奥秘(GRUB)

浅析Linux操作系统之奥秘(GRUB)

作者: 明白已晚 | 来源:发表于2018-10-01 21:39 被阅读28次

    GNU GRUB(GRand Unified Bootloader简称“GRUB”)是一个来自GNU项目的多操作系统启动程序(开机管理程序)。
    GRUB是多启动规范的实现,它允许用户可以在计算机内同时拥有多个操作系统,并在计算机启动时选择希望运行的操作系统。GRUB可用于选择操作系统分区上的不同内核,也可用于向这些内核传递启动参数。

    GRUB文件目录
    Linux 下载 /boot/grub


    GRUB.png

    stage 1

    主要负责当BIOS交接给GRUB时,载入存在各分区中的开机文件。stage 1文件大小为512Byte.
    stage 1文件其实就是MBR中bootloader的备份文件。前446Byte和MBR是一样的,后面的和MBR没有关系

    image.png

    stage 1.5

    有许多的1.5文件,如e2fs_stage1_5,fat_stage1_5,jfs_stage1_5,reiseifs_stage1_5等等,作用就是连接stage 1和stage2之间的一个信道,里面唯一存放着的是该文件的系统文件的格式。
    stage1加载stage1.5后(获得访问目录的能力),e2fs_stage1_5,就可以识ext2文件系统的格式,这是一种非常具有弹性的做法,之后在将stage2加载。

    stage 2

    这个文件是GRUB 的核心程序,用户以选项的方式将操作系统加载,新增参数,修改选项等。主要存放在各分区的Bootsector中。GRUB在安装的同时便已经将所需要的设置文件位置先写进stage2中,执行时,会从现有的文件系统中,在原来设置的路径下加载设置文件(grub.conf).

    用stage 文件(shell 下执行)安装grub
    1.执行grub;
    2.root(hd0,2);
    3.setup(hd0);
    4.quit.


    image.png
    image.png
    image.png

    1.BIOS将控制权交给硬盘的主引导区,MBR
    2.MBR中的bootloader通过内置的地址加载stage1.5
    3.bootloader通过stage1.5内容,将分区中的stage2加载
    4.stage2此时就可以加载grub.conf,让用户看到选项画面

    相关文章

      网友评论

          本文标题:浅析Linux操作系统之奥秘(GRUB)

          本文链接:https://www.haomeiwen.com/subject/vhpnoftx.html