配置Grub以便启动Linux


一、要有 Grub-install 程序(如果没有,需要下载安装)

二、安装 Grub 到硬盘或相关设备(此处假设为第一个IDE硬盘,即hda)

grub-install  --root-directory=/mnt  /dev/hda

三、修改Grub配置文件

1)创建挂载目录

mkdir /mnt/boot

2)挂载硬盘或相关设备

mount /dev/hda1 /mnt/boot

3)修改device.map文件, 删除(fd0),(hd1)之类整行语句

vi /mnt/boot/grub/device.map

4)创建或添加grub/grub.conf文件,并添加如下内容

vi /mnt/boot/grub/grub.conf

title Little Linux
root (hd0,0)
kernel /vmlinuz ro root=/dev/hda quiet
initrd /initrd.gz

(注:此处vmlinuz为内核文件,initrd.gz为内存根文件系统)

四、复制内核文件和内存根文件系统到硬盘或相关设备的根目录下并命名为vmlinuz及initrd.gz

cp ....../.....  /mnt/boot/vmlinuz

cp ....../.....  /mnt/boot/initrd.gz

五、重启测试,应该可以看见启动菜单了

PS:手动方式(假设宿主系统已有/boot/grub,且目标设备为/dev/hda)

1、mkidr /mnt/boot                        (创建挂载目录)

2、mount /dev/hda1 /mnt/boot      (挂载硬盘或相关设备)

3、mkdir /mnt/boot/grub                (目标盘建立grub目录)

4、cp /boot/grub/device.map /mnt/boot/grub   (拷贝宿主盘中的grub必要文件)

5、cp /boot/grub/stage1 /mnt/boot/grub          (拷贝宿主盘中的grub必要文件)

6、cp /boot/grub/stage2 /mnt/boot/grub          (拷贝宿主盘中的grub必要文件)

7、vi /mnt/boot/grub/grub.conf      (修改grub配置文件)

default=0

timeout=10

title Linux

/vmlinuz ro root=/dev/hda quiet

initrd /initrd.gz

8、cd /mnt/boot/grub                    (进入目标盘grub目录)

9、ln -s grub.conf menu.lst           (创建一个链接)

10、/sbin/grub --batch --device-map=/dev/null <<EOF    (执行安装grub动作命令)

device (hd0) /dev/hda

root (hd0,0)

setup (hd0,0)

quit

EOF

11、重启测试

相关内容