一、效果展示
1, 根据不同的image显示不同logo
2,增加倒计时条,在无人操作时候,可以根据提前设定的配置,自动进入安装流程
二、 Ventoy安装教程
1、软件下载及问题处理
Ventoy官网:https://www.ventoy.net/cn/index.html,根据自身需求进行下载即可。如果在安装或者使用过程中存在问题,可以通过官网中的常见问题进行查看是否可以解决。
2、安装及升级方法
安装方式可以选择命令行安装, 图形化界面安装, web安装
我现在使用的版本是Ventoy V1.0.91, 系统版本是Ubuntu 22.04.1 LTS
2.1 命令行安装及升级
2.2.1、查看帮助信息
jacob@miniSpace:~/tools/ventoy-1.0.91$ sudo ./Ventoy2Disk.sh -h
**********************************************
Ventoy: 1.0.91 x86_64
longpanda admin@ventoy.net
https://www.ventoy.net
**********************************************
Usage: Ventoy2Disk.sh CMD [ OPTION ] /dev/sdX
CMD:
-i install Ventoy to sdX (fails if disk already installed with Ventoy)
-I force install Ventoy to sdX (no matter if installed or not)
-u update Ventoy in sdX
-l list Ventoy information in sdX
OPTION: (optional)
-r SIZE_MB preserve some space at the bottom of the disk (only for install)
-s/-S enable/disable secure boot support (default is enabled)
-g use GPT partition style, default is MBR (only for install)
-L Label of the 1st exfat partition (default is Ventoy)
-n try non-destructive installation (only for install)
帮助信息里面可以看到,如果是一个新U盘,可以通过-i参数进行安装, 如果是一个已经安装过的U盘需要升级可以使用-u参数。
2.1.2 使用命令行执行的结果如下,过程中的确认部分输入y再回车即可
jacob@miniSpace:~/tools/ventoy-1.0.86$ sudo ./Ventoy2Disk.sh -i /dev/sda
**********************************************
Ventoy: 1.0.86 x86_64
longpanda admin@ventoy.net
https://www.ventoy.net
**********************************************
Disk : /dev/sda
Size : 14 GB
Style: MBR
Attention:
You will install Ventoy to /dev/sda.
All the data on the disk /dev/sda will be lost!!!
Continue? (y/n) y
All the data on the disk /dev/sda will be lost!!!
Double-check. Continue? (y/n) y
Create partitions on /dev/sda by parted in MBR style ...
Done
Wait for partitions ...
partition exist OK
create efi fat fs /dev/sda2 ...
mkfs.fat 4.2 (2021-01-31)
success
Wait for partitions ...
/dev/sda1 exist OK
/dev/sda2 exist OK
partition exist OK
Format partition 1 /dev/sda1 ...
mkexfatfs 1.3.0
Creating... done.
Flushing... done.
File system created successfully.
mkexfatfs success
writing data to disk ...
sync data ...
esp partition processing ...
Install Ventoy to /dev/sda successfully finished.
看到提示成功即可,可以使用-l参数查看安装好的设备,如果需要diskable secure boot需要在安装的时候增加-s/-S参数, Disk Partition Style可以添加-g参数修改GPT partition style
jacob@miniSpace:~/tools/ventoy-1.0.86$ sudo ./Ventoy2Disk.sh -l /dev/sda
**********************************************
Ventoy: 1.0.86 x86_64
longpanda admin@ventoy.net
https://www.ventoy.net
**********************************************
Ventoy Version in Disk: 1.0.86
Disk Partition Style : MBR
Secure Boot Support : YES
2.2 使用图形化界面安装
2.2.1 GUI界面安装
使用图形化界面安装,根据自己的电脑选择合适的gui脚本进行执行,打开后安装界面如下:
在配置选项里面可以设置分区类型,以及是否需要开启secure boot等选项。
配置完成之后,点击安装即可,安装过程中弹出的窗口直接确认即可,等到出现以下弹窗表示安装成功:
2.2.2 Web GUI安装
使用对应的脚本执行即可,会出现提示,在浏览器中打开提示信息中的网址
jacob@miniSpace:~/tools/ventoy-1.0.86$ sudo ./VentoyWeb.sh
===============================================================
Ventoy Server 1.0.86 已经启动 ...
请打开浏览器,访问 http://127.0.0.1:24680
===============================================================
################## Press Ctrl + C to exit #####################
在浏览器打开如下界面:
整体操作与在linux下打开的GUI界面操作一致。
2.3 升级Ventoy, 在安装步骤中,图形化界面中可以直接点击升级按钮进行升级, 命令行则使用-U参数进行升级
命令行升级如下:
jacob@miniSpace:~/tools/ventoy-1.0.91$ sudo ./Ventoy2Disk.sh -u /dev/sda
**********************************************
Ventoy: 1.0.91 x86_64
longpanda admin@ventoy.net
https://www.ventoy.net
**********************************************
Upgrade operation is safe, all the data in the 1st partition (iso files and other) will be unchanged!
Update Ventoy 1.0.86 ===> 1.0.91 Continue? (y/n) y
esp partition processing ...
Update Ventoy on /dev/sda successfully finished.
使用图形化界面升级,出现如下弹窗表示升级成功:
三、Ventoy美化教程
下载GRUB主题可以通过以下网址:GRUB Themes - Gnome-look.org
我下载主题链接:Dark Matter GRUB Theme - Gnome-look.org, 下载之后,对这个主题进行修改和配置,以满足Ventoy的使用。
在系统中打开已经挂载好的Ventoy文件夹, 里面是空的,可以按照如下格式创建文件夹:
jacob@miniSpace:/media/jacob/Ventoy$ tree -L 2
.
├── ISO
│ ├── ArchLinux
│ ├── CentOS
│ ├── OtherLinux
│ ├── RedHat
│ ├── Ubuntu
│ ├── UbuntuKylin
│ └── VENTOY_CHECKSUM
├── System Volume Information
│ ├── IndexerVolumeGuid
│ └── WPSettings.dat
├── theme
│ └── darkmatter
└── ventoy
├── ventoy_backup.json
└── ventoy.json
(1)ISO文件夹里面存放对应的镜像文件
(2)theme文件夹存放主题文件
(3)ventoy文件夹存放ventoy的conf文件,conf文件格式为json格式,这个是根据ventoy官网的规则进行命名的,所以ventoy这个单词必须小写才可以
正式进入美化教程。
(1)进入Ventoy工具,执行以下命令,执行完成之后,在浏览器打开对应的网址进行配置,当然也可以通过修改配置文件(/ventoy/ventoy.json)的方式进行配置
jacob@miniSpace:~/tools/ventoy-1.0.91$ sudo ./VentoyPlugson.sh /dev/sda
Ventoy version in Disk: 1.0.91
Disk Partition Style : MBR
Secure Boot Support : NO
/dev/sda1 is mounted at /media/jacob/Ventoy exfat
ventoy directory exist OK
===============================================================
Ventoy Plugson Server 已经启动 ...
请打开浏览器,访问 http://127.0.0.1:24681
===============================================================
################## Press Ctrl + C to exit #####################
(2)配置ISO镜像位置,保证可以找到对应的镜像,在侧边选择“全局控制插件”,配置指定搜索目录为“/ISO”
向下翻动找到“最大搜索目录深度”,直接设置为max即可,这样会遍历指定搜索目录下的所有文件夹
找到“菜单显示模式”, 如果设置为“0”, 会直接显示所有的ISO文件,如果设置为“1”, 会显示对应的文件夹,进入文件夹之后,可以看到对应的ISO文件
(3)在web进行主题配置,打开页面之后,在侧边选择“主题插件”,然后主要是配置下图中未折叠的部分,其余部分需要配置看“选项说明”进行相应的配置即可
对应的conf文件的格式
"theme":{
"file": "/theme/darkmatter/theme.txt",
"ventoy_top": "90%",
"ventoy_color": "white",
"fonts":[
"/theme/darkmatter/fonts/1440p/hackb_22.pf2",
"/theme/darkmatter/fonts/1440p/norwester_24.pf2",
"/theme/darkmatter/fonts/1440p/norwester_28.pf2",
"/theme/darkmatter/fonts/1440p/norwester_30.pf2"
]
}
(4)“菜单别名插件”, 根据需要进行配置,这个会在选择安装的ISO界面显示为指定的别名,按需配置即可
(5)“菜单类型插件”,这个必须配置,否则无法显示对应的logo,关键字可以设置为字符串也可以设置为文件夹,设置为字符串,会按照字符串查找进行匹配,如果是文件夹,那么对应文件夹下边的所有ISO会被设置为相同的logo, 同时在这个列表中越靠前那么优先级越高,所以把"/ISO
"目录放在最后,保证无法匹配的ISO,使用一个默认的logo。
(5.1)类型设置为“parent”, 那么这个文件夹下的所有ISO的logo都是一样的
(5.2)类型设置为“dir”,会给文件夹设置logo,但是文件夹下的ISO不会配置对应的logo
(5.3)类型设置为“key”, 会根据关键字查找对应的ISO,配置为对应的logo
ventoy部分设置完成,进行主题部分的配置
(1)background和boot, menu等相关图片需要放置在theme.txt的同级目录。
jacob@miniSpace:/media/jacob/Ventoy/theme/darkmatter$ ls
background.png boot_menu_sw.png menu_bkg_nw.png select_c.png
backgrounds boot_menu_w.png menu_bkg_se.png select_e.png
boot_menu_c.png color menu_bkg_s.png select_w.png
boot_menu_e.png fonts menu_bkg_sw.png slider_c.png
boot_menu_ne.png icons menu_bkg_w.png slider_n.png
boot_menu_n.png menu_bkg_c.png progress_bar_c.png slider_s.png
boot_menu_nw.png menu_bkg_e.png progress_bar_e.png theme.txt
boot_menu_se.png menu_bkg_ne.png progress_bar_w.png white
boot_menu_s.png menu_bkg_n.png progress_highlight_c.png
(2)创建icons文件夹,在该文件中需要放置对应的logo的png文件,这里的文件会用在“菜单类型插件”里面配置的类型,所以这里的文件和配置里面的需要对应起来
jacob@miniSpace:/media/jacob/Ventoy/theme/darkmatter/icons$ ls
4MLinux.png elementary.png linuxmint.png redhat.png
AlpineLinux.png endeavouros.png linux.png regolith.png
android.png fedora.png lubuntu.png restart.png
anonymous.png find.efi.png macosx.png shutdown.png
antergos.png find.none.png mageia.png siduction.png
archcraft.png freebsd.png Manjaro.i686.png solus.png
archlinux.png gentoo.png manjarolinux.png steamos.png
arch.png gnu-linux.png manjaro.png submenu.png
arcolinux.png gpart.png Manjaro.x86_64.png SystemRescueCD.png
artix.png haiku.png memtest.png type.png
cancel.png help.png mx.png tz.png
centos.png kali.png neon.png ubuntu.png
chakra.png kaos.png nixos.png unknown.png
debian.png kbd.png opensuse.png unset.png
deepin.png kernel.png parrot.png void.png
devuan.png korora.png pop-os.png windows10.png
driver.png kubuntu.png pop.png windows.png
edit.png lang.png primeos.png xubuntu.png
efi.png lfs.png recovery.png zorin.png
(3)theme.txt文件配置如下, 从主题网站下载的主题,需要修改theme.txt,部分内容需要参考ventoy官方提供的theme.txt中的内容。
以下配置中的参数可以通过Grub2 theme tutorial - Rosalab Wiki进行学习和了解
# Dark Matter GRUB theme (1440p)
desktop-image: "background.png"
title-text: ""
terminal-font: "Hack Bold 22"
terminal-left: "20%"
terminal-top: "35%"
terminal-width: "60%"
terminal-height: "40%"
terminal-box: "menu_bkg_*.png"+ boot_menu {
menu_pixmap_style = "boot_menu_*.png"
left = 5%
top = 30%
width = 80%
height = 50%
item_font = "Norwester Regular 24"
item_color = "#6b6b6b" selected_item_font = "Hack Bold 22"
selected_item_color = "#ffffff" icon_width = 32
icon_height = 32 item_icon_space = 4
item_height = 30
item_padding = 20
item_spacing = 20 selected_item_pixmap_style = "select_*.png"
scrollbar = true
scrollbar_width = 10
scrollbar_thumb = "slider_*.png"
}+ progress_bar {
id = "__timeout__"
left = 5%
width = 80%
top = 85%
height = 25
text = "@TIMEOUT_NOTIFICATION_SHORT@"
text_color = "#ffffff"
font = "Hack Bold 22"
bar_style = "progress_bar_*.png"
highlight_style = "progress_highlight_*.png"
}+ hbox{
left = 30%
top = 90%
width = 10%
height = 25
+ label {text = "@VTOY_HOTKEY_TIP@" color = "white" align = "left"}
} + hbox{
left = 30%
top = 95%-25
width = 10%
height = 25
+ label {text = "@VTOY_MEM_DISK@" color = "red" align = "left"}
} + hbox{
left = 30%
top = 95%-50
width = 10%
height = 25
+ label {text = "@VTOY_ISO_RAW@" color = "red" align = "left"}
} + hbox{
left = 30%+200
top = 95%-50
width = 10%
height = 25
+ label {text = "@VTOY_GRUB2_MODE@" color = "red" align = "left"}
}+ hbox{
left = 30%+200
top = 95%-25
width = 10%
height = 25
+ label {text = "@VTOY_WIMBOOT_MODE@" color = "red" align = "left"}
}+ hbox{
left = 90%
top = 55
width = 10%
height = 25
+ label {text = "@VTOY_ISO_UEFI_DRV@" color = "red" align = "left"}
}
按照上边的步骤,基本配置完成,其他的配置参数可以查看对应的帮助信息,也可以进入Ventoy官网查看相关信息进行学习。