无忧启动论坛

标题: grub2引导WIN8,7,XP,MAC,linux,clvoer问题!!! [打印本页]

作者: kylinsure    时间: 2013-12-6 23:16
标题: grub2引导WIN8,7,XP,MAC,linux,clvoer问题!!!
本帖最后由 kylinsure 于 2013-12-6 23:21 编辑

传统BIOS+GPT磁盘!

我的分区图如下。
其中还有一个tf卡插巢。安装的是vboot.(用来引导windows xp vhd)





我编写的grub2来引导windows series    win8,     win7,   winxpvhd,     mac os ,  linux,   clover....

“windows series”   这个菜单能够引导成功,其中引导win8,win7时直接提示 “文件没有找到”      winxpvhd,没有反应。。。  cloverEFI也是一样没有反应。linux,正常引导。




menuentry "Windows Series" --class windows --class os {
       load_video
       insmod part_gpt
       insmod fat
       set root='(hd0,gpt1)'
       search --no-floppy --fs-uuid --set=root 0008-A709
       chainloader ($root)/EFI/Microsoft/Boot/bootmgfw.efi
}
menuentry "Windows 8" --class windows --class os {
       load_video
       insmod part_gpt
       insmod ntfs
       set root='(hd0,gpt4)'
       search --no-floppy --fs-uuid --set=root 04044791044784A0
       set locale_dir=($root)/windows/system32/winload.efi
       chainloader ($root)/windows/system32/winload.efi
}
menuentry "Windows 7" --class windows --class os {
       load_video
       insmod part_gpt
       insmod ntfs
       set root='(hd0,gpt5)'
       search --no-floppy --fs-uuid --set=root B682280E8227D223
       chainloader ($root)/windows/system32/winload.efi
}
menuentry "Windows VHD" --class windows --class os {
        load_video
        insmod part_gpt
        insmod part_msdos
        insmod fat
        set root='(hd1,msdos1)'
        search --no-floppy --fs-uuid --set=root 9EF8-2B86
        set locale_dir=($root)/vbootldr.mbr
        chainloader +1
        chainloader ($root)/vbootldr.mbr
}
menuentry "Mac OS X Series" --class windows --class os {
       load_video
       insmod part_gpt
       insmod fat
       set root='(hd0,gpt1)'
       search --no-floppy --fs-uuid --set=root 0008-A709
       chainloader ($root)/EFI/CLOVER/CLOVERIA32.efi
}
menuentry "Linux Series" --class windows --class os {
       load_video
       insmod part_gpt
       insmod fat
       set root='(hd0,gpt1)'
       search --no-floppy --fs-uuid --set=root 0008-A709
       chainloader ($root)/EFI/Linux/grub.efi
}




请高手帮我分析一下,是哪里出错了。是分区格式问题?  还是语法不对? 还是文件不对?  
作者: my9823    时间: 2013-12-7 12:34
本帖最后由 my9823 于 2013-12-7 12:39 编辑

search_fs_file
search_fs_uuid
search_label
看看你的search命令是查找的什么,文件?uuid?还是label?
在search命令上边插入相应模块!
作者: my9823    时间: 2013-12-7 12:43
另外chalnloader只见过chainloader +1的用法,没见过后边是文件的?建议你去看看archlinux的wiki对grub2的介绍!
作者: yang77    时间: 2013-12-25 22:29
chalnloader /ntldr 和 chalnloader /bootmgr 都没错,至于加了($root)/EFI/Microsoft/Boot/bootmgfw.efi
,楼主说能启动证明这里的写法是可以的吧
作者: rivulet    时间: 2014-1-7 19:20
winload.efi并不是bootloader,需要通过bootmgrfw.efi来启动
作者: 2012WinBeta    时间: 2014-1-23 16:51
Clover……变色龙呢?我也有一个类似问题
http:/ /bbs.pcbeta.com/viewthread-1468333-1-1.html
作者: 2012WinBeta    时间: 2014-1-23 17:11
没反应的原因是{root}是EFI分区,跟你的Windows不是同一个分区,当然没反应了!只需要引导相应的bootmgfw.efi就行了
另外Clover应该引导bootx64.efi,难道你的电脑是IA-32架构的?
作者: 2011冥.    时间: 2014-4-17 00:41
grub2可以在传统BIOS引导efi?




欢迎光临 无忧启动论坛 (http://wuyou.net/) Powered by Discuz! X3.3