无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 622|回复: 19
打印 上一主题 下一主题

[求助] 关于新版本中 configfile (md)4+8 问题【已解决】

[复制链接]
跳转到指定楼层
1#
发表于 前天 10:59 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 车丁 于 2025-3-14 11:49 编辑

在U盘启动中grldr,原使用的是0.4.6a-2020-02-29,加载:command /boot/boot/F6IMG /boot/SRS
及configfile (md)4+8。是返回原菜单界面。

前段时间换了0.4.6a-2024-02-26,加载:command /boot/boot/F6IMG /boot/SRS 及 configfile (md)4+8。直接进入命令行状态,这是什么问题?
后来尝试了2022年、2023年几个版本都是无法返回原菜单而直接进入命令行。只有原来2020年的版本能返回原菜单。
——————————————————————————————————————————————————————————————————————

关于新版 configfile (md)4+8 不能返回原菜单问题搞清楚了,是本人的的问题。
我习惯把menu.lst放在boot目录,但内置的菜单没有这个路径,我就用GRLDR_Edit_v5.0.3.exe进行编辑,但这个软件自动把内置菜单进行压缩了,我没注意,还是用configfile (md)4+8,导致无法识别。现我改用configfile (md)0x880+0x200 后,已经能够返回原菜单了。
只是要加载SRS目录内的驱动,只能使用grub4dos-0.4.6a-2023-03-29或之前的版本。后面的版本无法加载该目录内的驱动。

2#
发表于 前天 11:23 | 只看该作者
我刚试了 GRUB4DOS 0.4.6a 2024-02-26
configfile (md)4+8 是返回原菜单

点评

是否旧版与新版的引导文件不同?  详情 回复 发表于 前天 11:45
回复

使用道具 举报

3#
发表于 前天 11:23 | 只看该作者
感谢分享
回复

使用道具 举报

4#
 楼主| 发表于 前天 11:29 | 只看该作者

回复

使用道具 举报

5#
 楼主| 发表于 前天 11:31 | 只看该作者
我用的是联想电脑启天M4500
回复

使用道具 举报

6#
 楼主| 发表于 前天 11:45 | 只看该作者
hilsonma 发表于 2025-3-12 11:23
我刚试了 GRUB4DOS 0.4.6a 2024-02-26
configfile (md)4+8 是返回原菜单

是否旧版与新版的引导文件不同?
回复

使用道具 举报

7#
发表于 前天 12:14 | 只看该作者
本帖最后由 2011yaya2007777 于 2025-3-12 12:16 编辑

应当是这样子吧
command /boot/boot/F6IMG
command /boot/SRS
configfile (md)4+8
如果还是不行,估计是内存0x800位置被污染了。
试一试
configfile /boot/grub/menu.lst

点评

试了不行,如果按configfile /boot/grub/menu.lst,等于没有加载SRS。 我只是很奇怪,旧版的没有问题,新版的反而不行。  详情 回复 发表于 前天 13:32
回复

使用道具 举报

8#
 楼主| 发表于 前天 13:32 | 只看该作者
本帖最后由 车丁 于 2025-3-12 14:36 编辑
2011yaya2007777 发表于 2025-3-12 12:14
应当是这样子吧
command /boot/boot/F6IMG
command /boot/SRS

试了不行,如果按configfile /boot/grub/menu.lst,等于没有加载SRS。
我只是很奇怪,旧版的没有问题,新版的反而不行。
分别用旧版和新版试了configfile /boot/grub/menu.lst,发现旧版能加载SRS,而新版的不能加载SRS。
回复

使用道具 举报

9#
发表于 前天 17:17 | 只看该作者
如果你有时间的话,定位一下是哪个具体的版本开始出现的问题。

点评

这两天重装系统,又调整U盘里的目录,不知什么原因,测试所有版本又可以返回原菜单了。 不过只有grub4dos-0.4.6a-2023-03-29版本及之前的可以正确加载SRS目录内的驱动,grub4dos-0.4.6a-2023-06-09版本及之后的无法  详情 回复 发表于 5 小时前
我使用的是SRSF6,记录能正常使用的最后版本是20230504(测试版),后续1-2个版本测试过不行就保留了这版,再后来手头没有传统BIOS机了,也就再没测试过  详情 回复 发表于 前天 17:53
回复

使用道具 举报

10#
发表于 前天 17:53 | 只看该作者
2011yaya2007777 发表于 2025-3-12 17:17
如果你有时间的话,定位一下是哪个具体的版本开始出现的问题。

我使用的是SRSF6,记录能正常使用的最后版本是20230504(测试版),后续1-2个版本测试过不行就保留了这版,再后来手头没有传统BIOS机了,也就再没测试过
回复

使用道具 举报

11#
发表于 前天 20:26 | 只看该作者
感谢分享!
回复

使用道具 举报

12#
发表于 昨天 08:42 | 只看该作者
我使用的是SRSF6,记录能正常使用的最后版本是20230504(测试版)

我看了一下,可能是由于启用高版本gcc11编译引起的,暂时无解。

点评

目前github上发布的是用gcc-4.8编译的。  详情 回复 发表于 昨天 10:23
目前github上发布的是用gcc-4.8发布的。  详情 回复 发表于 昨天 10:23
回复

使用道具 举报

13#
发表于 昨天 10:23 | 只看该作者
2011yaya2007777 发表于 2025-3-13 08:42
我看了一下,可能是由于启用高版本gcc11编译引起的,暂时无解。

目前github上发布的是用gcc-4.8编译的。
回复

使用道具 举报

14#
发表于 昨天 11:13 | 只看该作者
目前github上发布的是用gcc-4.8编译的。

grub4dos-0.4.6a-2023-06-09的补丁,引起编译时ipxegrldr消失。
可能当时是为了使用高版本gcc编译吧。
我不擅长编译。如果在官网测试的话,不停地发布无用版本,有点可笑。
请你帮忙看看如何解决。

点评

2023-03-29 到 2023-06-09 之间,除了改动github actions配置之外只有这两个commit 我看了下,这个改动对gcc  详情 回复 发表于 昨天 19:08
回复

使用道具 举报

15#
发表于 昨天 13:54 来自手机 | 只看该作者
算了,不用费事管他了。直接使用ipxe加载grldr吧。
回复

使用道具 举报

16#
发表于 昨天 19:08 | 只看该作者
2011yaya2007777 发表于 2025-3-13 11:13
grub4dos-0.4.6a-2023-06-09的补丁,引起编译时ipxegrldr消失。
可能当时是为了使用高版本gcc编译吧。
...

2023-03-29 到 2023-06-09 之间,除了改动github actions配置之外只有这两个commit
  1. https://github.com/chenall/grub4dos/commit/8c4bc2dacacf72ff86babd26d77e7b7d5faa6295
  2. support build with gcc newer than 4.8
复制代码

我看了下,这个改动对gcc<=4.8不会有影响
  1. https://github.com/chenall/grub4dos/commit/48b2bfb8ec6858aa1d19d9257f8fb4f5b7e00764
  2. 使用gcc-11高版本编译
复制代码

这里面对devread的函数进行了修改,没看懂是什么意思。
  1. #if 0   //太旧版本不再支持了  2023-05-24
  2.    if (rw_flag != 0x900ddeed && rw_flag != 0xedde0d90 && rw_flag != GRUB_LISTBLK)
  3.    {//for old devread with 32-bit byte_offset compatibility.
  4.      rw_flag = *(unsigned long*)(&write - 1);
  5.      if (rw_flag != 0x900ddeed && rw_flag != 0xedde0d90)
  6.        return !(errnum = ERR_FUNC_CALL);
  7.      buf = *(unsigned long long*)(&write - 3);
  8.      byte_len = *(unsigned long long*)(&write - 5);
  9.      byte_offset = (unsigned long)byte_offset;
  10.    }
  11. #endif
复制代码

其他改动似乎没什么影响。
回复

使用道具 举报

17#
发表于 昨天 19:24 | 只看该作者

感谢分享
回复

使用道具 举报

18#
发表于 昨天 20:15 来自手机 | 只看该作者
据chenall讲,是为了兼容老旧版本,不影响现在的版本,我觉得可以删除。ipxegrldr是由ipxe、grldr及配置菜单合成的。可以放一个新的ipxe,编译时合成一下,也是个办法。是否处理,请你定夺。
回复

使用道具 举报

19#
 楼主| 发表于 5 小时前 | 只看该作者
本帖最后由 车丁 于 2025-3-14 11:09 编辑
2011yaya2007777 发表于 2025-3-12 17:17
如果你有时间的话,定位一下是哪个具体的版本开始出现的问题。

使用configfile /boot/menu.lst 情况下,只有grub4dos-0.4.6a-2023-03-29版本及之前的可以正确加载SRS目录内的驱动,grub4dos-0.4.6a-2023-06-09版本及之后的无法加载,提示错误。

回复

使用道具 举报

20#
发表于 5 小时前 来自手机 | 只看该作者
由于改变了编译环境
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2025-3-14 16:22

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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