Ade Malsasa Akbar contact
Senior author, Open Source enthusiast.
Wednesday, August 28, 2019 at 22:02

(Aguslr's Multiboot USB: the best GNU/Linux multiboot maker so far for me)

Just like previously I stated, after MultiSystem, Sundar's MultiBootUSB, and Thias' GLIM, finally I found Aguslr's Multiboot USB tool to create perfect multiboot OS pendrive that supports great number of GNU/Linux distros including openSUSE, CentOS, and Deepin. More than that, it also supports Android-x86 and even BSD family. Awesome, right? However, the setup of this tool is honestly difficult especially for us who are not familiar with command lines. But I present you here faster and easier setup with screenshots and example. Enjoy!

Subscribe to UbuntuBuzz Telegram Channel to get article updates directly.

List of Supported Distros


There are more than 100 different operating systems supported by Aguslr's MBUSB. You can see the full list here https://mbusb.aguslr.com/isos.html. However, all popular distros are supported including Slackware, Debian, Ubuntu, Fedora, openSUSE, even Gentoo, and more. Thanks to this, now, for me making a USB stick bootable with all big 10 of Distrowatch is not a dream anymore. Big thanks, Aguslr!

1. Download Multiboot USB


Get it from Aguslr's webpage https://github.com/aguslr/multibootusb. To download, simply click Clone button (green) and click Download ZIP button (blue). You will get an around 3MB file with .zip extension.

(GitHub repository of Agus Lopez aka Aguslr: downloading Multiboot USB tool)

2. Format the Pendrive


Use GNOME Disk Utility to format the USB stick with MBR and FAT of any size (or any other setup you like). Don't worry as the Multiboot USB script will later reformat it.

3. Install Required Packages


Two packages below are required to support BIOS and UEFI in Multiboot USB.
$ sudo apt-get install  grub-pc-bin grub-efi-amd64-bin

4. Install Mutiboot USB to your Pendrive


WARNING: be careful typing the USB stick address and don't make mistake or you may destroy data in HDD or other storages you have.

Run the shell script you will find it far more easier than doing the Arch Wiki's guide. The command I run for my 32GB USB stick is:
$ ./makeUSB.sh -b -e /dev/sdb ext4

Where /dev/sdb means my USB stick (find yours using GNOME Disk Utility), -b means enabling support for hybrid GPT/MBR and -e means enabling support for EFI on the USB stick. Yes here I deliberately don't determine the partition size as I found determining it --in my case-- could fail the process. This setup will use remaining space as the data partition of the USB stick.

Final result of the script process turned my USB stick into this configuration:
  • There are 3 partitions
  • Partition 1: BIOS boot partition (1MB)
  • Partition 2: EFI boot partition (1MB) (FAT32)
  • Partition 3: Data partition (31GB) (EXT4)

(Disk Utility viewing contents of the USB stick: first partition exists so it can boot on old computers, second one for latest computers, and third one to store your ISO images of course)

5. Copy ISO Images


This is the final setup. Copy ISO images of distros you wish to create multiboot for. I give you example here Ubuntu, Porteus, TinyCoreLinux.

Up to this point, your USB stick is ready to use.


(Copying process of several GNU/Linux ISOs into USB stick)

6. Testing


The best way I found is to boot the pendrive on other computer. It sure will look like below.

7. Testing (Virtual Machine)


If you don't have spare computer like me, instead of rebooting, you can run the pendrive as virtual machine with QEMU. Yes, my computer does not support virtualization (no Intel-VT) but I can use QEMU anyway. The pendrive runs on my desktop exactly as if I have spare computer.

(Testing a USB stick without rebooting is easy with QEMU (see my tutorial here))

The Secret


Why Aguslr's tool supports great number of distros? The secret is because it is loaded with great number of individual bootloader configurations. Each config runs a specific distro and each one may differ to other. They are hackable, meaning, we can edit one to make new support for distro we don't find on Multiboot USB, take example BlankOn that is actually based on Debian. You can mimic and adapt any configuration and have experiments with them for distros you love.

(Configuration files of this Aguslr's MBUSB)

Finally, I hope this is useful for you. Happy working!

References



This article is licensed under CC BY-SA 3.0.