Installing multiple operating systems on a USB storage device

USB sticks with 64GB and even 128GB capacity have become very affordable. Their large storage capacity makes it possible to simultaneously use multiple operating systems that sit on a single stick. It doesn't matter whether you need several specialized live systems for administration on the Internet or whether you want to access the Internet anonymously. With the help of MultiSystem, the desired operating systems are automatically loaded on a USB stick together with a bootloader that also gets correctly configured without the need for any further effort on your part.

Preparations

MultiSystem software is distributed under the GPLv3 and has undergone continuous development for some years. It is available as an ISO image based on Ubuntu [1] for downloading from SourceForge. There are also a variety of versions to choose from. In addition to a number of older versions, there are two 1.3GB ISO images for 32-bit and 64-bit systems. These are based on Ubuntu LTS 16.04 (Xenial Xerus). The source code is available on the project page – which, be warned, is entirely in French [2]. You can also find the software in some of the repositories for Debian and Ubuntu plus their derivatives. You can integrate these software archives in your system and then install the program (see the Adding MultiSystem Repositories box).

Adding MultiSystem Repositories

MultiSystem can also be installed from your own repository. Debian and its derivatives, plus Ubuntu and its variations like Linux Mint, receive support here. If you switch to a terminal for integrating the repository on your system, you should execute the command:

sudo apt-add-repository ,deb http://liveusb.info/multisystem/depot all main'

Then you should import the accompanying public key with:

wget -q -O - http://liveusb.info/multisystem/depot/multisystem.asc | sudo apt-key add -

The next step is to update the package list with:

sudo apt-get update

Now you can install the software with:

sudo apt-get install multisystem

This procedure is suitable for Ubuntu and its derivatives and also for all of the distributions that are directly related.

Since some dependencies exist but relevant directions are partly only in French, it is a good idea to use the ISO image that comes with a completely preconfigured environment. You will have to burn this to an optical data storage device (i.e., a DVD). The ISO image is not constructed as a hybrid. Therefore, it is not possible to use the software on a USB memory stick.

In addition to putting the software onto a data storage device and installing it on an existing Linux operating system, you will need to check out your chosen USB stick for storing the various operating systems. The USB stick's device name should not include any blank spaces. Otherwise, the software will generate an error message and refuse to operate. If you do use a memory stick with a name that includes blank spaces, then you will have to rename it. The easiest way to do this is to use the graphical tool GParted. After you have selected the given stick in its program window, you should right-click on the target partition and select the entry Label File System from the pop-up menu. Then you should enter a new name that does not include any blank spaces and confirm the name by clicking OK . You should make sure that the relevant data device has been unmounted before carrying out this task. Once you are finished, the USB stick is ready to use (Figure 1).

Figure 1: GParted helps you easily rename the target data storage device.

When larger memory sticks are involved, you will also need to make sure that they contain just a single partition. This is because MultiSystem only recognizes and speaks to a storage device's first partition. When additional partitions exist on a flash stick, then it becomes impossible to use all of the capacity.

Getting Started

Now you should restart your system from the DVD containing the MultiSystem distribution. A typical Ubuntu desktop will open where you will see that MultiSystem has already started automatically. The system automatically recognizes the stick here and lists it in the program window. If you have mounted multiple USB sticks on your system, then all of them will be listed, and you will be asked to select the stick that is intended for use with MultiSystem. The window will first appear in English. You can localize to your language of choice with a single click on the button sitting to the right of the flag icon at the top right of the window. The system will change the language accordingly for the user interface (Figure 2).

Figure 2: MultiSystem in Ubuntu is embedded in a live system.

MultiSystem supports a large number of Linux derivatives and also many other operating systems. These can be transferred to the USB stick with a bootloader script that has been adapted to each. The list of supported distributions can be found on the project website [3]. The list also contains some distributions that are no longer offered, such as the Brazilian Dreamlinux, as well as distributions that are no longer developed like the Russian Inquisitor Linux. Additional systems that are new and have recently been derived from existing distributions, for example Kolibri Linux, are missing from the list. Consequently, the collection you see is merely a rough overview.

On the Stick

After selecting the USB memory stick by clicking on its name, you should then click on the Confirm button in the lower right of the windos. First, the bootloader GRUB2 is written to the master boot record (MBR) on the stick. Next, the memory stick's configuration interface opens in the program window. You will see the distributions and operating systems that are sitting on the stick at the top of the window. At the bottom of the window, you will see an entry field for loading a new ISO image. If you have already downloaded ISO images from the Internet and stored them locally, then all you need to do is open a file manager and drag the ISO image to the Drag and Drop ISO/img entry field in MultiSystem. The routine immediately starts the transfer of the image to the stick. Another window will open that shows the progress for the transfer (Figure 3).

Figure 3: Instead of a progress bar, there is a terminal window that displays the individual steps of the transfer routine as it runs.

If it turns out that MultiSystem is unable to handle a particular ISO image, then it will show an error message, interrupt the routine, and stop (Figure 4). The program then returns to the input window. If the ISO image has been successfully transferred, then the operating system derivative appears at the top of the program window in the form of a small icon together with the name.

Figure 4: An error message indicates that the system does not recognize a distribution.

This is also where you will be able to see the size of the image that is on the USB stick, as well as the bootloader that is used. You can use this information to figure out whether there is enough space remaining on the flash stick for additional distributions. In the middle part of the window, gray-colored text informs you how much of the stick's memory is occupied and how much is still available (Figure 5).

Figure 5: You can go to MultiSystem's home screen at any time to figure out what is on the stick.

If various bootloaders are used, then these will automatically be integrated in the GRUB2 start menu. This lets you call the pertinent operating system without any problems when booting the computer from the stick.

In addition, MultiSystem has a function designed to let you conveniently install the desired operating system on the stick. If you have not downloaded the necessary ISO images from the Internet, you can call up a list of supported operating systems and distributions by clicking once on the Download Live-CDs: button in the Menu . Moreover, you can even filter and display these by topic with the Audio , Utility , Antivirus , and Gamer buttons. Double-clicking on one of the systems loads Firefox with the corresponding web page, thus saving you from having to find the appropriate source by yourself (Figure 6). The Back Home button at the lower right takes you back to the start window.

Figure 6: MultiSystem can also download ISO images from the Internet.

Persistence

With live systems, it is usually not possible to save the user's settings and personal documents. However, MultiSystem offers an option by which you attach a persistent area. This lets you use the live medium like standard bulk memory. To do this, go to the main window and select the distribution to which you want to add a persistent memory area. Next select Add persistent mode from the Menu tab. Then you can define the size of the persistent memory in the subsequent window. The changes will be automatically saved to the bootloader. This means that the system will boot with persistent memory the next time you start it.

You should be aware that a fair number of the distributions listed do not support a persistent memory mode. MultiSystem will notify you with a special window if it is not possible to modify the system in this way.

Safe is Safe

Setting up a larger flash memory with MultiSystem can take a great deal of time when the memory contains numerous operating systems, especially if some have been configured with persistent memory. The loss of a prepared stick can be very annoying. This is likewise the case when a defect that causes the loss of data. MultiSystem offers a backup and restore option for quickly reconstructing USB memory. You can find this option in the Menu . Clicking on the Backup/Restore button opens a window that lets you set a radio button for backing up and restoring removable media (Figure 7).

Figure 7: You can back up a USB stick or restore it with just a few mouse clicks.

A backup can run with a file manager's help in the directory of your choice. Restoring the medium requires that you pay attention to the drive. This is because multiple removable media may be mounted on the system. Errors in assigning the drive may destroy data since the routine overwrites existing files on the target storage device.

Test Run

MultiSystem comes with a number of routines for testing a newly set-up system's functionality. As a result, you can use them on virtual Linux systems like KVM/Qemu or VirtualBox. With many distributions, the latter can be conveniently installed from the repositories. In order to proceed with testing, you should select the Boot tab in the MultiSystem's program window. Out of the list of options that appears, you should choose one of two buttons, either Test your liveusb in Qemu or Test your liveusb in VirtualBox (Figure 8). Both of these options start a ready-to-use, preconfigured virtual machine, and they open the MultiSystem stick in a terminal window. Once this occurs, you can start the operating system you want to test from the GRUB boot manager on the stick.

Figure 8: The Boot menu has a start option.

Should problems occur, you can test individual ISO images that have been used to generate an operating system on the MultiSystem stick by selecting the Try a LiveCD in VirtualBox option in the Boot tab. Then drag and drop the ISO image you would like to test from a file manager to the entry field for the test routine. The image then starts.

Adaptable

There are several options you can use to customize MultiSystem after installation. Go to the program home screen and click on the eye icon that sits to the left of the distribution list. A multi-column area with a variety of buttons will appear on the right side of the screen. The arrow buttons let you move individual entries in the GRUB start menu up or down so that you can arrange the distributions in a convenient sequence. In addition, the GRUB settings button has a number of settings with which you can determine how the start menu should look. For example, you can change the colors for the menu and the background.

The Add a boot option (cmdline) button lets you set customized parameters for each start entry. A special window will appear once you choose this button. It contains several options for the transfer to the boot process already displayed. An option becomes active once it is checked. The entry field you see will also let you configure start parameters to the system for specialized hardware that you would prefer to use with the MultiSystem stick (Figure 9).

Figure 9: Using parameters, you can also modify the GRUB boot manager for the loading of the operating system.

Start Support

When using the MultiSystem stick on older computer systems, you run the risk that the computer and stick cannot talk to one another. Older computers do not have sufficient capabilities for starting from USB media. If this is the case, it can help to generate a boot CD that then talks to the USB. The PLop boot manager is suitable for this task. This manager is available for download in the Non-free tab in the MultiSystem program window.

Switch to the Boot tab and click on the button Create a CD to start USB . The software will now generate a small ISO image, which you should burn to a blank CD. Then you should insert the MultiSystem flash stick into one of the USB ports on the target computer and put the CD into the optical drive. The computer will start the CD. The PLop boot manager that the CD loads provides the computer with access to the MultiSystem stick and lets it boot the desired distribution.

Additional Uses

The Menus tab contains some additional buttons in the right column. These make using MultiSystem easier. For example you can open a terminal in order to quickly execute commands on the command line without having to trouble your distribution's menu structure. The Format your USB key deletes data from a memory stick that you have used previously and automatically sets up a single partition. This is particularly useful when you use larger memory sticks that have multiple partitions. Since MultiSystem only recognizes the first partition on a data storage device, it is absolutely necessary that all other partitions be deleted so that the entire stick is available for use with the tool. The Install VirtualBox option lets you download the virtual environment VirtualBox directly from Oracle, its manufacturer, and put it on your bulk memory. This is helpful when you can't find this program in your Linux distribution's repositories.

Conclusion

MultiSystem finally makes mobile use of various operating systems possible without time consuming installation on internal bulk storage. However, the software still has a few defects. The program is fixated on Ubuntu and Debian. Therefore, users of other Linux derivatives will need to put the complete Ubuntu system on an optical data storage device in order to use MultiSystem. This process is inconvenient and takes more time than when you are dealing with software that has been integrated into an installed operating system. The list of supported distributions also needs some reworking. It contains distributions that have not been available for a long time. Other available distributions are not included on the list or some that do appear are no longer supported. It would also be a good idea if the French language project website were also available in other languages. Many users shy away from using what is a very useful tool because they do not want to have to deal with French.