It would be handy, to have an USB stick that you can boot from, if your main hardware doesn’t boot anymore for whatever reason. It didn’t happen to me a long time, but better be prepared.

I came across a new tool called Ventoy. It’s also available on github: https://github.com/ventoy/Ventoy. It’s actually only new for me, it’s around for quite some time now. Time for me, to try it out for myself. Maybe it can replace my old howtos Creating a reusable debian usb install flash drive and Creating a Windows 10 USB installation stick.

Ventoy

Ventoy is a collection of tools, that make it easy to create a bootable USB stick. It contains bootloaders and it can start ISO images, that are placed on the filesystem. It supports many, many operating systems to boot. And since the ISO images are simply put onto the filesystem, they can easily be updated. It also provides a boot menu, since you can have multiple ISO images.

Booting from ISO images isn’t so straight forward. But Ventoy makes it easy. It uses many other tools to accomplish this: https://ventoy.net/en/doc_composition.html. Basically, it creates a virtual disk drive, that serves the ISO image. This is achieved by replacing some BIOS interrupts. However, once the operating system starts, it won’t use the BIOS anymore to read the boot medium. Since there is only a virtual disk, the OS fails to find the boot image. Therefore ventoy provides the information about where to get the boot medium at some specific location in memory. The OS then just needs to check this information blob to find the boot medium. Ventoy will therefore try it’s best to install a hook. And it seems to be very successful at this: Basically all relevant Windows versions are supported.

Preparing USB stick

Ventoy comes with a graphical tool to prepare the USB stick. Just follow the instructions on Start to use Ventoy.

I’ll choose the MBR partition style, so that the USB stick can potentially boot on older BIOS machines as well. GPT could be only used for UEFI machines. Ventoy will create two partitions, one big data partition formatted as exFAT and one hidden FAT32 EFI partition. The first bootloader is installed into the MBR of the usb stick.

installation screen

After the installation, one new empty disk is available called “Ventoy”. Now let’s fill it with ISO images.

Collection of images

I’ll first put onto the stick a rescue Windows system, based on Windows PE. This is from the German magazine c’t and contains a lot of useful helper programs: c’t-Notfall-Windows 2023. Note, that I used an older version.

And of course, a fresh copy of the first ISO image of Debian Testing.

Some other images:

  • Knoppix - a live Linux system
  • Clonezilla - The Free and Open Source Software for Disk Imaging and Cloning
  • GParted Live - GParted is a free partition manager that enables you to resize, copy, and move partitions without data loss.
  • ReactOS - a free and open source Windows compatible OS.
  • Ubuntu Desktop LTS - The new standard secure enterprise Linux for servers, desktops, clouds, developers and things.
  • Windows 10 installation ISO

Testing

Testing can be done either on real hardware or using qemu/libvirt. You’ll need to redirect the USB stick to your VM. Be patient, it might take a very long while until the OS boots…

Here are some screenshots:

ReactOS doesn’t seem to work. Sometimes you need to use grub2 mode instead of normal mode.

Conclusion

Very simple to install and setup. Will be definitely part of my toolbox.