|
本帖最后由 liuzhaoyzz 于 2025-1-9 21:52 编辑
免写菜单、无需F6键,让g4d、g4e、grub2与Ventoy共存以增强Ventoy兼容性
下载地址:https://liuzhaoyzz.lanzoui.com/b00nlwy1c SX_linux_PE安装器2025-01-07
一、前言
Ventoy使用起来简单方便,无需频繁格盘即可启动PE/Linux,但是他存在几个痛点:
1、BIOS下面启动PE在有的电脑上会出现花屏现象,启动兼容性有待提高。花屏重启对电脑文件有伤害,严重时chkdsk /f都修复不了,要格盘重做系统,费时费力。
2、某些linux发行版(比如veket)启动后Ventoy的第一个分区被占用,导致分区内的文件都无法访问,安装的软件、系统的配置不能保存到4fs数据中,数据持久化persistence.dat不能访问;而且也不能在启动后用第一分区内的文件安装到硬盘。
3、对于x86架构的MAC电脑支持较差。
4、对于g4d、g4e、grub2熟悉的高级用户使用起来感觉束缚和限制较多,包括MBR-GAP校验、分区结构、32MB VTOYEFI分区校验、ventoy_grub.cfg保存分区校验等。
经过研究,我实现了让g4d、g4e、grub2与Ventoy共存的办法,只需要双击+拖放ISO文件即可自动写菜单,无需F6键,在Ventoy主界面进入g4d/g4e/grub2,进而启动指定ISO,ventoy有问题的时候就可以用这套备选方案。
二、使用简介
1、在优盘中正常安装ventoy,如果已经安装无需再次安装,无需做任何调整。
2、把PE.ISO/PE.WIM/Linux保存在非中文不含特殊字符目录下,在本机启动,放在优盘硬盘均可;如果想拿到另一台电脑启动,ISO要拷贝到优盘中。
3、运行批处理【SX_linux_PE安装器】选择3.一键添加grub4dos/grub2x64.efi引导的BIOS/UEFI双启动,分区选择Ventoy第一个大分区,根据提示把ISO拖到批处理上即可自动生成g4d、g4e、grub2菜单,同时支持BIOS/UEFI启动,精准启动所选的PE.ISO/PE.WIM/Linux,不需要多次按键选择。
4、电脑设置优盘启动优先,关闭安全启动,在Ventoy启动主界面选择g4d、g4e、grub2,进入后启动所选的PE.ISO/PE.WIM/Linux。
三、其他说明
1、批处理不改动Ventoy的分区结构,不改变分区前面保留扇区MBR-GAP数据,不改变第二个分区32MB的VTOYEFI数据,所有启动文件都放在Ventoy第一个大分区,完美适配Ventoy,与Ventoy共存,扩展Ventoy的能力,规避Ventoy的一些问题。
2、Ventoy的分区选择MBR/GPT均可,第一分区格式FAT32/NTFS/EXFAT均可,是否有第三个保留分区均可。PE.ISO/PE.WIM/Linux要保存在非中文不含特殊字符目录下,在本机启动,放在优盘硬盘均可;如果想拿到另一台电脑启动,ISO当然要拷贝到优盘中。
3、BIOS启动时选择grub4dos_VTNORMAL.iso或者grub2_VTNORMAL.iso可以直接启动grub4dos、grub2,也可以按F6调用ventoy_grub.cfg自定义菜单插件启动grub4dos、grub2。还可以选择grubfm.iso启动多种PE.ISO/PE.WIM/Linux。
4、UEFI启动时选择grub2x64.efi、g4eBOOTX64.EFI、grub4dos_VTNORMAL.iso或者grub2_VTNORMAL.iso可以直接启动grub4dos、grub2,也可以按F6调用ventoy_grub.cfg自定义菜单插件启动grub4dos、grub2。还可以选择grubfmx64.efi启动Wintoflash的grub2文件管理器,进而启动多种PE.ISO/PE.WIM/Linux。
5、g4d/g4e/grub2 UEFI启动需要关闭安全启动,对g4e/grub2没有做跳过安全启动处理,搞不过微软。
6、g4d/grub2应该可以规避一部分电脑用Ventoy直接启动PE时花屏的问题。如果还有问题,把\boot\grub2\ventoy.json拷贝到Ventoy第一个分区\ventoy\目录下,这个配置文件会让ventoy在BIOS下进入文本模式。
7、对Intel CPU的部分MAC电脑应该可以启动,无法关闭安全启动的T2电脑可能不行。对于高分辨率的电脑要启用大字体文件。
8、grub4dos_VTNORMAL.iso或者grub2_VTNORMAL.iso,以后g4d/g4e/grub2自已自行更新,制作的办法批处理:https://liuzhaoyzz.lanzouq.com/b0fp1ykqh 密码:6pza
9、批处理第一次运行时要拷贝grub2\i386-pc\目录下的小文件,需要几十秒的时间,以后就快了。
10、对于g4d、g4e、grub2熟悉的高级用户,可自己修改相关启动菜单,以支持更多的linux发行版。
11、Ventoy基于GNU grub2.04版本+ipxe二次开发,本方案基于g4d/g4e/grub2,其中g4d/g4e采用的是2011yaya2007777新版本,grub2采用的是Wintoflash的grub2方案,采用了map、ntloader、ntboot等命令启动PE,与Ventoy启动PE的方案INT13中继(legacy) 和Block IO protocol 中继(UEFI)+hook+patch winpeshl.exe或者PECMD.exe方案完全不同;启动linux所用的方案与Ventoy所用的device mapper+patch initrd方案也完全不同,并非基于Ventoy的自定义菜单ventoy_grub.cfg启动,ventoy_grub.cfg自定义菜单只是备胎方案,而且只是个中转。
几种方案的特点:g4d的BIOS支持和兼容性很强,但是文件碎片解析能力(32个)稍差;g4e对PE支持挺好,但对linux的loopback启动方案不支持;grub2的BIOS兼容性略差,BIOS下不支持map,只能用memdisk占用内存,但是文件碎片解析能力很强,绝大部分linux发行版都支持grub2启动。他们可以作为Ventoy工具强有力的补充。 |
|