无忧启动论坛

标题: 免写菜单、无需F6键,支持升级,让g4d、g4e、grub2与Ventoy共存以增强Ventoy兼容性 [打印本页]

作者: liuzhaoyzz    时间: 2025-1-8 20:10
标题: 免写菜单、无需F6键,支持升级,让g4d、g4e、grub2与Ventoy共存以增强Ventoy兼容性
本帖最后由 liuzhaoyzz 于 2025-1-21 18:40 编辑

免写菜单、无需F6键,支持Ventoy升级,让g4d、g4e、grub2与Ventoy共存以增强Ventoy兼容性
下载地址:https://liuzhaoyzz.lanzoui.com/b00nlwy1c  SX_linux_PE安装器2025-01-21

一、前言
Ventoy使用起来简单方便,无需频繁格盘即可启动PE/Linux,但是他存在几个痛点:
1、BIOS下面启动PE在有的电脑上会出现花屏现象,启动兼容性有待提高。花屏重启对电脑文件有伤害,严重时chkdsk /f都修复不了,要格盘重做系统,费时费力。
2、某些linux发行版(比如veket25)启动后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,如果已经安装无需再次安装,无需做任何调整。Ventoy下载地址 https://www.ventoy.net/cn/download.html
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的能力,规避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、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、BIOS下面memdisk方案读写磁盘似乎也需要解析文件碎片,感觉他的碎片解析能力要比grub4dos更差,有较多文件碎片时可能会出现“no ramdisk image specified”的提示。文件碎片可以在windows下采用复制粘贴重命名的办法消除。
11、对于g4d、g4e、grub2熟悉的高级用户,可自己修改相关启动菜单,以支持更多的linux发行版。
12、本安装器可以脱离、不依赖于ventoy单独启动,MBR/GPT分区均可,建议有个FAT32/ESP分区作为启动盘,这是一般情况下UEFI启动的要求。
13、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工具强有力的补充。

09-[UEFI]Ventoy→grub2启动.png (8.2 KB, 下载次数: 0)

09-[UEFI]Ventoy→grub2启动.png

01-选择3一键添加支持Ventoy启动.png (122.2 KB, 下载次数: 0)

01-选择3一键添加支持Ventoy启动.png

02-[BIOS]直接启动grub2、grub4dos.png (166.37 KB, 下载次数: 0)

02-[BIOS]直接启动grub2、grub4dos.png

03-[BIOS]F6外接菜单支持grub4dos、grub2、grubfm.png (167.39 KB, 下载次数: 0)

03-[BIOS]F6外接菜单支持grub4dos、grub2、grubfm.png

04-[BIOS]Ventoy→grub4dos启动.png (9.43 KB, 下载次数: 0)

04-[BIOS]Ventoy→grub4dos启动.png

05-[BIOS]Ventoy→grub2启动.png (8.03 KB, 下载次数: 0)

05-[BIOS]Ventoy→grub2启动.png

06-[UEFI]支持g4e、grub2、grubfm启动.png (167.3 KB, 下载次数: 1)

06-[UEFI]支持g4e、grub2、grubfm启动.png

07-[UEFI]F6外接菜单支持g4e、grub2、grubfm.png (168.07 KB, 下载次数: 0)

07-[UEFI]F6外接菜单支持g4e、grub2、grubfm.png

08-[UEFI]Ventoy→g4e启动.png (8.49 KB, 下载次数: 0)

08-[UEFI]Ventoy→g4e启动.png

作者: liuzhaoyzz    时间: 2025-1-8 20:11
本帖最后由 liuzhaoyzz 于 2025-1-8 20:20 编辑

grub4dos_VTNORMAL.iso可全盘查找menu.lst(BIOS下)和/EFI/grub/menu.lst(UEFI下)菜单文件并加载,菜单文件外置,方便编辑。
打包脚本说明:http://bbs.wuyou.net/forum.php?mod=viewthread&tid=419771    ----感谢hilsonma!
我进行了修改,详见1楼上面的压缩包。
ventoy.dat是 Ventoy Compatible标志,详见https://www.ventoy.net/cn/doc_compatible_mark.html
_VTNORMAL可以让ventoy以 Normal 模式来启动grub4dos.iso,详见ISO 文件名中的特殊标识说明,https://www.ventoy.net/cn/doc_name_identifier.html



作者: liuzhaoyzz    时间: 2025-1-8 20:11
本帖最后由 liuzhaoyzz 于 2025-1-8 20:20 编辑

grub2_VTNORMAL.iso可全盘查找/boot/grub2/grubbios.cfg(BIOS下)和/boot/grub2/grub.cfg(UEFI下)菜单文件并加载,菜单文件外置,方便编辑。
支持UEFI启动的GRUB2 ISO光盘镜像的制作 http://bbs.wuyou.net/forum.php?mod=viewthread&tid=386651    ----感谢rkr077
我进行了修改,详见1楼上面的压缩包。
ventoy.dat是 Ventoy Compatible标志,详见https://www.ventoy.net/cn/doc_compatible_mark.html
_VTNORMAL可以让ventoy以 Normal 模式来启动grub4dos.iso,详见ISO 文件名中的特殊标识说明,https://www.ventoy.net/cn/doc_name_identifier.html

作者: liuzhaoyzz    时间: 2025-1-8 20:21
本帖最后由 liuzhaoyzz 于 2025-1-21 08:53 编辑

占楼待用
我在linux版本发过一篇帖子,结果linux版块阅读权限太高,很多人根本就看不了,刚好完美适配ventoy,索性发到这里。

chiannet的USBOS,要把ISO放在分区根目录下的/ISOS/目录下才行,否则无法加载外置程序。①、任意可见分区的根目录、“ISO”或“ISOS”目录,例如U:\USBOSV3.iso、G:\ISO\USBOSV3.iso或V:\ISOS\USBOSV3.iso等;

这套方案是基于Ventoy作为第一启动的方案,我现在不知道的是Ventoy作为第一启动,有多大的几率无法启动?






作者: 518hl    时间: 2025-1-8 20:43
有傻瓜一点的吗  一键安装
作者: liuzhaoyzz    时间: 2025-1-8 20:49
518hl 发表于 2025-1-8 20:43
有傻瓜一点的吗  一键安装

看使用简介即可,就是傻瓜式的,不需要你写引导、写菜单。
作者: Climbing    时间: 2025-1-8 21:10
你下载链接里那么多文件,其他文件有什么用?能不能做个简单介绍?
作者: 2012andyle113    时间: 2025-1-8 21:15
看起来很不错的样子,比较方便的解决了VENTOY的限制问题
作者: liuzhaoyzz    时间: 2025-1-8 21:42
本帖最后由 liuzhaoyzz 于 2025-1-12 07:43 编辑
Climbing 发表于 2025-1-8 21:10
你下载链接里那么多文件,其他文件有什么用?能不能做个简单介绍?

SX_linux_PE安装器2025-01-07.rar,linux+PE.ISO+PE.WIM写引导,写菜单。压缩包里面已经有了txt详细介绍了。
SX_veket安装器2025-01-07.rar,veket用户要求的专门为veket写的安装器,顺便支持大部分linux发行版+PE.ISO+PE.WIM,精简了wintoflash的grub2filemanager。
linux.File.Systems.5.2.1128.7z,让windows支持ext4读写的软件,便于在windows下面安装veket这样的发行版到ext4分区。
Paragon_ExtFS_for_Windows.rar,同上,让windows支持ext4读写的软件,便于在windows下面安装veket这样的发行版到ext4分区。
cfadisk_driver2021-04-06.rar用于让win10.1703及以下的版本支持优盘多分区显示。
SX_veket安装器演示.exe,这个exe文件捆绑了播放器,用于演示批处理写linux+PE.ISO+PE.WIM的视频教程。
pathcopycopy右击复制文件名或路径.rar,用于在windows下面复制文件名字长路径,因为批处理需要这个长路径,当然不用复制也可以,提示的时候直接把文件拖上去也行。

压缩包里面已经有了txt详细介绍了,有网友又嫌弃说明太长,看不懂,费劲,于是我索性不说了,只说用法,就这样。





作者: nianyueriPE    时间: 2025-1-8 21:45
谢谢分享
作者: nianyueriPE    时间: 2025-1-8 21:45
下载试试
作者: 邪恶海盗    时间: 2025-1-8 22:03
没捣鼓的欲望了...


二○二五年一月八日
作者: wn168cn@163.com    时间: 2025-1-8 22:31
感谢分享
作者: afti    时间: 2025-1-8 22:50
看介绍很强大,感谢分享
作者: newswan    时间: 2025-1-8 22:54
能把 ventory 提取出来,加到其他启动器,比较好
作者: liuzhaoyzz    时间: 2025-1-8 23:00
newswan 发表于 2025-1-8 22:54
能把 ventory 提取出来,加到其他启动器,比较好

了解ventoy启动原理的话,就知道你说的是很难实现的,ventoy是一整套启动方案,从一开始设计就确定了,他做不到grubfilemanager那样的iso启动,要重构的话作者没有那个精力。只能以ventoy为基础,其他的软件放到ventoy盘符中。
作者: newswan    时间: 2025-1-8 23:06
liuzhaoyzz 发表于 2025-1-8 23:00
了解ventoy启动原理的话,就知道你说的是很难实现的,ventoy是一整套启动方案,从一开始设计就确定了,他 ...

http://wuyou.net/forum.php?mod=v ... &extra=page%3D1
Ventoy-1.0.97 的
作者: 1112131213    时间: 2025-1-8 23:21
厉害厉害
作者: donbooooo    时间: 2025-1-8 23:49
找时间试试,感谢大大分享
作者: in9    时间: 2025-1-9 00:02
谢谢楼主分享!
作者: 忧心的启    时间: 2025-1-9 08:38
学习学习,感谢分享。
作者: ynb168c    时间: 2025-1-9 09:12
感谢分享。
作者: zengxibiao    时间: 2025-1-9 10:14
感谢双心斑斑分享,收藏下载了试试
作者: jabbie    时间: 2025-1-9 10:25
谢谢分享
作者: chenzhw67    时间: 2025-1-9 10:29
感谢分享。以前版本我电脑win11运行,一闪而过,无法使用。这个版本不存在此问题。
作者: yhm2002    时间: 2025-1-9 10:43
感谢分享
作者: wang1126    时间: 2025-1-9 11:10
谢谢楼主分享
作者: 假大空    时间: 2025-1-9 11:16
有点复杂。学习下
作者: yhm2002    时间: 2025-1-9 11:43
感谢分享
作者: 2012sinkr    时间: 2025-1-9 11:55
谢谢楼主分享,先收藏,下载来试用
作者: yc2428    时间: 2025-1-9 12:03
谢谢分享
作者: wychun    时间: 2025-1-9 12:53
谢谢分享
作者: guong    时间: 2025-1-9 13:42
谢谢楼主分享!
作者: wn168cn@163.com    时间: 2025-1-9 14:15
感谢分享
作者: 进士小站    时间: 2025-1-9 16:26
感谢楼主分享
下载学习了
作者: zqfeng01    时间: 2025-1-9 16:41
感谢分享
作者: nianyueriPE    时间: 2025-1-9 17:36
谢谢分享
作者: nianyueriPE    时间: 2025-1-9 17:36
下载试试
作者: 香柠丶冰淇淋    时间: 2025-1-9 19:12
看起来很不错的样子
作者: dwso    时间: 2025-1-9 19:21
谢谢分享
作者: bird202301    时间: 2025-1-9 21:06
厉害啊,学习了
作者: zyy    时间: 2025-1-9 23:42
谢谢楼主分享,先收藏,学习一下
作者: therfer    时间: 2025-1-11 09:46
给你回复
作者: 土著007    时间: 2025-1-11 20:21
测试了,uos的安装镜像ventoy启动正常,转到楼主的g4e grub2就启动失败
作者: liuzhaoyzz    时间: 2025-1-11 20:35
本帖最后由 liuzhaoyzz 于 2025-1-11 21:28 编辑
土著007 发表于 2025-1-11 20:21
测试了,uos的安装镜像ventoy启动正常,转到楼主的g4e grub2就启动失败


你把grub2启动uos的菜单贴上来看看。
在/boot/grub2/grubbios.cfg,/boot/grub2/grub.cfg中,UOS我测试过的啊。
在哪里下载的?
你用里面的grubfm.iso进去选择UOS能启动吗?
作者: 土著007    时间: 2025-1-12 09:08
本帖最后由 土著007 于 2025-1-12 09:19 编辑

uos是官网下载的x86版,电脑11代酷睿cpu,主板只有uefi模式,u盘是256G固态U盘,g4e和grub2的所有二级菜单都试过,都是启动到中途报错

set default=1
set fallback=1
set timeout=3
set pager=20
set grub_draw_border=1

#设定菜单字体及背景颜色
set menu_color_normal=white/black
set menu_color_highlight=white/blue

#loopback -m ramdisk /boot/grub2/unicode.xz
#loadfont (ramdisk)/grub2/fonts/unicode.pf2
#set locale_dir=(ramdisk)/grub2/locale
#set lang=zh_CN
#set gfxmode=auto,800x600,1024x768
#terminal_output gfxterm

set locale_dir=/boot/grub2/locale
set lang=zh_CN
loadfont /boot/grub2/fonts/unicode.pf2
set gfxterm_font=unicode
#set gfxmode=auto,800x600,1024x768
set gfxmode=1024x768,800x600,auto
terminal_output gfxterm
#background_image /boot/grub2/xxx.jpg

menuentry "0.Windows" "/EFI/Microsoft/Boot/bootmgfw.efi" --hotkey=0 {
search -n -s -f $2
chainloader $2
}

menuentry "/BOOT/UOS/uos-1070-202412.iso" "/BOOT/UOS/uos-1070-202412.iso" {
set gfxpayload=keep
search --no-floppy --set --file $2
loopback loop $2
linux (loop)/live/vmlinuz boot=live findiso=$2 components quiet splash
initrd (loop)/live/initrd.lz
}

menuentry "1.g4eBOOTX64.EFI by 2011yaya2007777 [UEFI]" --class GRUB2 {
  if  search -n -s -q -f /EFI/boot/g4eBOOTX64.EFI; then
    chainloader /EFI/boot/g4eBOOTX64.EFI
  elif  search -n -s -q -f /boot/g4e/g4eBOOTX64.EFI; then  
    chainloader /boot/g4e/g4eBOOTX64.EFI
  fi
}

menuentry "2.grubfm by Wintoflash" --hotkey=2 {
search --no-floppy --set --file /boot/grub2/grubfm/grubfmx64.efi
chainloader /boot/grub2/grubfm/grubfmx64.efi
}

menuentry "3.grubfm_iso_wim_img" --hotkey=3 {
export grub_file=/boot/imgs
configfile /boot/grub2/grubfm.cfg
}

menuentry "4.Reboot" --hotkey=4 {reboot}

menuentry "5.Halt" --hotkey=5 {halt}



作者: liuzhaoyzz    时间: 2025-1-12 09:37
本帖最后由 liuzhaoyzz 于 2025-1-12 09:40 编辑
土著007 发表于 2025-1-12 09:08
uos是官网下载的x86版,电脑11代酷睿cpu,主板只有uefi模式,u盘是256G固态U盘,g4e和grub2的所有二级菜单 ...

资源中心 | 统信UOS生态社区
https://www.chinauos.com/resource/download-professional
镜像很多,你说的是哪个?专业版,还是教育版?HWE版本,还是普通版?

作者: liuzhaoyzz    时间: 2025-1-12 10:09
土著007 发表于 2025-1-12 09:08
uos是官网下载的x86版,电脑11代酷睿cpu,主板只有uefi模式,u盘是256G固态U盘,g4e和grub2的所有二级菜单 ...

根据wintoflash的提示,上次修改只改了deepin,忘了修改UOS,deepin/UOS的启动参数有过调整,网盘里面已上传修改版,我测试可以启动了,直接上图,感谢反馈!
menuentry "/linux/UOS/uos-desktop-20-professional-hwe-1070-amd64-202412.iso" "/linux/UOS/uos-desktop-20-professional-hwe-1070-amd64-202412.iso" {
set gfxpayload=keep
search --no-floppy --set --file $2
loopback loop $2
linux (loop)/live/vmlinuz boot=live fromiso=$2 findiso=$2 components quiet splash
initrd (loop)/live/initrd.lz
}

upan[linux]-2025-01-12-10-06-09.png (440.12 KB, 下载次数: 0)

upan[linux]-2025-01-12-10-06-09.png

作者: linux爱好者    时间: 2025-1-12 17:01
感谢,从另一个帖子看到连接过来的,收藏了有空慢慢看
作者: u8978    时间: 2025-1-12 20:47
谢谢楼主分享
作者: jl1170063343    时间: 2025-1-14 14:29
试了半天好复杂的,那俩启动界面纯英文不懂,乱启动还卡死,突发奇想直接复制grub2\grubfm文件夹里的东西到U盘,然后直接启动里面的文件发现爽多了,成了文件夹里挑文件启动,哈哈哈哈,反正我的4代Intel启动成了,符合我的要求,仅仅是在ventoy的基础上多启动一次
作者: liuzhaoyzz    时间: 2025-1-14 14:36
jl1170063343 发表于 2025-1-14 14:29
试了半天好复杂的,那俩启动界面纯英文不懂,乱启动还卡死,突发奇想直接复制grub2\grubfm文件夹里的东西到 ...

选择grub4dos/grub2→进入菜单→直接回车启动就可以了,默认就是你选择的iso啊。一楼不是有截图吗?
作者: u8978    时间: 6 天前

感谢楼主分享。
作者: 等一万年    时间: 6 天前

谢谢楼主分享
作者: luodunrong123    时间: 前天 20:12
对小白来说,越弄越复杂




欢迎光临 无忧启动论坛 (http://wuyou.net/) Powered by Discuz! X3.3