无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
楼主: 2011yaya2007777
打印 上一主题 下一主题

[原创] GRUB4DOS for UEFI

    [复制链接]
541#
 楼主| 发表于 2022-3-23 21:21:29 来自手机 | 显示全部楼层
是比较诡异,我觉得可能是主板UEFI固件的问题。可能是g4e没有适应这个固件。
回复

使用道具 举报

542#
 楼主| 发表于 2022-3-23 21:33:42 来自手机 | 显示全部楼层
efidisk-init是我在重要的指令中间插入的标记。现在卡在了收集分区信息功能上。明天继续测试。
回复

使用道具 举报

543#
 楼主| 发表于 2022-3-24 08:29:16 | 显示全部楼层
请测试

BOOTX64-cs3.rar

141.22 KB, 下载次数: 4, 下载积分: 无忧币 -2

回复

使用道具 举报

544#
 楼主| 发表于 2022-3-24 09:55:26 | 显示全部楼层
本帖最后由 2011yaya2007777 于 2022-3-24 10:39 编辑

图不清楚

BOOTX64-cs4.rar

141.36 KB, 下载次数: 5, 下载积分: 无忧币 -2

回复

使用道具 举报

545#
 楼主| 发表于 2022-3-24 10:59:32 | 显示全部楼层
2315# 很清楚,谢谢!
麻烦再测试一下 2314# 的 BOOTX64-cs4.rar,增加了2个断点。
回复

使用道具 举报

546#
 楼主| 发表于 2022-3-24 11:31:32 | 显示全部楼层
继续测试。

BOOTX64-cs5.rar

142 KB, 下载次数: 3, 下载积分: 无忧币 -2

点评

最后两排是 ls_func-0,(hd1,2)/efi/boot/bootx64.efi ls_func-3, 这个(hd1,2)就是ext4分区  详情 回复 发表于 2022-3-24 11:43
回复

使用道具 举报

547#
 楼主| 发表于 2022-3-24 11:59:21 来自手机 | 显示全部楼层
看来与ext4有关。
回复

使用道具 举报

548#
 楼主| 发表于 2022-3-24 18:02:21 | 显示全部楼层
看看是否可以了。

BOOTX64-cs6.rar

142.03 KB, 下载次数: 2, 下载积分: 无忧币 -2

点评

efidisk_init-10,0,81, 之后卡住了  详情 回复 发表于 2022-3-24 18:57
回复

使用道具 举报

549#
 楼主| 发表于 2022-3-24 21:24:24 | 显示全部楼层
如果这次启动成功,则进入命令行,执行:
vol
ls (ext4分区)/
看看功能是否正常,是否死机。

BOOTX64-cs7.rar

142.03 KB, 下载次数: 2, 下载积分: 无忧币 -2

点评

大佬,reboot命令有问题,不能真正的完成重启复位。g4efi 这个reboot之后,进入bios会发现内存容量变成零,去看me固件版本也消失了。  详情 回复 发表于 2022-3-25 00:44
我下载了最新的grub4efi源码,改了两个文件,把ext4宏定义和相关函数去掉,编译好了之后,跑的非常完美。  详情 回复 发表于 2022-3-25 00:00
卡在booting find 界面了. 我用winhex把timeout改成9,进入了命令模式。 执行ls (hd0,2)/ 成功死掉 ls_func-0,(hd0,2)/, ls_func-3,  详情 回复 发表于 2022-3-24 22:04
回复

使用道具 举报

550#
 楼主| 发表于 2022-3-25 08:32:52 | 显示全部楼层
本帖最后由 2011yaya2007777 于 2022-3-25 08:35 编辑

reboot命令,以前使用 UEFI 固件提供的 GRUB_EFI_RESET_WARM(热复位)。
现在使用 UEFI 固件提供的 GRUB_EFI_RESET_COLD(冷复位)。试试看,有何区别。

现在搞不懂为什么启动实机失败,而虚拟机正常!
含有ext4分区的这个特定机械硬盘,在其他电脑上,可否正常启动?其他电脑上含有ext4分区的机械硬盘(不是现在测试的这个特定硬盘),可否正常启动?
其他含有ext4分区的机械硬盘,在这台电脑上,可否正常启动?

BOOTX64-reboor.rar

140.68 KB, 下载次数: 2, 下载积分: 无忧币 -2

点评

大佬我找到了一种解决问题的新思路了,clover包含了一个从bios伪装成uefi的玩意。我把电脑的传统引导打开,然后利用grub4dos加载clover镜像进入冒牌uefi环境,然后去加载grub4efi,那个伪造的uefi坏境居然也会因为gr  详情 回复 发表于 2022-3-25 16:55
那就是我的主板冷复位功能有问题了,不管是grub2efi 还是efishell 或是bios界面 我按键盘三个按键重启也是这个毛病! 至于ext4的事情,我已经拿优盘测试过了。 把硬盘都禁用,然后优盘弄成gpt分区表,分区就两个  详情 回复 发表于 2022-3-25 11:50
回复

使用道具 举报

551#
 楼主| 发表于 2022-3-25 16:36:51 | 显示全部楼层
我的U盘分了4个区。包含fat16,ext4,ntfs。
无论在虚拟机启动,还是在实机启动,都很正常。
你的故障现象,在我这里不能重现。因此研究告一段落。

点评

前面我也反馈了,虚拟机可以启动G4E,实体机不行,我的电脑也有个ext4分区,其实我也是感觉g4d/g4e的ext4驱动代码不够健壮,这是实际碰到的启动问题的感觉。  详情 回复 发表于 2022-3-25 17:10
回复

使用道具 举报

552#
 楼主| 发表于 2022-3-25 17:58:07 来自手机 | 显示全部楼层
主要是我这里不能重现问题,我又不想麻烦别人不停地,枯燥无味地去测试。

点评

上面510819776测试了BOOTX64-cs7.rar啊。 我的ext4分区是用diskgenius4.9.5格式化出来的。你看下你那边能否重现。 你改进下,我可以帮忙测试。  详情 回复 发表于 2022-3-25 21:09
回复

使用道具 举报

553#
 楼主| 发表于 2022-3-25 21:35:49 来自手机 | 显示全部楼层
我用diskgenius4.9.5在U盘分了一个ext4分区,实机启动正常。
回复

使用道具 举报

554#
 楼主| 发表于 2022-3-25 21:41:08 来自手机 | 显示全部楼层
上面510819776测试了BOOTX64-cs7.rar啊。       没有明确告知测试结果。是否与热重启不同,既有关内存是否改善。

点评

cs7卡booting find 我改timeout 9后 用ls (hd0,2)直接挂掉 ls-func-0 ls-func-3 就显示两排 那个改重启的版本 直接卡死 无任何提示 我自己把热启动改成cold后,解决了重启问题  详情 回复 发表于 2022-3-25 22:16
回复

使用道具 举报

555#
 楼主| 发表于 2022-3-25 21:44:33 来自手机 | 显示全部楼层
好吧,我抽时间在ext模块添加一些调试信息,然后帮忙看看。

点评

我的真机自己开了ext2fs调试了,用的是2022年0723版本,更高版本会因为ext4问题卡booting界面 卡find 命令 输入ls (hd0,2)/ inode 2 dirname=/ ipg=8192,dpb=64 group_id=0 group_desc=1 desc=0 fsblock 1 buf  详情 回复 发表于 2022-3-26 01:14
回复

使用道具 举报

556#
 楼主| 发表于 2022-3-26 07:11:23 | 显示全部楼层
g4efi  这个reboot之后,进入bios会发现内存容量变成零,去看me固件版本也消失了。

热重启改为冷重启后,内存容量为非零,去看me固件版本仍然存在?即解决了问题?

请你把测试ext4的分区表发过来。

点评

这个应该是我的主板热复位功能有问题,键盘ctrl alt del 重启也会出现掉me固件,内存识别为零。 这个bug并不影响ext4的测试的结果。  详情 回复 发表于 2022-3-26 10:26
大佬,ext4的分区表怎么获取呀?我只会抓gpt分区表  详情 回复 发表于 2022-3-26 10:23
回复

使用道具 举报

557#
 楼主| 发表于 2022-3-26 10:02:09 | 显示全部楼层
请测试。

BOOTX64-测试ext4-0.rar

141.08 KB, 下载次数: 15, 下载积分: 无忧币 -2

点评

BOOTX64-测试ext4-0.rar,我用这个版本实体机测试,可以出菜单了,启动PE没有问题。牛逼啊!倒底是什么原因导致的?是编译环境,还是代码本身有问题?  详情 回复 发表于 2022-3-26 11:47
大佬厉害了,这个ext4版本彻底解决了卡死故障了。ls (hd0,2)/ 功能终于正常了。find 命令也不会卡死了,reboot命令也没问题了。  详情 回复 发表于 2022-3-26 10:40
回复

使用道具 举报

558#
 楼主| 发表于 2022-3-26 10:38:57 来自手机 | 显示全部楼层
不管ext4的问题。我只是问,g4e由热重启改为冷重启,掉不掉me固件,内存是否仍然为零。
回复

使用道具 举报

559#
 楼主| 发表于 2022-3-26 10:48:48 来自手机 | 显示全部楼层
嗷,明白了。一般情况,电脑冷重启的实现,只能是先关机,再开机。而UEFI固件居然可以这样实现冷重启。
回复

使用道具 举报

560#
 楼主| 发表于 2022-3-26 11:02:00 来自手机 | 显示全部楼层
是我说错了。哪有ext4分区表,是ext4的bpb表 ,或者说是参数表。现在不需要了。
回复

使用道具 举报

561#
 楼主| 发表于 2022-3-26 12:12:54 来自手机 | 显示全部楼层
是代码问题。有一个读函数,它定义的一个虚参数(缓存),类型是 int,然而实体机测试时,这个缓存地址超过了4字节。见卡住时的打印数据,好像是3227…吧。虚拟机测试,缓存地址没有超过4字节(好像是10…)。这就解释了为什么虚拟机测试正常,而实体机测试失败。
回复

使用道具 举报

562#
 楼主| 发表于 2022-3-26 12:43:07 来自手机 | 显示全部楼层
确实应当感谢510819776,不遗余力地测试。
回复

使用道具 举报

563#
 楼主| 发表于 2022-3-26 13:51:33 来自手机 | 显示全部楼层
修改了,很快发布。
回复

使用道具 举报

564#
 楼主| 发表于 2022-3-26 19:15:14 | 显示全部楼层
新版本已经上传到官网。
回复

使用道具 举报

565#
 楼主| 发表于 2022-3-27 10:14:58 | 显示全部楼层
我感觉是g4e的问题,不是run的问题。

分析得非常正确。新版光盘启动,引导扇区尺寸等于1680时,我开放了“安装虚拟分区”,画蛇添足,惹了祸。

更新版本已经上传官网。
回复

使用道具 举报

566#
 楼主| 发表于 2022-3-27 13:35:45 | 显示全部楼层
本帖最后由 2011yaya2007777 于 2022-3-27 13:41 编辑

我使用 QEMU 虚拟机测试,在虚拟机的cdrom中挂载一个光盘PE2.ISO,在虚拟机的hdd中挂载一个硬盘HD.IMG,启动时狂按 ESC 键,选择从硬盘启动。

启动后,从硬盘启动PE1.ISO,可以正常启动。
然而从硬盘启动WePE64_V2.2.iso,出现错误提示:0xc000000f
回复

使用道具 举报

567#
 楼主| 发表于 2022-3-27 15:46:03 来自手机 | 显示全部楼层
可惜vmware不能加载img格式的硬盘镜像,懒得转换。
回复

使用道具 举报

568#
 楼主| 发表于 2022-3-28 10:14:43 | 显示全部楼层
@liuzhaoyzz
帮忙测试一下双光盘启动。

BOOTX64.rar

140.49 KB, 下载次数: 44, 下载积分: 无忧币 -2

回复

使用道具 举报

569#
 楼主| 发表于 2022-3-30 19:51:31 来自手机 | 显示全部楼层
是的,就支持这3种。可以在无忧搜一搜。我就是在无忧下载的。现在手机回复,不方便上传,文件在电脑。
回复

使用道具 举报

570#
 楼主| 发表于 2022-4-25 17:08:54 | 显示全部楼层
在菜单首位加一条
debug 3
试试,看有什么反馈
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-5-16 09:51

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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