| 
 | 
 
用 winly 做了可以同时用 Legacy 与 UEFI 方式启动的U盘,在PC机上启动正常。 
在MAC上用UEFI方式引导时,报错:  not a valid root device 
进入控制台,ls 查看发现一个 U 盘被识别为两个设备 :  (hd0,msdos1)  和 (hd1,msdos1) 
 
手动用如下命令可以启动(必须是hd1): 
- set root=(hd1,msdos1)
 
 - chainloader /EFI/microsoft/boot/bootx64.efi
 
  复制代码 
 
这可能与MAC的BOOTCAMP兼容安装Windows有关,但grub2菜单里的 search 有没有更好的写法能避免这个报错? 
(注:测试时发现如果U盘的主引导及分区引导改成MAC不能识别到MBR引导,UEFI启动就正常) 
 
 
原菜单写法如下 
EFI: 
-  menuentry "64位 8PE -UEFI" --class windows --class os {
 
 -  search --no-floppy --file --set=root /EFI/microsoft/boot/bootx64.efi
 
 -  chainloader /EFI/microsoft/boot/bootx64.efi
 
 -  }
 
 
  复制代码 
Legacy BIOS: 
-  menuentry "64位 8PE"  {
 
 -  search --no-floppy --file --set=root /boot/8PE_X64
 
 -  ntldr /boot/8PE_X64
 
 -  }
 
 
  复制代码 |   
 
 
 
 |