操作系统引导程序MBR,MBR是由三段组成:446个字节组成的boot locader(引导加载器),64个字节的分区表包含4个分区每个分区16个字节,另外2个字节是结束标志位,如果该标志出错就不能启动系统了。其中446字节boot locader对于引导系统很重要。Linux中有两种boot locader可选,一种是LILO,一种就是GRUB。
LILO 已成为Linux发行版的标准组成部分,是一个较老/最老的Linux加载程序。随着硬盘的不断增大,1024个柱面已不能满足了。但LILO的基本原理还保持没变。
GRUB 两段式的引导 :
stage1:MBR,负责加载第2 阶段
stage1.5:(此阶段本来是不存在的,在这里好叙述)识别驱动格式,加载驱动
stage2:加载/boot/grub的一些执行程序,如grub.conf
grub.conf的内容:
default=0 默认启动第一个Title后的系统和内核
tomeout=10菜单显示的超时时间,超时后会默认启动第一个Title后的系统或内核
splashp_w_picpath= PATH 系统启动时的图片所在的位置
hidemenu 隐藏菜单
password:写在不同的位置有不同的用法,格式是用MD5加密后的内容(grub-md5-crypt)
Title: My Linux :设置linux名字
root (hd1,0)grub所使用的根,并将此分区设为起始点
kernel /vmlinuz-2.6.18-164.el5 ro root=/dev/vol0/root rhgp quiet 内核的所在位置及读取方式
initrd /initrd-2.6.18-164.el5.img 内核的压缩位置
grub的2 种安装方式:
(1)在/mnt下创建一个boot目录,将磁盘设备下的要安装grub的分区挂载到此目录下。如命令为 : mount /dev/sdb1 /mnt/boot.
然后 grub-install --root-directory=/mnt(只能是/mnt,因为/mnt是grub安装的根目录)
完整的命令: grub-install --root-directory=/mnt /dev/sdb
切换至/mnt目录下查看是否已经创建好了/grub文件
(2)当MBR的446位boot loader 遭到损坏时,可使用手动安装grub
grub下的所有文件都在/usr/share/grub/i386-redhat/目录下,手动安装步骤如下:
先挂载 # mount /dev/sdb1 /mnt/boot
创建目录 # mkdir /mnt/boot/grub
进入i386-redhat目录中,并复制目录下所有文件
#cd /usr/share/grub/i386-redhat
#cp ./* /mnt/boot/grub
退出当前目录并卸载光盘
#cd
#umount /dev/sdb1
执行grub命令会出现一个grub界面:
grub>root (hd1,0)
grub>setup (hd1)
grub>quit
grub安装完毕,看看吧,系统完好...
转载于:https://blog.51cto.com/983310664/789561