2010-04-10

How to Make a Multiboot Live USB: Revision 1

I realized that I've written this article twice before, so I'm going to title subsequent rewrites "Revision 2", "Revision 3", etc.
This time should be easier as there is no command line involved.
The USB flash drive involved is still an 8 GB Sandisk Cruzer Micro.
I still did this on Linux Mint 7 "Gloria" GNOME.
The distributions used are Sabayon 5.2 KDE, SimplyMEPIS 8.5 KDE, CrunchBang (often abbreviated "#!") 9.04.01 Openbox, and Linux Mint 7 "Gloria" Xfce. I could not find a suitable GNOME distribution that was not Ubuntu or Fedora that could be put onto a live USB with Unetbootin (many now use the "dd" command, which does not allow for multibooting - more on that later; also, I tried putting on Linux Mint 7 "Gloria" GNOME, but for some reason it wouldn't work with Unetbootin, though it has in the past). Also, with the hubbub about GNOME Shell, I am now staying away from newer versions of GNOME.
Follow the jump to read the rest.


The partitioning is pretty simple with GParted or a similar front-end (e.g. QtParted) to the GNU Parted partition editor. It is, frankly, a truly amazing tool.
The first partition should be a FAT32 primary partition of size 2.14 GiB (not GB; the terminology is not entirely consistent as 1 GB is 10^9 B, while 1 GiB is 2^30 B, as far as I know; this also means that the 8 GB drive is listed as 7.51 GiB - the difference is significant at that scale). An extended partition should take up the rest of the space.
For some reason, no distribution could be installed in the first logical partition within the extended partition. Thus, first make a small (I made it around 100 MiB) "dummy" EXT3 logical partition at the beginning. Then, make 3 separate successive 750 MiB EXT3 logical partitions afterwards. Fill the remaining space with one final EXT3 partition.
The partitioning is done. Wasn't that easy?
If you haven't already done so, download the Sabayon 5.2 KDE full installation DVD as well as the live CDs of SimplyMEPIS 8.5 KDE, #! 9.04.01 Openbox, and Linux Mint 7 "Gloria" Xfce. Also, if you have not already done so, install Unetbootin. It is available in APT for Debian and Ubuntu users (and probably also Synaptic for PCLinuxOS, though that implementation of Synaptic is as a front-end for the RPM package format). Taking the drive as a generic '/dev/sdX', the partitions that will be used are '/dev/sdX1', '/dev/sdX6', '/dev/sdX7', and '/dev/sdX8'.
First, use the "Disk Image" option in Unetbootin to [locate and] write the Sabayon live DVD ISO image to '/dev/sdX1'. You have the option to reboot immediately or exit the program, rebooting at a later time. When reboot does occur, change the BIOS to boot from USB (assuming the BIOS has that capability) and then save the changes and exit. The computer will reboot again and load the EXTLinux boot loader. Sabayon has some funky background music when booting, but there is a boot option to turn the music off when booting.
Once it has been verified that Sabayon has been installed and works properly, restart the computer and revert the BIOS to boot from the hard drive.
Repeat this process for MEPIS in '/dev/sdX6', #! in '/dev/sdX7', and Mint in '/dev/sdX8'.
Congratulations, you now have a working multiboot live USB! The only issue is that there is no boot menu that shows all the distributions installed when booting - that would require a lot more work. If you want to do that, though, go for it!
I want to end, though, with talking about the "dd" command. It basically allows one to install a distribution on an unformatted USB drive, as a large number of drives (though certainly not all) come unformatted. The problem is that because there is no formatting (there technically is, but the format is so old and primitive that GParted considers it "unformatted"), there is also no possibility of making a multiboot live USB. The sad trend is that more and more distributions are moving away from USB support through Unetbootin to USB support through "dd". That means that this kind of thing can't happen anymore. It saddens me.