无忧启动论坛

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

[原创] GRUB4DOS for UEFI

    [复制链接]
601#
发表于 2020-11-29 20:09:41 来自手机 | 只看该作者
ko20010214 发表于 2020-11-29 12:06
折腾了这么久,终于能正常显示了……

1. 据说,menu.lst一定要用utf-8的格式。

但是在X86环境下为毛不能引导啊,它不是已经做到2合1了吗?难道在X86下还得把它改名为booti32.efi 放进去吗?

        如果你的固件是64位的,肯定这台电脑只能用64位的bootx64.efi,是不可能用32位的bootia32.efi的,两者只能二选一。一般的电脑UEFI都是64位的,这是常识!

点评

如果固件是64位的?这里的固件是指什么啊(请原谅我等小白)。 在固件是64位的情况下,只能用到bootx64.efi,那由这个X64.efi加载的PE或系统能安装X86的系统吗? 好像我在64位CPU的机器上是能随便选择装X86或X64的  详情 回复 发表于 2020-11-30 21:30
朱玛12345678说:“(在VM里)如果你选择了x64的系统那么在选用UEFI引导时VM就会使用64位的UEFI固件,反之则会使用32位的UEFI固件”  详情 回复 发表于 2020-11-30 21:25
因为QEMU里可以选择 X64 EFI 和 IA32 EFI 还有 BIOS 三种启动环境,所以每个我都测试了一下。  详情 回复 发表于 2020-11-29 21:15
回复

使用道具 举报

602#
发表于 2020-11-29 20:19:47 | 只看该作者
本帖最后由 2011whp 于 2020-11-29 20:36 编辑
ko20010214 发表于 2020-11-29 19:18
第二个问题算是回答了。
那么文本模式咋办?只能全英文了? G4D好像有汉化版的,能显示汉字,不知道是怎 ...

你的第一个问题:是支持启动双模式光盘  两个模式是两种引导方式,各不相干
                          g4e 是其中的 一种 efi模式(再细分还有两个子模式,32位  64位,也是各不相干)
                          你这是 递归引导  功能问题 一起静等
你的第二个问题:用户推荐  用图形模式,文本模式,只是出了问题去试(视自个的英文水平选择)。试试下面这个,完美的。
http://bbs.wuyou.net/forum.php?m ... 4156&fromuid=413782
如果用文本,没汉字 ,是你bios内没有字休(你进bios看下有中文没,虚拟机是没中文bios的)这个文本模式,是否有必要 支持 加载的字体, 静等。

点评

这个终于有 自动编号 和 选项箭头 了!  详情 回复 发表于 2020-11-29 21:13
回复

使用道具 举报

603#
发表于 2020-11-29 21:13:59 | 只看该作者
2011whp 发表于 2020-11-29 20:19
你的第一个问题:是支持启动双模式光盘  两个模式是两种引导方式,各不相干
                           ...

这个终于有 自动编号 和 选项箭头 了!
回复

使用道具 举报

604#
发表于 2020-11-29 21:15:20 | 只看该作者
本帖最后由 ko20010214 于 2020-11-29 21:17 编辑
liuzhaoyzz 发表于 2020-11-29 20:09
但是在X86环境下为毛不能引导啊,它不是已经做到2合1了吗?难道在X86下还得把它改名为booti32.efi 放进去 ...

因为QEMU里可以选择 X64 EFI 和 IA32 EFI 还有 BIOS 三种启动环境,所以每个我都测试了一下。
我现在是在X64 EFI 下 启动 G4D EFI , 可以出来 G菜单。
               在 IA32下启动 bootia32.efi, 可以进WBM菜单。
              在 BIOS下启动 Grldr(4 dos), 可以进 G(4DOS)的菜单。

回复

使用道具 举报

605#
发表于 2020-11-29 23:57:35 | 只看该作者
wuwuzz 发表于 2020-11-28 22:22
一、继上次测试map ISO问题,又测试了map img,出现同样的情形。
AMI UEFI下可以成功map img并启动,Ins ...

此问题已解决。

忽略MAP时的错误信息,找到map出来的虚拟盘hdx,y
直接chainloader上面的bootx64.efi即可启动成功。


回复

使用道具 举报

606#
 楼主| 发表于 2020-11-30 05:40:39 来自手机 | 只看该作者
本帖最后由 2011yaya2007777 于 2020-11-30 06:45 编辑

太好了。可否向以前那样,截一张图,看看。那是解决了 img 的问题,iso 还没有解决?

点评

报告G4E光盘引导故障 在619#,为了对付Insyde UEFI(HP G4本)下,直接MAP PE ISO失败的问题, 发展出以ventoy为中介,以“map ventoy img--->启动ventoy-->启动PE” 为流程的间接解决方法。此方法要求G4E、img等  详情 回复 发表于 2020-12-4 18:16
修正我在617#发言 IMG有效,ISO不一定(有的能成,有的不能)。 ISO在这个insyde UEFI下,暂时只能采用618#的方法, 先map ventoy img成功---然后借助ventoy再启动ISO, 这样ISO就可以不出错  详情 回复 发表于 2020-11-30 19:43
IMG和ISO都可以,方法是一样的:忽略出错提示,手动录入bootx64.efi路径。 [attachimg]469507[/attachimg] [attachimg]469508[/attachimg] [attachimg]469509[/attachimg] [attachimg]469510[/attachimg]  详情 回复 发表于 2020-11-30 13:20
回复

使用道具 举报

607#
发表于 2020-11-30 08:44:51 | 只看该作者
本帖最后由 lxwx 于 2020-12-1 09:19 编辑

碰到个玄学问题。。在menu.lst里编辑好我用的opensuse的启动菜单后,重启到grub4dos界面启动对应选项的时候,敲回车,就一直显示 启动 opensuse,然后就卡在那个booting opensuse刷屏的界面。还有另一种情况,就是按回车,闪了一下booting,不动了,再按下回车,又回到了菜单界面。但是无论发生这两种情况的哪一种,如果进入grub4dos命令行,把menu.lst里面的命令手敲一遍,就又能正常启动了。这应该算个程序的bug吧。
回复

使用道具 举报

608#
发表于 2020-11-30 09:55:17 | 只看该作者
再次感谢大佬的分享,要好好学习了
回复

使用道具 举报

609#
发表于 2020-11-30 13:20:35 | 只看该作者
本帖最后由 wuwuzz 于 2020-11-30 19:35 编辑
2011yaya2007777 发表于 2020-11-30 05:40
太好了。可否向以前那样,截一张图,看看。那是解决了 img 的问题,iso 还没有解决?

IMG确定有效,ISO不一定。方法是一样的:忽略出错提示,手动录入bootx64.efi路径。








ISO需指定fd上的bootx64.efi才能成功。指定光盘上的bootx64.efi进PE会出错。
(仅对测试用wepe有效,其他PE可能选定fd设备也无效  )



回复

使用道具 举报

610#
发表于 2020-11-30 13:28:08 | 只看该作者
本帖最后由 wuwuzz 于 2020-11-30 17:10 编辑

接617#内容,后备方案:如果直接MAP ISO方法行不通,只要ventoy ima能成功,

借助ventoy也可以间接启动ISO。即:g4e---ventoy---ISO.

因为ventoy在Insyde UEFI下,没有类似g4e/grub2这样的load image问题,

可以成功启动ISO。

点评

我刚才试了下,G4E 可以 map --mem /usbosv3.iso (0xff) 并 chainloader (0xff) 成功启动进入 Win10PE 桌面,但是不加 --mem 参数,则会在选择 BCD 菜单后转圈很长时间都进不了 Win10PE 桌面。 我这样的情况,不  详情 回复 发表于 2020-11-30 16:44
回复

使用道具 举报

611#
发表于 2020-11-30 16:44:47 | 只看该作者
wuwuzz 发表于 2020-11-30 13:28
后备方案:如果直接MAP ISO方法行不通,只要ventoy ima能成功,

借助ventoy也可以间接启动ISO。即:g4 ...

我刚才试了下,G4E 可以 map --mem /usbosv3.iso (0xff) 并 chainloader (0xff) 成功启动进入 Win10PE 桌面,但是不加 --mem 参数,则会在选择 BCD 菜单后转圈很长时间都进不了 Win10PE 桌面。

我这样的情况,不知道是不是和你们说的是一样的?G4E 能够引导 ISO 镜像的 WinPE,就有很大的实用性。再试下 SVBUS 看行不行?

点评

这种情况估计是 U盘 的大文件读写快,小文件(或叫 4K速度 慢)引起的, 现在U盘大部分是这样,利于宣传, 用固态级的u盘, 我估计 加不加 --mem 启动速度 差不了多少 你能试svbus 给力(测试外挂型Pe )  详情 回复 发表于 2020-11-30 17:44
不一回事。这里讲的是Insyde UEFI机下的map ima/iso出错(及后续处置)特例。你那个都进PE了。  发表于 2020-11-30 17:09
回复

使用道具 举报

612#
发表于 2020-11-30 17:44:19 | 只看该作者
xianglang 发表于 2020-11-30 16:44
我刚才试了下,G4E 可以 map --mem /usbosv3.iso (0xff) 并 chainloader (0xff) 成功启动进入 Win10PE 桌 ...

这种情况估计是 U盘 的大文件读写快,小文件(或叫 4K速度 慢)引起的,

现在U盘大部分是这样,利于宣传,
用固态级的u盘, 我估计 加不加  --mem    启动速度 差不了多少

你能试svbus  给力(测试外挂型Pe )

点评

SVBUS尝试失败,因为 EFI 不认 NTFS 格式的分区,直接 chainloader (hd) 再 boot 后,提示无 EFI 引导文件之类(大概意思)。或者有空可以试试用 FAT32 格式做个 VHD 装 SVBUS,看行不行。不过,我始终觉得,还是 G4  详情 回复 发表于 2020-12-1 09:58
回复

使用道具 举报

613#
发表于 2020-11-30 19:43:23 | 只看该作者
2011yaya2007777 发表于 2020-11-30 05:40
太好了。可否向以前那样,截一张图,看看。那是解决了 img 的问题,iso 还没有解决?

修正我在617#发言
IMG有效,ISO不一定(有的能成,有的不能)。

ISO在这个insyde UEFI下,暂时只能采用618#的方法,
先map ventoy img成功---然后借助ventoy再启动ISO,
这样ISO就可以不出错


回复

使用道具 举报

614#
发表于 2020-11-30 21:25:12 | 只看该作者
liuzhaoyzz 发表于 2020-11-29 20:09
但是在X86环境下为毛不能引导啊,它不是已经做到2合1了吗?难道在X86下还得把它改名为booti32.efi 放进去 ...

朱玛12345678说:“(在VM里)如果你选择了x64的系统那么在选用UEFI引导时VM就会使用64位的UEFI固件,反之则会使用32位的UEFI固件”
回复

使用道具 举报

615#
发表于 2020-11-30 21:30:50 | 只看该作者
liuzhaoyzz 发表于 2020-11-29 20:09
但是在X86环境下为毛不能引导啊,它不是已经做到2合1了吗?难道在X86下还得把它改名为booti32.efi 放进去 ...

如果固件是64位的?这里的固件是指什么啊(请原谅我等小白)。
在固件是64位的情况下,只能用到bootx64.efi,那由这个X64.efi加载的PE或系统能安装X86的系统吗? 好像我在64位CPU的机器上是能随便选择装X86或X64的系统啊(只要系统支持EFI启动),反过来,86位CPU的机器上是不能选择装X64位的系统的。那我启动X86系统时加载的EFI是64位的bootx64.efi呢还是32位的bootia32.efi呢

点评

直接百度有啊: 固件是固化在硬件中的软件,开机过程中,系统会先读取其内部的硬件设备初始化信息,使操作系统能够正确识别硬件,并为其他软件的运行提供最基本的依据,像硬盘、光驱等等硬件都有自己的固件。而BI  详情 回复 发表于 2020-12-1 08:32
回复

使用道具 举报

616#
发表于 2020-11-30 21:33:15 | 只看该作者
wintoflash 发表于 2020-11-29 17:08
GRUB4DOS 本来就是这样的啊。必须设置图形模式,才能显示汉字,显示图片。BIOS 版本也是这样。

那如果我不想用图形模式,只用纯英文字母的菜单,菜单要怎么书写呢?那些元素要怎么排列怎么定义它们的位置呢?

点评

第一点:固件是什么(实物为一个存储程序的小芯片,在主板上)     通用的叫法是 bios(译:基本输入输出管理程序)   cpu制造时,已经规划好了主板上各部件连接的大体结构(例如:怎么连硬盘)   cpu  详情 回复 发表于 2020-12-1 09:56
G4D从0.45C开始支持vbe显示模式,如果想加载背景图或显示多国语言文字,首先需要开启 vbe 模式, 而开启 vbe 模式使用的命令就是 graphicesmode。 如果想加载背景图,需要splashimage。 显示多国语言文字,还  详情 回复 发表于 2020-12-1 01:12
回复

使用道具 举报

617#
发表于 2020-11-30 21:40:36 | 只看该作者
本帖最后由 ko20010214 于 2020-11-30 21:54 编辑
2011yaya2007777 发表于 2020-11-28 10:22
可以打包,也可以直接使用。
对于初接触 grub4dos 的人,对于没有时间 DIY 或不愿意搜索有关知识的人, ...

graphicsmode -1 800
这句意思是 显示模式 从1 到800 呢还是什么别的意思? 怎么我用graphicsmode 检查出来的模式是 283?
然后 分辨率 是 800*480 , 而我选择的背景图的分辨率是 800*600的,也能用~~~

在QEMU里检查的模式是  257 ,这是800*600的。


注意到 VM 里 258模式才是 800*600的, 而QEMU里 257模式是800*600的,它们不一样!
那我写menu.lst的时候,应该选择哪个模式呢?

这个关于menu.lst里的命令语句的用法的说明文件在哪里可以看到啊?(最好是中文的,英文的估计在chenall的网站http://grub4dos.chenall.net/里会有)

点评

graphicsmode -1 参数1 参数2 参数3 -1 表示,表示使用 vbe 显示模式。参数值为0x12或0x6A,表示使用 vga 显示模式 参数1 为指定分辨率宽度,可以使用具体数值,也可以使用一个范围值。 参数2 为指定分辨  详情 回复 发表于 2020-12-1 00:58
回复

使用道具 举报

618#
发表于 2020-11-30 22:30:24 | 只看该作者
本帖最后由 2011whp 于 2020-12-1 14:53 编辑

map   /z.iso
chainloader   /shellx64.efi
fs2:
cd  efi
cd  boot
bootx64.efi

启动pe成功

分析:
g4e map 的设备可以 带shell下,仍能 在shell 引导

但 g4e 驱动带不到shell 下  (驱动不通,可以理解)

同样的,用vt 启动 空的 efishell.iso  ,也能 带到shell 下



回复

使用道具 举报

619#
发表于 2020-12-1 00:58:16 | 只看该作者
ko20010214 发表于 2020-11-30 21:40
graphicsmode -1 800
这句意思是 显示模式 从1 到800 呢还是什么别的意思? 怎么我用graphicsmode 检查 ...

graphicsmode -1 参数1 参数2 参数3


-1 表示,表示使用 vbe 显示模式。参数值为0x12或0x6A,表示使用 vga 显示模式

参数1 为指定分辨率宽度,可以使用具体数值,也可以使用一个范围值。
参数2 为指定分辨率高度,可以使用具体数值,也可以使用一个范围值。
参数3 为指定位色,可以是具体数值,也可以使用一个范围值。

如果你想获得一个800*600的屏幕分辨率 应该写成这样:
graphicsmode -1 800 600

如果写成这样:graphicsmode -1 100:1000 100:1000
代表:使用vbe模式,分辨率宽度从100到1000这个范围内选取可用的最大值,高度从100到1000这个范围内选取可用的最大值
即,可选320×200,320×400,640×400,640×480,800×600等分辨率,从中选取可用的最高分辨率
回复

使用道具 举报

620#
发表于 2020-12-1 01:12:52 | 只看该作者
ko20010214 发表于 2020-11-30 21:33
那如果我不想用图形模式,只用纯英文字母的菜单,菜单要怎么书写呢?那些元素要怎么排列怎么定义它们的位 ...

G4D从0.45C开始支持vbe显示模式,如果想加载背景图或显示多国语言文字,首先需要开启 vbe 模式,
而开启 vbe 模式使用的命令就是 graphicesmode。

如果想加载背景图,需要splashimage。

显示多国语言文字,还需要加载对应字库并且菜单文本必须是UTF-8,

如果只纯英文,#掉这些就是了。
回复

使用道具 举报

621#
发表于 2020-12-1 08:32:45 | 只看该作者
本帖最后由 liuzhaoyzz 于 2020-12-1 08:36 编辑
ko20010214 发表于 2020-11-30 21:30
如果固件是64位的?这里的固件是指什么啊(请原谅我等小白)。
在固件是64位的情况下,只能用到bootx64. ...

直接百度有啊:

固件是固化在硬件中的软件,开机过程中,系统会先读取其内部的硬件设备初始化信息,使操作系统能够正确识别硬件,并为其他软件的运行提供最基本的依据,像硬盘、光驱等等硬件都有自己的固件。而BIOS是一组固化到计算机内主板上一个ROM芯片上的程序,它保存着计算机最重要的基本输入输出的程序、系统设置信息、开机后自检程序和系统自启动程序。

现在的主板只要支持UEFI启动,那么该UEFI固件都是64位的。

      对于UEFI方式启动:

      64位的UEFI固件,只能安装64位且支持UEFI启动的系统;(目前绝大多数的机器都是这种情况)

      32位的UEFI固件,只能安装32位且支持UEFI启动的系统;(此情况基本很难遇到,早些年的WIN8刚出来的时候32位UEFI启动的平板电脑固件是32位的,现在基本没有了,研究这个基本上没有任何实战意义!)
   
64位的UEFI引导用bootx64.efi,32位x86的UEFI引导用bootia32.efi。

对于LEGACY BIOS启动的情况,64位CPU可以安装64位、32位的操作系统都可以。32位的CPU只能安装32位操作系统。



这样的基础知识,为什么不百度下,有很多啊!

回复

使用道具 举报

622#
发表于 2020-12-1 09:56:44 | 只看该作者
本帖最后由 2011whp 于 2020-12-1 18:02 编辑
ko20010214 发表于 2020-11-30 21:33
那如果我不想用图形模式,只用纯英文字母的菜单,菜单要怎么书写呢?那些元素要怎么排列怎么定义它们的位 ...

第一点:固件是什么(实物为一个存储程序的小芯片,在主板上)
    通用的叫法是 bios(译:基本输入输出管理程序)

  cpu制造时,已经规划好了主板上各部件连接的大体结构(例如:怎么连硬盘)
  cpu接通电时,首先 运行固件内的程序。

  固件程序是 intel 主导编写的,这个完了
    接下来才 是微软主导的编写的 win
    你现在用引导,就是在交接口处

第二点:实物的efi固件 要么是64位,要么是32位,没有融合的

   vm虚拟机 那个是为了简化设定,不用你去 刻意选择 32 /64

第三点:帮助在哪
  这个你参考 g4d的 理解下,风格没变
  实际上你有时间多试,没时间的话先照作 因为 g4e 在软件周期上 是初期,不能定论
  以后会有的。 

第四点:显示模式:这个内部是由一个 gfx的程序完成的
       你可以 把gfx想成一台打印机
       文本模式:没有这句graphicsmode -1 相当于 仅能打文字的打印机(打印机内有的会自带字体)
       图开模式:加上这种graphicsmode -1  相当于 能打图片的打印机
  
   想要复杂的排版,参考:http://bbs.wuyou.net/forum.php?mod=viewthread&tid=369720

第五点:分辨率,(这个也有规范,关系到一连窜的协作)
     建议 按官方程序包内的示例 先只定义宽度即可,不要复杂定义
  graphicsmode -1 800
  或graphicsmode -1 1024

点评

第四点解释的很形象  发表于 2020-12-1 10:34
回复

使用道具 举报

623#
发表于 2020-12-1 09:58:25 | 只看该作者

RE: GRUB4DOS for UEFI

2011whp 发表于 2020-11-30 17:44
这种情况估计是 U盘 的大文件读写快,小文件(或叫 4K速度 慢)引起的,

现在U盘大部分是这样,利于宣 ...

SVBUS尝试失败,因为 EFI 不认 NTFS 格式的分区,直接 chainloader (hd) 再 boot 后,提示无 EFI 引导文件之类(大概意思)。或者有空可以试试用 FAT32 格式做个 VHD 装 SVBUS,看行不行。不过,我始终觉得,还是 G4E 解决引导 BOOTMGFW.EFI 来得直接和方便,也更能适应实际使用情况。

点评

分区启动测试svubs: 这个要双分区,参考 618楼  详情 回复 发表于 2020-12-1 10:16
回复

使用道具 举报

624#
发表于 2020-12-1 10:16:11 | 只看该作者
本帖最后由 2011whp 于 2020-12-1 11:26 编辑
xianglang 发表于 2020-12-1 09:58
SVBUS尝试失败,因为 EFI 不认 NTFS 格式的分区,直接 chainloader (hd) 再 boot 后,提示无 EFI 引导文 ...

分区启动测试svubs:  这个要双分区的img,参考 619楼 前后贴
或者参考 627楼  到  shell 下加载ntfs驱动 ,来引导ntfs上的bootmgfw

最好是双分区位,img 整体提交(因为实机是可以的)
回复

使用道具 举报

625#
发表于 2020-12-1 13:10:04 | 只看该作者
膜拜大佬
回复

使用道具 举报

626#
发表于 2020-12-2 12:57:50 | 只看该作者
本帖最后由 2011whp 于 2020-12-2 14:06 编辑

希望 就模拟(仿真)这块  从 无忧  视角

g4e  ventoy  grub2    统一
从现实来看,基本上都能带到 shell下  venhw




点评

Ventoy的MAP是专门设计为Ventoy工作的。 G4E和GRUB2的MAP应该可以统一。 G4E和GRUB2的MAP专注于把 ISO 文件原封不动地映射成一个设备。 Ventoy的MAP不仅是映射成设备,Ventoy map出来的设备和原版的ISO文件是有  详情 回复 发表于 2020-12-2 14:29
回复

使用道具 举报

627#
发表于 2020-12-2 14:15:42 | 只看该作者
2011yaya2007777 发表于 2020-11-29 17:33
好像文件有 19 Mb,下载几百k就失败了,而且不能断点续传。

文本模式(cli):  涉及  文本模式菜单界面   ,命令行  及编辑器  

显示中文 :  grub204的关键 是  主题 theme.txt  文件中 全部部分的,terminal_font
                   grub205是菜单中文即可,主题中有 上面那句,反而出错
以上是我以前折腾 对比出的

如果  实现文本模式 中文,如果 明显增大bootx64 的大小,  宁可不增加,也要保持轻巧
回复

使用道具 举报

628#
发表于 2020-12-2 14:29:03 | 只看该作者
本帖最后由 longpanda 于 2020-12-2 15:01 编辑
2011whp 发表于 2020-12-2 12:57
希望 就模拟(仿真)这块  从 无忧  视角

g4e  ventoy  grub2    统一

Ventoy的MAP是专门设计为Ventoy工作的。 G4E和GRUB2的MAP应该可以统一。

G4E和GRUB2的MAP专注于把 ISO 文件原封不动地映射成一个设备。
Ventoy的MAP不仅是映射成设备,Ventoy map出来的设备和原版的ISO文件是有差异的。也就是说Ventoy是先把ISO文件重组了(里面注入了一些hook),然后再映射成设备的。

对于 ”Ventoy Compatible“ 的ISO文件,Ventoy也是原封不动的映射成一个设备。

点评

谢谢回复  发表于 2020-12-2 18:01
请问 ventoy里面的iso9660 efi 驱动有什么作用?  详情 回复 发表于 2020-12-2 14:45
回复

使用道具 举报

629#
发表于 2020-12-2 14:45:47 | 只看该作者
longpanda 发表于 2020-12-2 14:29
Ventoy的MAP是专门设计为Ventoy工作的。 G4E和GRUB2的MAP应该可以统一。

G4E和GRUB2的MAP专注于把 ISO ...

请问 ventoy里面的iso9660 efi 驱动有什么作用?

点评

绝大多数的Linux发行版里面, UEFI 的 eltorito的镜像里面只有一个 grub的可执行程序。kernel和initrd都是和Legacy BIOS模式下共用一份,这一份在ISO里面。Ventoy hook的是这一份。 但是以arch Linux为代表的的发行  详情 回复 发表于 2020-12-2 14:57
回复

使用道具 举报

630#
发表于 2020-12-2 14:57:34 | 只看该作者
wintoflash 发表于 2020-12-2 14:45
请问 ventoy里面的iso9660 efi 驱动有什么作用?

绝大多数的Linux发行版里面, UEFI 的 eltorito的镜像里面只有一个 grub的可执行程序。kernel和initrd都是和Legacy BIOS模式下共用一份,这一份在ISO里面。Ventoy hook的是这一份。
但是以arch Linux为代表的的发行版不一样,它的kernel和initrd在ISO里面有一份,在UEFI的IMG里面还有一份,两份实际上是一样的,但是UEFi模式下它只认IMG里面的这一份。这样Ventoy的hook会就不好做了。
所以,开始的时候的方案是,不加载UEFI的这个IMG,而是直接安装ISO9660的efi驱动,这样让整个ISO里面的文件对UEFI可见,直接以EFI目录下的bootx64.efi启动,就可以了。就类似于把整个ISO文件解压开放到一个FAT32的分区里面一样。

不过后来Ventoy版本里采取了另外一种方案,这个iso9660 efi驱动实际上就没用到了,只是还在里面。

点评

估计是考虑,两种模式 产品独立 或 uefi有意采取认证方式,只是现在还一样  发表于 2020-12-2 19:00
怪不得我研究了半天,也没发现用在哪。  详情 回复 发表于 2020-12-2 15:09
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-11-26 18:38

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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