无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
查看: 3420|回复: 13
打印 上一主题 下一主题

[已解决] GRUB4DOS for UEFI 在真机上引导硬盘镜像失败的疑惑

[复制链接]
跳转到指定楼层
1#
发表于 2022-10-4 14:47:39 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 LiYi1987 于 2022-10-5 00:24 编辑

问题已解决:
G4D_UEFI配置没有问题,是硬件厂商OEM功能的问题。
原因是本人使用的Acer电脑,Acer的BIOS内置了一个Alt+F10启动OEM恢复系统的功能。其原理是拦截默认的EFI加载操作,全部重定向到/EFI/OEM/Boot/bootmgfw.efi文件,以巨硬BCD的方式引导厂商的备份恢复系统。
而本人用G4D_UEFI替换了上述的/EFI/OEM/Boot/bootmgfw.efi,试图DIY一下厂商的OEM功能去引导Ventoy,进而引导更多ISO。
问题就出在这里,本人推断,当使用G4D_UEFI去chainloader Ventoy的efi的时候,被BIOS拦截,重定向到/EFI/OEM/Boot/bootmgfw.efi,也就是引导了G4D_UEFI自身,这个解释与帖子中的图片显示的结果一致。
综上,理论上该问题无解。(如果大神有解的话,可以跟帖回复赐教,谢谢)


版本:grub4dos-for_UEFI-2022-09-15
镜像:/ventoy.vhd(通过磁盘管理创建,固定64M大小的VHD虚拟磁盘,然后把Ventoy-1.0.80安装在上面,分区类型为GPT)


过程:
在虚拟机/真机中,先通过UEFI引导G4D_for_UEFI,然后通过命令行的方式,依次输入以下命令
  1. find --set-root /ventoy.vhd
  2. map --mem /ventoy.vhd (hd)
  3. ls (hd-1,1)/ # 查看是否能正确读取
  4. chainloader (hd-1)
  5. boot
复制代码




结果:
(1)在VirtualBox(UEFI)中可以正常引导


(2)在真机中测试失败(运行到chainloader命令时)





问题:
不知真机运行失败的原因是什么,如何去解决?
备注:
1. 真机上是固态硬盘,/ventoy.vhd镜像存放在硬盘最开头100M的FAT32分区中,并格式化该分区,重新复制文件进去,因此可排除大扇区和文件碎片问题。

2. 真机是11代CPU+NVMe

Snipaste_2022-10-04_14-26-20.png (418.46 KB, 下载次数: 100)

在真机中运行失败

在真机中运行失败
2#
发表于 2022-10-4 15:14:00 | 只看该作者
图片是G4E不是G4D

点评

用的都是G4D_for_UEFI  详情 回复 发表于 2022-10-4 15:16
回复

使用道具 举报

3#
 楼主| 发表于 2022-10-4 15:16:21 | 只看该作者
szwp 发表于 2022-10-4 15:14
图片是G4E不是G4D

用的都是G4D_for_UEFI
回复

使用道具 举报

4#
发表于 2022-10-4 15:19:16 来自手机 | 只看该作者
1. 在菜单首行增加  debug 3 ,然后执行,看看返回什么信息。       2.   最后一行修改为  chainloader  (hd-1,1)/efi/boot/bootx64.efi  然后执行,看看。

点评

debug 3 之后如图。似乎也没报错。 chainloader (hd-1,1)/EFI/Boot/BOOTX64.efi 和 chainloader (hd-1) 的结果是一样的。  详情 回复 发表于 2022-10-4 16:02
回复

使用道具 举报

5#
 楼主| 发表于 2022-10-4 16:02:26 | 只看该作者
2011yaya2007777 发表于 2022-10-4 15:19
1. 在菜单首行增加  debug 3 ,然后执行,看看返回什么信息。       2.   最后一行修改为  chainloader  (h ...


debug 3 之后如图。似乎也没报错。
chainloader (hd-1,1)/EFI/Boot/BOOTX64.efi 和 chainloader (hd-1) 的结果是一样的。
回复

使用道具 举报

6#
发表于 2022-10-4 18:43:44 | 只看该作者
我也想知道,看看牛人的回复啊
回复

使用道具 举报

7#
发表于 2022-10-4 19:07:35 来自手机 | 只看该作者
chainloader (hd-1,0)/EFI/Boot/BOOTX64.efi     试一试

点评

试过了,测试结果和上面的图片是一样的  详情 回复 发表于 2022-10-4 19:22
回复

使用道具 举报

8#
 楼主| 发表于 2022-10-4 19:22:54 | 只看该作者
2011yaya2007777 发表于 2022-10-4 19:07
chainloader (hd-1,0)/EFI/Boot/BOOTX64.efi     试一试

试过了,测试结果和上面的图片是一样的
回复

使用道具 举报

9#
发表于 2022-10-4 20:37:58 | 只看该作者
多谢分享!
回复

使用道具 举报

10#
发表于 2022-10-4 21:41:30 | 只看该作者
本帖最后由 2010XwX 于 2022-10-4 21:57 编辑

我的测试是可以启动的。ventoy.vhd 放在任何可见分区的 PE 文件夹里。
启动 U盘是 无忧论坛 chiannet 的《 USBOS 计算机集成维护工具》 的三分区模式,本人在其基础上进行了修改融合处理。
图1:grub4dos-for_UEFI-2022-09-15 UEFI 启动界面
图2:选择菜单【04】启动 Ventoy_vhd 虚拟硬盘映像 /PE/,ventoy 1.0.80 启动界面。【05】可以直接启动标准 ventoy U盘。

G4E0915.jpg (190.86 KB, 下载次数: 109)

G4E0915.jpg

G4E0915_vtoy.jpg (135.89 KB, 下载次数: 116)

G4E0915_vtoy.jpg
回复

使用道具 举报

11#
发表于 2022-10-5 09:39:01 | 只看该作者
vbox可以启动?

以前做的 vhd 大小,0x20001 ,楼主 0x20008


回复

使用道具 举报

12#
发表于 2022-10-5 09:46:31 | 只看该作者
boot不成功 拦截住了?

boot不成功,显示 commandline 的信息
回复

使用道具 举报

13#
发表于 2022-10-5 09:47:51 | 只看该作者
建议楼主   偿试  固定vhd,mbr式安装ventoy
回复

使用道具 举报

14#
发表于 2023-11-28 22:18:56 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-4-25 02:32

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表