无忧启动论坛

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

[原创] GRUB4DOS for UEFI

    [复制链接]
1711#
发表于 2021-6-22 11:41:13 | 只看该作者
我进入grub命令行模式,输入dd,得到 Error:No such command:dd

请问,目前G4E是不是还不支持DD命令?

点评

G4E是有DD指令的。你用的是最新版本么? 如果是的话,是怎么个使用方法呢?  详情 回复 发表于 2021-6-23 17:27
回复

使用道具 举报

1712#
发表于 2021-6-23 16:22:35 | 只看该作者
本帖最后由 fmwqsn 于 2021-6-23 16:24 编辑
2011whp 发表于 2021-6-23 15:58
fmwqsn 从别的 渠道 下载文件,

g4e 网启后 (用户自设 tftp 的IP地址)

ftp确实不能用。我最开始也很没脾气。而且我网起G4E会随机卡5-20分钟不等的时间,至今没摸到规律,也不知道为啥,但是最终就能进去还能正常用。看样子你那边没有碰到。
我目前时采取的先网起IPXE,通过http挂载一个包含所需文件的iso,然后启动uefi shell。这样从uefi shell里就能看到挂载的iso,然后去用里面的东西。

不过如果你想要从G4E里使用的话,有可能会看不到。我这里就是从uefi shell里能看到光盘,但是进了G4E就看不到了。所以

点评

是 慢点,不到 1分钟吧,没你说的那么慢 主板的 是 pxe2.1  详情 回复 发表于 2021-6-23 18:08
回复

使用道具 举报

1713#
发表于 2021-6-23 17:27:50 | 只看该作者
ESD 发表于 2021-6-22 11:41
我进入grub命令行模式,输入dd,得到 Error:No such command:dd

请问,目前G4E是不是还不支持DD命令?

G4E是有DD指令的。你用的是最新版本么?
如果是的话,是怎么个使用方法呢?
回复

使用道具 举报

1714#
发表于 2021-6-23 18:08:42 | 只看该作者
fmwqsn 发表于 2021-6-23 16:22
ftp确实不能用。我最开始也很没脾气。而且我网起G4E会随机卡5-20分钟不等的时间,至今没摸到规律,也不知 ...

是 慢点,不到 1分钟吧,没你说的那么慢   

主板的 是 pxe2.1

点评

只有一分钟么,不过也够慢了。 我倒是没用qemu试过,都是在真机上试的。 真的是不同的机器能试出来完全不同的结果。 我还碰到过所有的文件操作第一次必失败,但是往后就都能成功的。 也不知道为啥。  详情 回复 发表于 2021-6-23 18:59
回复

使用道具 举报

1715#
发表于 2021-6-23 18:59:30 | 只看该作者
2011whp 发表于 2021-6-23 18:08
是 慢点,不到 1分钟吧,没你说的那么慢   

主板的 是 pxe2.1

只有一分钟么,不过也够慢了。
我倒是没用qemu试过,都是在真机上试的。
真的是不同的机器能试出来完全不同的结果。
我还碰到过所有的文件操作第一次必失败,但是往后就都能成功的。
也不知道为啥。

点评

网启的,什么也没有 估计,命令,先在内部找, 找不到的话 要找磁盘上 命令 就 死机了(容错性 不强的命令,估计也会 死机)  详情 回复 发表于 2021-6-23 19:07
回复

使用道具 举报

1716#
发表于 2021-6-23 19:07:21 | 只看该作者
本帖最后由 2011whp 于 2021-6-23 19:12 编辑
fmwqsn 发表于 2021-6-23 18:59
只有一分钟么,不过也够慢了。
我倒是没用qemu试过,都是在真机上试的。
真的是不同的机器能试出来完全 ...

网启的,什么也没有

估计,命令,先在内部找,
找不到的话  要找磁盘上 命令
  就   死机了(容错性 不强的命令,估计也会 死机)
pxe help  现在也没有反应,  g4e 割掉 这块了?


实机 启动慢,
qemu 是本身慢,检测完 启动g4e  秒启
回复

使用道具 举报

1717#
发表于 2021-6-23 21:51:49 | 只看该作者
-f 嵌入字库 目前只能是嵌入16大小的字体吗?

我下载http://bbs.wuyou.net/forum.php?m ... &extra=page%3D1
这里的字体嵌入进去不显示字体,menu.lst中申明DotSize=24也不管用。

如果默认用你给出的unifont.hex.gz嵌入进去则没有任何问题。
回复

使用道具 举报

1718#
发表于 2021-6-24 15:16:57 | 只看该作者
title  启动 网络上的 镜像

chainloader /ipxe.efi
回复

使用道具 举报

1719#
发表于 2021-6-25 08:12:37 | 只看该作者
谢谢分享
回复

使用道具 举报

1720#
发表于 2021-6-25 17:13:51 | 只看该作者
本帖最后由 liuzhaoyzz 于 2022-3-27 12:49 编辑

关于存在光驱情况下g4e整体仿真iso启动的问题
在vmware虚拟机里面进行g4e启动测试,grub4dos-for_UEFI-2021-06-19版本,感觉以前存在光驱的情况下,和仿真出来的光驱优先级问题,又出现了。
1102楼、1107楼、1108楼wuwuzz在2021-1-18 12:36:05反馈过问题(之前有版本已经解决了这样子的问题了):
http://bbs.wuyou.net/forum.php?mod=redirect&goto=findpost&ptid=422652&pid=4219935&fromuid=298214
不过没有引起大神的重视。

1、虚拟光驱里面挂载个OnePE_V19044.1023_V0529.iso,UEFI设置虚拟硬盘启动优先,虚拟硬盘主引导是g4e,菜单如下:
title /boot/imgs/SXWIN10PEX64_17763_NET20201109.iso
debug 3
find --set-root /boot/imgs/SXWIN10PEX64_17763_NET20201109.iso
map --mem /boot/imgs/SXWIN10PEX64_17763_NET20201109.iso (0xff)
chainloader (0xff)
pause
启动的时候看到了map SXWIN10PEX64_17763_NET20201109.iso的数值在不断地变化,然而却不是从该ISO启动,却从虚拟光驱里面的OnePE_V19044.1023_V0529.iso这个iso启动了。

2、虚拟光驱里面挂载个WePE_64_V2.1.iso,UEFI设置虚拟硬盘启动优先,虚拟硬盘主引导是g4e,菜单同上。
启动的时候看到了map SXWIN10PEX64_17763_NET20201109.iso的
数值在不断地变化,然而却不是从该ISO启动,似乎是从虚拟光驱里面的WePE_64_V2.1.iso这个iso启动,而且启动失败,提示
Press any key to continue...然后直接返回主菜单。



但是这个WePE_64_V2.1.iso,如果虚拟光驱里面不挂载任何iso,用下面的菜单启动是没有问题的:
title /boot/imgs/WePE_64_V2.1.iso
find --set-root /boot/imgs/WePE_64_V2.1.iso
map --mem  --top /boot/imgs/WePE_64_V2.1.iso (0xff)
chainloader (0xff)

我的感觉是,这个问题曾经修正过,后来搞测试的时候,版本多了,搞乱了,又出现了这个问题。这个问题可以稳定重现。

友情两位大神有空的时候再看看。

点评

看我1720楼的测试:映射 ISO 之类后,chainloader (hd0) (hd0为实际硬盘)的结果,就是引导映射出的 ISO 里面的相关引导文件,而不是指定硬盘上的。我觉得这算是一个 BUG,不过几天过去了,似乎也没人留意。  详情 回复 发表于 2021-6-26 13:16
回复

使用道具 举报

1721#
发表于 2021-6-26 13:16:41 | 只看该作者
liuzhaoyzz 发表于 2021-6-25 17:13
关于存在光驱情况下g4e整体仿真iso启动的问题
在vmware虚拟机里面进行g4e启动测试,grub4dos-for_UEFI-202 ...

看我1720楼的测试:映射 ISO 之类后,chainloader (hd0) (hd0为实际硬盘)的结果,就是引导映射出的 ISO 里面的相关引导文件,而不是指定硬盘上的。我觉得这算是一个 BUG,不过几天过去了,似乎也没人留意。
回复

使用道具 举报

1722#
发表于 2021-6-26 14:36:26 | 只看该作者
xianglang 发表于 2021-6-26 13:16
看我1720楼的测试:映射 ISO 之类后,chainloader (hd0) (hd0为实际硬盘)的结果,就是引导映射出的 ISO ...

你这个情况,假定是单硬盘 时,chainloader提交给主板 会列出:
(因为  你的 nv存储上有三个 启动器    bios 内有通用 uefi启动器,共4个)

1. 微软uefi启动
2. 微软传统启动
3.  g4e 启动
4.  grub2启动
5.  通用UEFi启动 (提交的  不会列出)
6.  通用传统启动  (提交的  不会列出)

你这种情况,chainloader分区时,出错吗?

回复

使用道具 举报

1723#
 楼主| 发表于 2021-6-26 15:06:46 | 只看该作者
关于存在光驱情况下g4e整体仿真iso启动的问题

我使用grub4dos-for_UEFI-2021-06-19版本,QEMU测试。
挂载硬盘、光盘,从硬盘启动。
映射一个光盘,从映射光盘启动,正常。启动的绝不是预先挂载的光盘。
不过,要启动预先挂载的光盘失败!不知从何时引入的bug,待排查。
回复

使用道具 举报

1724#
 楼主| 发表于 2021-6-26 15:14:05 | 只看该作者
映射 ISO 之类后,chainloader (hd0) (hd0为实际硬盘)的结果,就是引导映射出的 ISO 里面的相关引导文件

确实是这样。map 一个虚拟光盘后,就是启动这个光盘。chainloader (cd0)也好,chainloader (hd0)也吧,
或者 chainloader ()也一样,都是启动这个光盘。一开始想使用chainloader (),但考虑到以前的使用习惯,还是建议使用chainloader (cd-1).

这个小秘密也被你发现了?

点评

原来是这样,能不能改回象G4D那样,map 了 ISO 或者 IMG 之类,也可以指定启动设备,而不是象现在这样全指定只能指向虚拟出来的设备?因为偶尔还是需要使用 F6 之类装一下驱动之类的。另外,如果 map 出来的设备不  详情 回复 发表于 2021-6-27 12:15
原来是这样,能不能改回象G4D那样,map 了 ISO 或者 IMG 之类,也可以指定启动设备,而不是象现在这样全指定只能指向虚拟出来的设备?因为偶尔还是需要使用 F6 之类装一下驱动之类的。另外,如果 map 出来的设备不  详情 回复 发表于 2021-6-27 12:14
回复

使用道具 举报

1725#
 楼主| 发表于 2021-6-26 15:40:42 | 只看该作者
他说的应该是这种情况(见下图)。20210426及以前版本的g4e可以自动连接EFI\gurb\menu.lst引导文件,新版本的g4e不能自动引导菜单,必须要手动才行,请修正

这个问题我还没有重现。
lpsyuntao 反映的问题是,从 NTFS 分区启动 /efi/boot/bootx64.efi,卡在了预置菜单界面,需手动回车,才能进入启动菜单。因为我无法使用 QEMU 从 NTFS 分区启动。

我这里发现,如果把主菜单改名,则启动到预置菜单界面卡住,按任意键进入命令行。这是因为预置菜单找不到主菜单。
如果lpsyuntao 反映的是手动进入命令行,这好理解,但是他说进入了主菜单?在不好解释。

点评

qemu用于启动PE感觉很卡,建议用vmware测试,我分享个,你看下能否用上,只有46.2MB,支持NTFS分区启动。https://liuzhaoyzz.lanzoui.com/b00nnn5uf  详情 回复 发表于 2021-6-26 16:57
回复

使用道具 举报

1726#
发表于 2021-6-26 16:57:08 来自手机 | 只看该作者
2011yaya2007777 发表于 2021-6-26 15:40
这个问题我还没有重现。
lpsyuntao 反映的问题是,从 NTFS 分区启动 /efi/boot/bootx64.efi,卡在了预置 ...

qemu用于启动PE感觉很卡,建议用vmware测试,我分享个,你看下能否用上,只有46.2MB,支持NTFS分区启动。https://liuzhaoyzz.lanzoui.com/b00nnn5uf
回复

使用道具 举报

1727#
发表于 2021-6-26 18:23:24 来自手机 | 只看该作者
本帖最后由 liuzhaoyzz 于 2021-6-27 08:27 编辑
xianglang 发表于 2021-6-26 13:16
看我1720楼的测试:映射 ISO 之类后,chainloader (hd0) (hd0为实际硬盘)的结果,就是引导映射出的 ISO ...

说实话,你在1769楼反馈的问题,我没有看懂问题倒底在哪里,从你上面的帖子来看,似乎跟我和wuwuzz说的问题类似。
等大神们有空余时间看看吧,问题是yaya那边无法重现问题,开发者难以重现问题,单从源代码入手的话,排查起来有些费事,效率可能要低点。
回复

使用道具 举报

1728#
 楼主| 发表于 2021-6-27 09:27:21 | 只看该作者
我分享个,你看下能否用上

谢谢liuzhaoyzz提供的vmware。只可惜我的系统是Windows7 32位,只能运行vmware10及以下版本。
回复

使用道具 举报

1729#
发表于 2021-6-27 12:12:02 | 只看该作者
本帖最后由 2011whp 于 2021-7-16 20:37 编辑
xianglang 发表于 2021-6-26 13:16
看我1720楼的测试:映射 ISO 之类后,chainloader (hd0) (hd0为实际硬盘)的结果,就是引导映射出的 ISO ...

title 启动第一硬盘的 bootx64.efi
!BAT
command
# 无害命令command 使菜单可选中
set @extend 0x60200 1
#  利用,定义扩展变量,清空 (md)0x301+1 扇区的内容
find /efi/boot/bootx64.efi > (md)0x301+1
set @extend 0x60000 1
#  定义扩展变量
write (md)0x300+1 hdaaaa
#  强制写入 变量名 hdaaaa , 下面 开始 逐字符循环
:forstar
if "%%hdaaaa%%a"=="a" goto :end
# 下面的 hd0 改为 hd1 即为启动 第二硬盘
if "%%hdaaaa:~0,4%%"=="(hd0" chainloader %%hdaaaa:~0,7%%/efi/boot/bootx64.efi && boot
set hdaaaa=%hdaaaa:~1%
goto :forstar
:end


附加: 内存观察

查看   0x60200  开始的 16字节
cat  --hex (md,0x60200,0x200)0x0+1,16
(详见:2015版帮助 4.1节   5.5节  6.14节  10章)

字节输入方式:
echo -e \x00\x65   管道至变量 或 内存 文件


内存是 数值时  的提取(要计算一下), 同样适用 @retval 变量 存储  的是数值时
set  /a  syz=*0x60000
内存数值引用是 32位的小端序数值
回复

使用道具 举报

1730#
发表于 2021-6-27 12:14:55 | 只看该作者
2011yaya2007777 发表于 2021-6-26 15:14
确实是这样。map 一个虚拟光盘后,就是启动这个光盘。chainloader (cd0)也好,chainloader (hd0)也吧,
...

原来是这样,能不能改回象G4D那样,map 了 ISO 或者 IMG 之类,也可以指定启动设备,而不是象现在这样全指定只能指向虚拟出来的设备?因为偶尔还是需要使用 F6 之类装一下驱动之类的。另外,如果  map 出来的设备不带引导文件,也会引导不了吧?
回复

使用道具 举报

1731#
发表于 2021-6-27 12:28:48 | 只看该作者
xianglang 发表于 2021-6-27 12:14
原来是这样,能不能改回象G4D那样,map 了 ISO 或者 IMG 之类,也可以指定启动设备,而不是象现在这样全 ...

uefi下还有可能用f6?

点评

UEFI下不能用F6吗?这倒没有试过。 我刚才又试了下,使用 G4E 作 U 盘启动我的台式机,chainloader (hd1) (hd1为本机 SSD 硬盘)仍然是没有反应,但是可以三热键重启。真是奇怪,chainloader (hd0) 之类启动本地  详情 回复 发表于 2021-6-27 12:52
回复

使用道具 举报

1732#
发表于 2021-6-27 12:52:05 | 只看该作者
wintoflash 发表于 2021-6-27 12:28
uefi下还有可能用f6?

UEFI下不能用F6吗?这倒没有试过。

我刚才又试了下,使用 G4E 作 U 盘启动我的台式机,chainloader (hd1) (hd1为本机 SSD 硬盘)仍然是没有反应,但是可以三热键重启。真是奇怪,chainloader (hd0) 之类启动本地硬盘命令,在我的台式机上就是死活不成功,难道是因为我的硬盘 UEFI 上添加了三个 UEFI 启动项?
回复

使用道具 举报

1733#
发表于 2021-6-27 14:11:18 | 只看该作者
这工具不错,收藏支持下!
回复

使用道具 举报

1734#
发表于 2021-7-8 20:51:33 | 只看该作者
可以考虑加入grub2的setpci命令吗,这个命令很实用,可以禁用笔记本独显省电,以及更改pci接口的高级操作
回复

使用道具 举报

1735#
发表于 2021-7-9 21:40:39 | 只看该作者
請問有方法不用解開ISO檔到USB中
直接引導啟動嗎?
for kasperskyRescueDisk/Dr.web LiveDisk/Lenovo Diagnostic
回复

使用道具 举报

1736#
发表于 2021-7-11 21:53:53 | 只看该作者
非常给力 支持
回复

使用道具 举报

1737#
发表于 2021-7-19 15:52:51 | 只看该作者

测试下先。
回复

使用道具 举报

1738#
发表于 2021-7-20 17:10:40 | 只看该作者
請問要如何啟動10PE.wim?
我用ntloader Chainloader都無法啟動
10PE.WIM原本放開機FAT32檔
後來發現說要在NTFS才行?
10PE.WIM 移到NTFS槽內.一樣不行

点评

g4e启动wim,需要依赖于wintoflash的ntloader模块,你在g4e帖子里面反馈,有何意义?!应该去wintoflash那个帖子去反馈。另外你的菜单没有,没法分析具体问题,g4e启动wim没问题。 菜单大概这样子: title /vhd/SX  详情 回复 发表于 2021-7-21 10:28
回复

使用道具 举报

1739#
发表于 2021-7-21 10:28:32 | 只看该作者
本帖最后由 liuzhaoyzz 于 2021-7-21 10:37 编辑
saiz 发表于 2021-7-20 17:10
請問要如何啟動10PE.wim?
我用ntloader Chainloader都無法啟動
10PE.WIM原本放開機FAT32檔

g4e启动wim,需要依赖于wintoflash的ntloader模块,你在g4e帖子里面反馈,有何意义?!g4e已经完成了他作为一个引导器该做的工作,你应该去wintoflash那个帖子去反馈。另外你的菜单没有,没法分析具体问题,g4e启动wim没问题。
菜单大概这样子:你要做的,只是修改
/pe.wim所在的目录和pe.wim的名字。
title /pe.wim
find --ignore-floppies --ignore-cd /EFI/grub/ntloader | set bd= ;; echo bd=%bd%
find --ignore-floppies --ignore-cd --set-root /pe.wim
uuid ()
chainloader %bd%/EFI/grub/ntloader initrd=/EFI/grub/initrd.lz1 uuid=%?_UUID% hires=0 file=/pe.wim
boot

用到的ntloader,initrd.lz1,你可以去wintoflash的帖子一楼下载,放到
/EFI/grub/目录里面。一楼都有详细说明,你的反馈,为何不来个截图?

ntloader/initrd.lz1要放在同一个分区,pe.wim可以放在FAT32或者NTFS分区都可以。
        

点评

十分感謝!!成功了! 我隨身碟是分ESP(FAT32)/Data(NTFS)槽 開機檔放ESP,只有PE用到的外置程式檔放Data 我原本是用範本去改,如下: uuid %@root% kernel /EFI/grub/ntloader uuid=%?_UUID% file=/ISO/10PE.wi  详情 回复 发表于 2021-7-21 13:59
十分感謝!!成功了! 我隨身碟是分ESP(FAT32)/Data(NTFS)槽 開機檔放ESP,只有PE用到的外置程式檔放Data 我原本是用範本去改,如下: uuid %@root% kernel /EFI/grub/ntloader uuid=%?_UUID% file=/ISO/10PE.wi  详情 回复 发表于 2021-7-21 13:59
回复

使用道具 举报

1740#
发表于 2021-7-21 13:43:17 | 只看该作者
我都不知道楼主在说什么,但是看起来很厉害的样子
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-11-27 12:58

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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