Home Command line utilities How To Create Multiboot USB Drives With Ventoy In Linux
How To Create Multiboot USB Drives With Ventoy In Linux

How To Create Multiboot USB Drives With Ventoy In Linux

By sk
8356 Views

Ventoy is a free, open source and cross-platform program to create multiboot USB drives in Linux and MS Windows. You don't need to format your USB devices over and over. Just create a bootable USB drive once and add as many as ISOs you want in future. Ventoy will automatically create the menu entries for the newly added ISOs and add them to the boot menu. Once you created the multiboot USB, boot your system with the USB drive, select the ISO you want to load and start using it in no time. It is that simple!

Features

Ventoy ships with dozens of useful features as listed below.

  • Very easy to install and use.
  • Fast (limited only by the speed of copying iso file).
  • You don't need to extract the ISOs. Just boot from the ISO file directly.
  • It supports Legacy + UEFI.
  • Supports UEFI Secure Boot.
  • Persistence storage support.
  • You can create bootable drives with ISO files larger than 4GB.
  • Almost all type of OSes are supported. The developer claims more than 200 ISO files have been tested with Ventoy.
  • Auto installation supported. Meaning - you can add your template or script for unattended deployment. For instance, kickstart script for Redhat/CentOS, autoYast xml for SUSE, preseed script for Debian. Put a script or template in the USB drive and tell ventoy to use it for unattended installation. You can also update these scripts at any time. No need to create a new ISO file, just use the original ISO.
  • Read-only to USB drive during boot.
  • The normal usage of USB drives is unaffected. Meaning - you can use the USB drives for other purposes (E.g. File copy)
  • Upgrade Ventoy when a new version is available without recreating the bootable USB drive again. Data nondestructive during version upgrade.
  • No need to update Ventoy when a new distro is released.
  • To add a new OS, just copy/paste the ISO into the USB drive. No need to start all over again.
  • Supports Memdisk mode. On some machines the ISOs may not load. In such cases, you can use Memdisk mode. In this mode, Ventoy will load the whole ISO file into memory and then boot it.
  • Plugin Framework.
  • Native boot menu style for Legacy & UEFI.
  • Cross-platform. It supports Linux and Windows.
  • Free and Open source!!

Create Multiboot USB Drives With Ventoy In Linux

First, you need to find your USB drive name. Refer the following guide to learn different ways to find disk drive details in Linux.

I am going to use fdisk command to find my USB drive details:

$ sudo fdisk -l

Sample output:

[...]
Disk /dev/sdc: 14.54 GiB, 15597568000 bytes, 30464000 sectors
Disk model: Cruzer Blade    
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x4d924612

As you can see, my USB drive name is /dev/sdc.

Next, download the latest Ventoy script from the releases page. As of writing this guide the latest version was 1.0.10.

Go to the location where you downloaded the script and extract it. I have extracted it in a folder named "ventoy" in Desktop. Cd into the Ventoy directory:

$ cd ventoy

Now, run the following command to create multiboot USB drive:

$ sudo sh Ventoy2Disk.sh -I /dev/sdc

Replace "/dev/sdc" with your USB drive name.

Here, the uppercase "I" will force install ventoy to sdc (no matter installed or not). If you use lowercase i, it install ventoy to sdc and fail if disk is already installed with ventoy.

To enable secure boot support, use -s flag. By default, this option is disabled.

$ sudo sh Ventoy2Disk.sh -I -s /dev/sdc

You will be prompted to confirm the USB bootable creation process. Double check the USB drive name and type Y and press ENTER to continue:

Sample output:

***********************************************************
*                Ventoy2Disk Script                       *
*             longpanda  [email protected]                 *
***********************************************************

Disk : /dev/sdc
Model: SanDisk Cruzer Blade (scsi)
Size : 14 GB

Attention:
You will install Ventoy to /dev/sdc.
All the data on the disk /dev/sdc will be lost!!!

Continue? (y/n)y

All the data on the disk /dev/sdc will be lost!!!
Double-check. Continue? (y/n)y

Create partitions on /dev/sdc by parted ...
Done
mkfs on disk partitions ...
create efi fat fs /dev/sdc2 ...
mkfs.fat 4.1 (2017-01-24)
success
mkexfatfs 1.3.0
Creating... done.
Flushing... done.
File system created successfully.
writing data to disk ...
sync data ...
esp partition processing ...

Install Ventoy to /dev/sdc successfully finished.

How To Create Multiboot USB Drives With Ventoy In Linux OS

After a few seconds, the multiboot USB drive will be created. The above command will create two partitions. You can verify it with fdisk command:

$ sudo fdisk -l

Sample output:

Disk /dev/sdc: 14.54 GiB, 15597568000 bytes, 30464000 sectors
Disk model: Cruzer Blade    
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x9f2f0556

Device     Boot    Start      End  Sectors  Size Id Type
/dev/sdc1           2048 30398463 30396416 14.5G  7 HPFS/NTFS/exFAT
/dev/sdc2  *    30398464 30463999    65536   32M ef EFI (FAT-12/16/32)

Now open your file manager and copy the ISO files in the first partition. Don't worry if you can't find which one is the first partition. Your file manager will display the first partition only.

Copy ISO files to USB bootable drive created with Ventoy

Alternatively, go to the location where you saved ISO files and copy all ISO files from command line with rsync like below:

$ rsync *.iso /media/$USER/ventoy/ --progress -ah

Please note that in some Linux distros, the USB might be mounted under "/run/media/" location.

Done! We have just created multiboot USB drive with Ventoy.

Boot your system with USB drive and you will be pleased with the Ventoy boot menu:

Ventoy multiboot menu

Choose the OS that you want to boot and hit ENTER to load it!

Here is the short visual demo of multiboot USB flash drive created with Ventoy:

Cool, isn't it? Indeed!

If you want to boot the USB in Oracle Virtualbox, refer the following guide:

Load ISO images to RAM

Like I already mentioned, the ISO images may not boot in some machines, especially in Legacy BIOS mode. Here is where "Memdisk" mode comes in help. When Memdisk mode is enabled, Ventoy will load the whole ISO image file into memory and boot it from there.

To enable Memdisk mode, press F1 key before selecting the OS. You will see the notification on the top right corner when the Memdisk mode is enabled.

Enable Memdisk mode in Ventoy

Now the ISO will be loaded to memory:

Load ISO to memory in Ventoy

To switch back to normal mode, press F1 key again.

Creating persistent bootable USB

We know now how to create multiboot USB drives with Ventoy in Linux. Using this bootable USB, we can test the Linux distributions without actually having to install them on the hard drive. When you are on the Live OS, you can do all sort of things, such as installing applications, downloading files, playing media, creating files and folders, customizing it as per your liking and a lot more. However once you reboot the system, all of the said changes will be gone. If you want to make all changes remain intact even after rebooted the system, you should create a persistent bootable USB drive.

Ventoy can able to make persistent USB bootable drive. To know how to do it, refer the link given below.

Conclusion

Believe or not, Ventoy is one of the easiest, quickest and ingenious tool ever I have used to create multiboot (persistent and non-persistent) USB flash drives in Linux. It just works out of the box! Give it a try. You won't be disappointed!

Security concerns related to Ventoy

The Ventoy website, forum and some files hosted in that site have been flagged as Malware/Trojan by some Antivirus software. Check the issues posted in the project's GitHub page:

However, Manjaro packager "Linux Aarhus" has argued after code review why there is no reasonable doubt on the security aspects of this application. He claims "there is no obfuscated code". So, I guess Ventoy is safe to use. Please check this link to read the full discussion:--> https://forum.manjaro.org/t/community-ventoy-compile-from-source/143714/6


Related read:


Resources:

Thanks for stopping by!

Help us to help you:

Have a Good day!!

You May Also Like

11 comments

Sathish May 27, 2020 - 5:40 pm

This is useful.
Thank you for sharing.

Reply
Jules Randolph June 5, 2020 - 5:06 pm

(author of AUR comment) I think you can remove the caution note. Manjaro packager Linux Aarhus has argued after code review why there is no reasonable doubt on the security aspects of this application: https://forum.manjaro.org/t/community-ventoy-compile-from-source/143714/6
I also edited the AUR comment to reflect the conclusions of his code review. Thank you.

Reply
sk June 5, 2020 - 5:32 pm

I removed your comment. Thanks for your update.

Reply
Jules Randolph June 5, 2020 - 6:08 pm

Also, I added a comment in this very thread that showed virus detections in VT shrank from 19 to only 2 in the latest release. I really think it’s safe 🙂

Reply
Roberto June 24, 2020 - 6:50 am

Thanks for the clear instructions. I tried many other options, but none of them worked properly. Ventoy works like a charm. It’s exactly what I was looking for. I’m glad I found your tutorial 🙂

Reply
Jim September 25, 2020 - 10:59 pm

Thank you for writing such an easy to follow tutorial. You rock!

Reply
Rod October 20, 2020 - 8:51 pm

attempts to install ventoy to usb via raspberry pi 4 have failed
error message – some tools can not run in current system. please check log.text – which says hex dump fail ???

im a newbi at all this

Reply
sk October 20, 2020 - 10:24 pm

Please check the solution posted in Ventoy issue tracker -> https://github.com/ventoy/Ventoy/issues/70

Reply
youareadu deperfect October 22, 2020 - 12:04 am

great tutorial…thanks from id 🙂

Reply
Rod October 25, 2020 - 5:25 pm

tried to install on raspberry pi 4 get error
./tool/ventoy_lib.sh: line 55: ./tool/mkexfatfs_32: cannot execute binary file: exec format error

Reply
sk October 25, 2020 - 10:09 pm

Never tried Ventoy in Raspberry Pi. Please post the issue in Ventoy GitHub. Good luck.

Reply

Leave a Comment

* By using this form you agree with the storage and handling of your data by this website.

This site uses Akismet to reduce spam. Learn how your comment data is processed.

This website uses cookies to improve your experience. We'll assume you're ok with this, but you can opt-out if you wish. Accept Read More