在GRUB2中添加新硬盘的系统

之前买了SSD,装系统后,老硬盘上的Windows在安装linux的时候没检测到,grub2开机只有linux一个选项,因为平常不怎么用,也一直没试图恢复。
最近听说星际2的新资料片快出来了,打算把windows恢复回来,方便到时候玩。
改的时候发现grub2和grub有很大差距,不能直接改一个配置文件就可以解决所有问题了。。。。
根据谷歌得知,流程如下:
1)创建一个文件,命名为 /etc/grub.d/11_windows,内容为:

#!/bin/sh -e
echo "Adding Windows 7"
cat << EOF
menu entry "Windows 7" {
set root=(hd2,1)
chainloader (hd2,1)+1
}
EOF

Windows 7 装在 /dev/sdc1上,第三个硬盘所以这里使用hd2,第一个分区所以分区编号为1,这里有个grub2和grub不一样之处,即分区编号是从1开始算的。
保存后这里需要将该文件设置可执行权限:

[root@localhost grub.d]# chmod +x 11_windows

接下来根据配置来生成新的grub2启动配置:

[root@localhost grub.d]# grub2-mkconfig -o /boot/grub2/grub.cfg 
Generating grub.cfg ...
Found theme: /boot/grub2/themes/system/theme.txt
Found linux image: /boot/vmlinuz-3.7.9-201.fc18.x86_64
Found initrd image: /boot/initramfs-3.7.9-201.fc18.x86_64.img
Found linux image: /boot/vmlinuz-3.6.10-4.fc18.x86_64
Found initrd image: /boot/initramfs-3.6.10-4.fc18.x86_64.img
Found Windows 7 (loader) on /dev/sdc1
done

然后重启电脑,这时grub菜单上就出现了Windows 7了,而且可以进去了。


Last modified on 2013-03-07