Creating multiboot-capable USB sticks

Many Boots

Article from Issue 261/2022
Author(s):

A USB stick holding all the distributions you need can be a useful mobile toolbox. This month we explore three tools for creating multiboot-capable memory sticks.

Live boot has been part of the Linux scene for many years. The idea behind live boot is simple but very powerful: Carry the operating system with you wherever you go, and when you need it, plug it in and boot to it. Live systems let you test out an operating system before you install, which is why several common Linux distros offer pre-built live DVD images. Perhaps the most famous use for Live systems is troubleshooting. If a hard drive failure or a corrupt configuration file prevents the installed system from booting, you can boot to a live disc and start searching for the source of the trouble. Distros such as Knoppix and SystemRescueCd became famous as tools for system administrators to carry with them when called to rescue failed computers.

Old-school live systems traveled around on a CD or DVD – typically read-only media, which was a limitation on their suitability for everyday use. In the age of USB sticks, live systems have become more flexible. Support for persistence means you can customize the system in ways that were not possible with the older generation. USB sticks have also eliminated the strict size limitations that affect CDs and DVDs. USB sticks come in an assortment of sizes, and some are bigger than hard drives were in the not-so-distant past.

The large size and flexibility of USB sticks has led to another important innovation in live Linux. The first USB-based live systems were modeled on the previous CD/DVD model. You burned a system image to the stick, then started the system with the disc in place to boot the image. The best of the new live boot tools take the technology to another level. These tools basically load a boot manager onto the USB stick, then let you copy multiple system images onto the disc. You can therefore boot multiple operating systems from the same USB stick.

You might be wondering why someone would want to store multiple boot images on the same USB stick. It doesn't take long to imagine scenarios where you might wish to customize system images for different roles, such as for home or work. Or wholly different distros: Perhaps a game distro for your leisure time and a rescue distro for your day job in IT?

As before, the IT industry still has a special need for the troubleshooting powers of portable live distros, and multi-book discs offer an important benefit. You can store images for different hardware systems on a single disc – or carry one image for EFI systems and one for BIOS systems. The possibilities are endless.

Innovations in persistence and multiboot mean that live Linux is a viable option for users who might not have considered it in the past. This month we examine some of the leading live multiboot options. We'll start with Ventoy, a free tool that supports a wide array of image formats, hardware platforms, and Linux distributions. Then to round out the story, we'll introduce you to a pair of other leading candidates: MultiBootUSB and MultiSystem.

Read on for a look at multiboot for USB and Linux, but keep in mind that, if you want to try these tools for yourself, you need to make sure your system is configured to support USB boot (see the box entitled "Enabling USB Boot").

Enabling USB Boot

Early PCs often booted with a floppy disc. When hard disks entered the mainstream, floppy boot stayed around and was often the best way to rescue the computer when a configuration error made the hard disk system unbootable. CDs and DVDs later replaced floppies as the leading removable storage options, giving rise to the live Linux systems we know today.

A setup menu that configures your computer's firmware tells the hardware the order of preference for where to look for the operating system. If your computer won't boot to a USB drive, consult your computer vendor documentation to find out how to access the setup menu, and check to ensure that the USB boot is enabled – and that the boot order is configured so that the system will check the USB drive before booting from somewhere else. If you watch the screen when your system first starts, you might see a message with instructions for how to access the setup menu.

Changing the boot order was relatively easy back in BIOS days, but today's UEFI systems can be a bit more complicated. The Ventoy developers, for instance, say that Ventoy supports UEFI secure boot, but secure boot mode isn't reliable enough yet, and so it is disabled by default [2]. If you are using a multiboot tool that disables or doesn't support secure boot, you'll need to disable secure boot in the setup menu.

Ventoy

Ventoy [1] prepares USB memory sticks for storing bootable operating system images. It does not matter whether the images are in different formats – or are for EFI or for BIOS boot systems. In addition to supporting different formats, Ventoy also supports different partitioning schemas: MBR or GPT. The project has already tested over 800 candidates.

Ventoy creates two partitions on all USB removable media. The first partition uses the exFAT format and stores the operating system images. The second partition is a FAT partition that contains the EFI boot loader.

Getting Started

The graphical version of Ventoy requires the Gtk or the Qt framework. Ventoy also has a command-line variant, as well as a version with a web-based interface. In addition to Intel-compatible 32-bit and 64-bit hardware, Ventoy also supports the ARM64 architecture. The free tool is available for download as a tarball containing all the versions mentioned. There is also an ISO image of around 186MB for use on optical media [3].

After downloading and unzipping the tarball, change to the ventoy-1.0.65/ folder. This folder contains several subdirectories and the individual program packages. To launch the tool with a graphical user interface on a 32-bit computer, open a terminal and type ./VentoyGUI.i386. On a state-of-art 64-bit system, you need ./VentoyGUI.x86_64. You can call the web-based interface by typing ./VentoyWeb.sh. In all cases, you will see the program window after authentication, and the controls are identical in each case (Figure 1).

Figure 1: The Ventoy program window.

The program window lists the removable media it found at start time in a selection box in the Device section. Below the device display, the window shows the Ventoy version running locally and, if present, the version running on any attached USB stick. In the next step, select the device on which you want to place the operating system images.

After you press the Install button, a warning message appears, telling you that the routine will delete all data on the removable disc. After pressing OK to confirm, Ventoy prepares the stick, displaying a progress bar. After completing the install, you will now also see the current version number of the software in the Ventoy (device) area in the main window.

To use the removable disc, which Ventoy has now prepared, simply copy the operating system images to the visible partition of the storage medium. You can include images for different hardware architectures. The number of systems that can be used is only limited by the size of the removable disc. Even images with a size of more than 4GB will not worry Ventoy, which simply leaves the images in their original form on the mass storage device and reads the information required for starting up the system directly from the files without unpacking the image.

After copying the images to the removable disc, select the disc as the boot medium the next time you start the computer. The EFI boot loader that then launches opens a Grub boot menu that lists all the distributions copied to the medium one below the other. Use the arrow keys to select the desired operating system and then press the Enter key to boot the image. Depending on what this image is, you will see either the Grub boot menu preset for the distribution or a prompt at which you can specify further options.

Updates

If you want to update individual operating system images in place on the Ventoy medium, simply delete the outdated image from the removable disc and copy the new one to it.

You can also manage several different versions of the same operating system in parallel without them getting in each other's way. Ventoy generates a separate entry in the boot menu for each individual image. The entries update automatically each time the system is booted so that you will always see all the existing systems.

Buy this article as PDF

Express-Checkout as PDF
Price $2.95
(incl. VAT)

Buy Linux Magazine

SINGLE ISSUES
 
SUBSCRIPTIONS
 
TABLET & SMARTPHONE APPS
Get it on Google Play

US / Canada

Get it on Google Play

UK / Australia

Related content

comments powered by Disqus
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters

Support Our Work

Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.

Learn More

News