2013kyj 发表于 2023-9-17 08:05:05

将分区格式化为exfat格式后, 0.46a版本的g4d无法引导

本帖最后由 2013kyj 于 2023-9-17 08:15 编辑

我下载使用的g4d版本0.46a链接如下:
http://grub4dos.chenall.net/downloads/grub4dos-0.4.6a-2023-08-18/

我操作的步骤和遇到的情况如下:

我将下面链接中的PE, 先使用ultraiso软件写入优盘,使用的参数是: U+V2 和 高端隐藏
http://bbs.wuyou.net/forum.php?mod=viewthread&tid=437157

然后用 GRLDR内置菜单编辑器V5.0.2软件 修改 0.46a版本的 grldr , 修改的内置菜单如下
default 0
timeout 0
debug off

title PE
find --set-root /BOOTMGR
chainloader /BOOTMGR

然后用diskgenius, 把上面修改好的 grldr 拷到了 PE分区的根目录下

接着用bootice, 把0.46a版本的 grldr.mbr 恢复到优盘的 MBR

然后在我的两台电脑上测试优盘的引导情况, 此时, BIOS和UEFI双启一切正常, 但是有个问题, 就是优盘的UEFI引导项有两个, 这应该是因为ultraiso写入优盘后, PE分区是FAT16格式的, 而数据区是FAT32格式的, 所以, 我就用系统自带的右键格式化 将数据区格式化为exFat格式, 然后重新测试优盘引导, 然而此时出了新情况, g4d无法BIOS引导了, 报错如下图所示(请右击图片在新标签页中打开看高清大图)
https://i.ibb.co/cNFQQnk/5.png

为了验证是不是因为分区格式变化而导致的问题, 我又重新将数据分区格式化为了Fat32, 再次测试, 又恢复了正常的BIOS引导, 由此可见exfat分区格式的确导致了问题的产生, 请求G4D元老和路过的大佬给支招一下, 非常感谢

下面分别是正常和失败时优盘分区表详细信息, 对比后发现:仅有一个字母的变化, 这也正好验证了分区格式的变化: 0C是FAT32而07是exFat
-------------------------------------------------------------------------------------------正常引导时的分区表详细信息如下:
磁盘:1
磁盘信息 磁盘号   大小(字节)         柱面数 磁头数 扇数 扇区 媒体   签名 总线
            1    30943995904         3762    255   63512   11 000A0D747 MBR R
字符说明 激活 __本分区起始__ 分区 __本分区结束__ _______本分区______ ______本分区_______
激活为0x80    磁头_扇区_柱面 类型 磁头_扇区_柱面 _____起始扇区号____ _____扇区总数______
主分区1: 0x00 0x04 0x05 0x00 0x0C 0xFE 0xFF 0xFF 0x00 0x01 0x00 0x00 0x00 0x2D 0x8E 0x03
主分区2: 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
主分区3: 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
主分区4: 0x80 0x03 0x03 0x81 0x1E 0xFE 0xFF 0xFF 0x00 0x2E 0x8E 0x03 0xF4 0x05 0x0C 0x00
标志   : 0x55 0xAA
全部分区: 1   -2-3=4
分区类型 激活(1) 起始(字节)   长度(字节)    隐藏扇区   结尾(字节) 物理# 盘符
   10x0C   0         131072    30540431360         256    30540562432    1G:
    -20x00   0            0            0         0            0    2   
    -30x00   0            0            0         0            0    3   
   00x1E   1    30540562432      403433472    59649536    30943995904    4   

-------------------------------------------------------------------------------------------引导失败时的分区表详细信息如下:
磁盘:1
磁盘信息 磁盘号   大小(字节)         柱面数 磁头数 扇数 扇区 媒体   签名 总线
            1    30943995904         3762    255   63512   11 000A0D747 MBR R
字符说明 激活 __本分区起始__ 分区 __本分区结束__ _______本分区______ ______本分区_______
激活为0x80    磁头_扇区_柱面 类型 磁头_扇区_柱面 _____起始扇区号____ _____扇区总数______
主分区1: 0x00 0x04 0x05 0x00 0x07 0xFE 0xFF 0xFF 0x00 0x01 0x00 0x00 0x00 0x2D 0x8E 0x03
主分区2: 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
主分区3: 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
主分区4: 0x80 0x03 0x03 0x81 0x1E 0xFE 0xFF 0xFF 0x00 0x2E 0x8E 0x03 0xF4 0x05 0x0C 0x00
标志   : 0x55 0xAA
全部分区: 1   -2-3=4
分区类型 激活(1) 起始(字节)   长度(字节)    隐藏扇区   结尾(字节) 物理# 盘符
   10x07   0         131072    30540431360         256    30540562432    1G:
    -20x00   0            0            0         0            0    2   
    -30x00   0            0            0         0            0    3   
   00x1E   1    30540562432      403433472    59649536    30943995904    4   

2011yaya2007777 发表于 2023-9-17 09:06:07

在exfat分区放一个grldr文件

2011yaya2007777 发表于 2023-9-17 10:44:45

本帖最后由 2011yaya2007777 于 2023-9-17 10:46 编辑

1.把最新版本的grldr.mbr放在boorice文件夹里再安装。否则不是最新版本。2.grldr不要放在隐藏分区。

2013kyj 发表于 2023-9-17 11:01:42

2011yaya2007777 发表于 2023-9-17 09:06
在exfat分区放一个grldr文件
多谢大佬指导, 还真解决了!

只能用这个办法吗?
我使用微PE的时候, 用两分区高端隐藏的方式, 默认数据区就是exfat格式的, BIOS也是能正常引导的

2013kyj 发表于 2023-9-17 11:05:00

2011yaya2007777 发表于 2023-9-17 10:44
1.把最新版本的grldr.mbr放在boorice文件夹里再安装。否则不是最新版本。2.grldr不要放在隐藏分区。

1.我是通过恢复MBR按钮, 手动去选择grldr.mbr, 恢复的16个扇区, 没有用BOOTICE自带的, 自带的版本好像是旧的

2.grldr没有放在隐藏分区,

2013kyj 发表于 2023-9-17 11:07:44

2011yaya2007777 发表于 2023-9-17 10:44
1.把最新版本的grldr.mbr放在boorice文件夹里再安装。否则不是最新版本。2.grldr不要放在隐藏分区。

我的问题很怪, 数据分区用fat32, 双启一切正常, 用exfat就歇菜了

2013kyj 发表于 2023-9-17 11:13:24

2011yaya2007777 发表于 2023-9-17 09:06
在exfat分区放一个grldr文件

为什么在exfat分区放grldr文件问题就解决了呢?能解释一下吗?
我的理解是, MBR的引导搜索到了exfat分区的grldr, 但是没有搜索到PE分区下的grldr
MBR的引导程序为什么搜索不到PE分区下的grldr了呢?
这是g4d的bug吗?

szwp 发表于 2023-9-17 11:34:15

图不全,菜单删了,打find

2013kyj 发表于 2023-9-17 11:46:32

szwp 发表于 2023-9-17 11:34
图不全,菜单删了,打find
1.请右击图片在新标签页中打开看高清大图

2. 内置引导菜单代码, 里面有用find
default 0
timeout 0
debug off

title PE
find --set-root /BOOTMGR
chainloader /BOOTMGR

2011yaya2007777 发表于 2023-9-17 12:26:51

我不清楚你的高端隐藏分区。反正是grldr.mbr不搜索隐藏分区。如果使用UD隐藏分区,那要使用他的专用格式化工具,且不能在mbr分区安装grldr.mbr。

szwp 发表于 2023-9-17 12:40:02

2013kyj 发表于 2023-9-17 11:46
1.请右击图片在新标签页中打开看高清大图

2. 内置引导菜单代码, 里面有用find


不要菜单,菜单删了,各区都放grldr,进g4d命令行find它

2013kyj 发表于 2023-9-17 12:49:53

2011yaya2007777 发表于 2023-9-17 12:26
我不清楚你的高端隐藏分区。反正是grldr.mbr不搜索隐藏分区。如果使用UD隐藏分区,那要使用他的专用格式化 ...
我的高端隐藏分区就是用的ultraiso写入时的 高端隐藏 选项

我的问题没有特别复杂, 就是数据分区用fat32正常, 用exfat就不正常, 已经在github上提交反馈了

2013kyj 发表于 2023-9-17 18:40:38

2011yaya2007777 发表于 2023-9-17 12:26
我不清楚你的高端隐藏分区。反正是grldr.mbr不搜索隐藏分区。如果使用UD隐藏分区,那要使用他的专用格式化 ...

最新发现, 用微PE的两分区方案, 数据区任意格式为FAT32, exFat, NTFS, 双启都能完美启动, 而且它的PE分区是隐藏的, 如下图所示, 我用BOOTICE查看优盘的MBR, 显示的是0.4.5c版本
https://i.ibb.co/Cm3GTyY/aa.png

2013kyj 发表于 2023-9-17 18:54:21

2011yaya2007777 发表于 2023-9-17 12:26
我不清楚你的高端隐藏分区。反正是grldr.mbr不搜索隐藏分区。如果使用UD隐藏分区,那要使用他的专用格式化 ...

我把微PE的MBR备份后, 恢复到BIOS引导失败的优盘上, 然后不管数据分区是什么类型, 也都可以可以找到PE盘的grldr引导文件了, 看来是新版g4d的BUG了

2011yaya2007777 发表于 2023-9-21 15:50:57

本帖最后由 2011yaya2007777 于 2023-9-21 17:22 编辑

我把微PE的MBR备份后, 恢复到BIOS引导失败的优盘上, 然后不管数据分区是什么类型, 也都可以可以找到PE盘的grldr引导文件了, 看来是新版g4d的BUG了
好久不看这些代码了,生疏了。这是0.4.6a诞生时的bug。因为以前绝大部分grldr是放在第一分区。或者U盘不怎么使用exfat或者ntfs分区,即便使用,也不把grldr放在第二及以后的这些分区。所有没有发现这个问题。已经修正。

2013kyj 发表于 2023-9-21 16:10:25

2011yaya2007777 发表于 2023-9-21 15:50
好久不看这些代码了,生疏了。这是0.4.6a诞生时的bug。因为以前绝大部分grldr是放在第一分区。或者U盘不 ...

多谢大佬更新, 还没有测试
问一下, 这个文件是grldr.mbr吗?必须要同版本的grldr和grldr.mbr配合使用吗?

2011yaya2007777 发表于 2023-9-21 16:31:42

本帖最后由 2011yaya2007777 于 2023-9-21 17:21 编辑

对不起,应当是发grldr.mbr。不需要grldr配合。

2013kyj 发表于 2023-9-21 18:00:34

本帖最后由 2013kyj 于 2023-9-21 18:02 编辑

2011yaya2007777 发表于 2023-9-21 16:31
对不起,应当是发grldr.mbr。不需要grldr配合。
不需要grldr配合
是说: 新版本的grldr.mbr + 老版本0.4.5a或b的grldr, 也行是吗?

2011yaya2007777 发表于 2023-9-21 18:12:18

grldr.mbr的作用是寻找grldr,再移交控制权。

2013kyj 发表于 2023-9-21 19:47:57

本帖最后由 2013kyj 于 2023-9-21 19:49 编辑

2011yaya2007777 发表于 2023-9-21 18:12
grldr.mbr的作用是寻找grldr,再移交控制权。
多谢大佬点拨,

还有点疑惑, 微PE的最新版使用的G4D引导我看其版本日期是2010年3月份的, 最新版的G4D引导在兼容性方面尤其是在新硬件的支持上, 肯定会比这个老版好吗?
我说的似乎有点矛盾, 因为新硬件都支持UEFI引导了, 对于新机用UEFI引导就不用G4D了
我上面遇到的PE优盘这些麻烦, 其实就是因为我既有老电脑, 也有新电脑的原因, 想让优盘同时支持双启
页: [1]
查看完整版本: 将分区格式化为exfat格式后, 0.46a版本的g4d无法引导