|
本帖最后由 2013gdh 于 2014-8-23 13:04 编辑
你说的不清楚啊
1. uefi找硬盘esp分区\efi\microsoft\boot\bootmgrfw.efi的情况是在bios里第一个uefi引导项写死了这个路径,
默认efi文件路径是\eft\boot\bootx64.efi或者\efi\boot\bootia32.efi
2. boot grldr.mbr 这个是什么意思? 如果是指用efi版的bootmgr添加实模式启动项grldr.mbr, 我不确定bootmgrfw.efi支持转到16位模式, 不过grub2可以
另外, grldr.mbr的唯一任务就是找分区根目录的grldr文件, 如果你想在bios模式的bootmgr里加实模式启动项, 直接指定grldr文件所在的分区和路径就行
3. "从外置的bcd"是指bcd文件在U盘数据区吧? 如果不是, 那么因为bcd文件的路径是写死在bootmgr里的, 除非你手动修改bootmgr, 才可以转移bcd文件
4. "fba隐藏区" 在U盘mbr分区表里是看不到的, 因此bootmgr不识别(bios/uefi版本的都是如此), 所以访问不了fba里的文件, 也启动不了
既然你已经写了fba, 建议U盘mbr安装fbinst, 就是那个前64扇区都是几乎重复的引导代码的版本, 然后fbinst引导fba分区里的grldr, 这个成功率最高
之后在grldr的菜单里加一条引导项引导U盘数据区的bootmgr, 比如 find --set-root /bootmgr && chainloader /bootmgr
也可以引导可见区的pbr, 比如chainloader (hd0,1)+1 #(这个(hd0,1)视具体情况而定) |
|