Linux中关于GRUB的安装


这篇文章主要简述在linux系统中如何实现GRUB的安装。

首先了解几个概念:
 
MBR主引导记录:是在我们磁盘上的0磁道0磁头1扇区的位置 。
 
MBR总共有512个字节:主要包含引导程序bootloader 占据446个字节 , 磁盘分区表占据64个字节 ,引导封装代码占据2个字节
 
GRUB:全称是Grand Unified Bootloader 是一个功能强大,支持内核也非常多的bootloader引导加载器.
 
我们知道在系统启动过程中,系统在自检完成之后靠之前bios设置的磁盘启动顺序找到相应的磁盘,此时首先找到的是磁盘的MBR, 然后加载MBR中的bootloader引导程序。
 
在linux中我们常用的bootloader就是GRUB,如果GRUB损坏或者丢失也就意味着我们无法去加载系统内核程序,系统也将无法正常启动。
 
好了不罗嗦了,在此我们就介绍一下怎么在虚拟机下去安装GRUB ,
 
我们的操作环境是vm8的虚拟机,RedHat5.4的操作系统
 
第一种方法:
 
1  我们在redhat5.4的系统中,加上一个磁盘 ,创建一个分区,并将其格式化。
 
    在虚拟机中给一个系统加一个磁盘,我想大家应该都不陌生,
 
 在此我加了一块磁盘为sdb
 
 # fdisk /dev/sdb    创建一个分区/dev/sdb1
 
 #mkfs –t ex3 /dev/sdb1  指定ext3的文件格式格式化磁盘分区
 
2 我们在mnt目录下创建一个目录为boot
 
      #mkdir /mnt/boot
 
             grub的相关文件是在/boot目录下
 
   3 挂载磁盘到此目录
 
     # mount /dev/sdb1 /mnt/boot
 
     安装是需要在/boot目录下写文件 所以挂载上去
 
    4 安装我们使用grub-install来安装grub
 
#grub-install  --root-directory=/mnt  /dev/sdb
 
       --root-directory = 此选项是指定grub安装的位置
 
     到此,我们用此新建的磁盘上的grub已安装成功 ,我们再创建一个虚拟机,用此磁盘作为启动盘就可看到grub的编辑界面了,此时再去指定根目录,内核等等,当然这是后面的事情了。
 
第二种方法:
 
我们用grub-install安装后生成的grub的目录的里面的内容和我们当前系统下 /usr/share/grub/i386-redhat目录中的内容是一样的,因此我们也可以通过复制文件的方式,然后再用grub命令来达到安装grub的目的。
 
1:#mount /dev/sdb1 /mnt/boot  依然是挂载
 
 2:#mkdir /mnt/boot/grub  创建以个grub的目录
 
3: #cp /usr/share/grub/i386-redhat/*   /mnt/boot/grub
 
                         复制前者的所有的文件到grub目录下
 
4 # umount /dev/sdb1     卸载
 
5  # grub  运行grub命令会弹出黑色编辑框
 
grub> root (hd1,0)         输入root (hd1,0) 回车  (hd1,0)表示第二个磁盘的第一分区
 
grub> setup (hd1)          输入setup (hd1) 回车  此为安装
 
grub> quit                  输入quit  回车  退出
 
 
此时再挂载上/dev/sdb1到 /mnt/boot查看grub目录下,你会发现也已经有所需的文件了,再去用创建以个新的虚拟机验证一下吧。

相关内容