Table of Contents
ventoy
Ventoy is an open source tool to create bootable USB drive for ISO/WIM/IMG/VHD(x)/EFI files. With ventoy, you don't need to format the disk over and over, you just need to copy the ISO/WIM/IMG/VHD(x)/EFI files to the USB drive and boot them directly.
You can copy many files at a time and ventoy will give you a boot menu to select them (screenshot). You can also browse ISO/WIM/IMG/VHD(x)/EFI files in local disks and boot them. x86 Legacy BIOS, IA32 UEFI, x86_64 UEFI, ARM64 UEFI and MIPS64EL UEFI are supported in the same way. Most types of OS supported (Windows/WinPE/Linux/ChromeOS/Unix/VMware/Xen…)
How To get ventoy on your USB flash drive
Download the installation package, like ventoy-x.x.xx-linux.tar.gz and decompress it.
mkdir -pv ~/repos/download/ventoy wget https://github.com/ventoy/Ventoy/releases/download/v1.0.91/ventoy-1.0.91-linux.tar.gz -O ~/repos/download/ventoy/ventoy-1.0.91-linux.tar.gz sha256sum -c ~/repos/download/ventoy/ventoy-1.0.91-linux.tar.gz tar -xzvf ~/repos/download/ventoy/ventoy-1.0.91-linux.tar.gz -C ~/repos/download/ventoy/
Attention that the USB drive will be formatted and all the data will be lost after install. You just need to install Ventoy once, after that all the things needed is to copy the iso files to the USB. You can also use it as a plain USB drive to store files and this will not affect Ventoy's function.
Run the shell script as root sh Ventoy2Disk.sh { -i | -I | -u } /dev/XXX XXX is the USB device, for example /dev/sdb.
# as root lsblk "$HOME"/repos/download/ventoy/ventoy-1.0.91/Ventoy2Disk.sh -i /dev/mmcblk0
Ventoy2Disk.sh CMD [ OPTION ] /dev/sdX CMD: -i install ventoy to sdX (fail if disk already installed with ventoy) -I force install ventoy to sdX (no matter 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 enable secure boot support (default is disabled) -g use GPT partition style, default is MBR style (only for install) -L Label of the main partition (default is Ventoy)
Copy Image files
After the installation is complete, the USB drive will be divided into 2 partitions. The 1st partition was formated with exFAT filesystem (You can also reformat it manually with NTFS/FAT32/UDF/XFS/Ext2/3/4 … See Notes). You just need to copy iso files to this partition. You can place the iso/wim/img/vhd(x) files any where. Ventoy will search all the directories and subdirectories recursively to find all the image files and list them in the boot menu alphabetically. Also you use plugin configuration to tell Ventoy only to search for image files in a fixed directory (and its subdirectories).
mount | grep Ventoy cp -av /home/<USER>/Downloads/systemrescue-9.04-amd64.iso /run/media/<USER>/Ventoy/ cp -av /home/<USER>/Downloads/kubuntu-22.04.1-desktop-amd64.iso /run/media/<USER>/Ventoy/
Update Ventoy
If a new version of Ventoy is released, you can update it to the USB drive. It should be noted that the upgrade operation is safe, all the files in the first partition will be unchanged. Upgrade operation is in the same way with installation. Ventoy2Disk.exe and Ventoy2Disk.sh will prompt you for update if the USB drive already installed with Ventoy.
# as root /home/<USER>/repos/download/ventoy/ventoy-1.0.80/Ventoy2Disk.sh -u /dev/sdb