学习 Linux_01: 引导程序
当PC启动时,执行ROM中的BIOS程序:首先自检,然后从引导驱动器上的主引导记录(MBR)加载第一个扇区。MBR包含主分区表,因此可执行代码少于512byte,这部分代码叫做:第一阶段启动加载程序。加载过程为,加载MBR->运行,发现标记为active的引导驱动器上主分区->加载分区引导记录->运行该记录加载该分区一组块。
当一个引导程序获取控制权之后,它可能做的一件事就是加载另一个引导程序。这称为链式加载(chain loading)
GRUB(Grand Unified Bootloader)
GRUB包含三个文件:
stage1:引导扇区引导程序的备份,只有512字节(前446字节为引导程序),作用是在系统启动时装载STAGE1.5/2并将控制权交给后者
stage1.5:(选择装入)用来识别不同文件系统格式的stage2,由于紧接着mbr,fs再怎么也只能从0面1柱面1扇区开始,这样就两个好处:一来stage1可以方便的找到他,二来stage2可以通过它来解释,stage1.5是为了配合stage2安装的,例如当初安装stage2的时候如果是安装在了ext2文件系统上,stage1.5就是用来解释ext2的文件。
stage2:除了加载自己,所有功能都由它实现
start.s:加载stage1.5或stage2
整个过程为:
Bios->stage1->start.s(->stage1.5)->stage2
恢复
另一个安装损坏了MBR(本质上是stage1部分坏了)
比如又一次安装了windows,此时覆盖掉了stage1,只要想办法进入到linux,运行grub-install就可以了。具体的方法是通过启动盘(软盘,U盘,安装盘)
避免这个问题的方法是使用UUIDs,这样只需要更新配置文件而不需要更新/etc/fsab,在使用USB驱动器的时候特别有用
另一个方法是使用一个独立的boot分区,这个分区不易变动,专职启动(将stage2装于此)
将stage1~stage2都装在CD-ROM或软盘上,用来启动
grub-install命令是安装stage1到mbr或者dbr,:
grub自带命令root,setup是配置整个过程的,是按照默认的方式运行(通过help得到的知识是:自动安装grub到root指定的设备,使用的是root指定设备上的映像)
 
                    
                     
                    
                 
                    
                 
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号 
