Create multiboot live Linux on a USB disk...


Only limited instructions are provided here. For detailed instruction please refer User guide

What is multibootusb?

MultiBootUSB is a cross platform* software/utility to create multi boot live Linux on a removable USB disk. It is similar to UNetbootin but many distros can be installed, provided you have enough space on the disk. MultiBootUSB also provides an option to uninstall distro(s) at any time, if you wish.

  • Only works on windows and linux

What does multibootusb do?

MultiBootUSB allows you to do the following:

  1. Install multiple live Linux and other Operating Systems to a USB disk and make it bootable without erasing existing data.
  2. Ability to uninstall installed OS later.
  3. Write ISO image directly to a USB disk (you can think of GUI for Linux dd command).
  4. Boot ISO images directly without rebooting your system using QEMU option.
  5. Boot bootable USBs without rebooting your system using QEMU option.
  6. Boot USB on UEFI/EFI system through GRUB2 bootloader (limited support).


  • On Windows:

    • The windows version of multbootusb is not a standalone program. You need to install it on windows after download. Download the latest precompiled setup binary (.exe) file from here
    • The installation is fairly simple. Double click on the executable and follow the onscreen instructions.
  • On Linux:

    Using binary method:

    • Download the installation and source files for various distros from here
    • Use your favourite package manager to install multibootusb.

    Using source code method:

    • Please follow the instructions provided here

For the rest of the guide please refer Guide section of




Use Github issue service at for help and issues.


Ian Bruce
LiQiong Lee
Alin Trăistaru (alindt) Shinji Suzuki
and many others who have given their valuable bug report/ feedback.


MultiBootUSB is brought to you by Sundar and co-authored by Ian Bruce.

  • crash on start

    crash on start

    Hi all I am now on open86_64.

    The application ask to my password but don't start by menu.

    I tryed to launch it in a terminal:

    Traceback (most recent call last):
      File "/usr/local/bin/multibootusb", line 84, in <module>
      File "/usr/local/bin/multibootusb", line 46, in running_from
        gen.log('Running multibootusb version ' + gen.mbusb_version() + ' from installed system...')
      File "/usr/local/lib/python3.4/dist-packages/scripts/", line 44, in log
      File "/usr/lib64/python3.6/logging/", line 1781, in basicConfig
        h = FileHandler(filename, mode)
      File "/usr/lib64/python3.6/logging/", line 1030, in __init__
        StreamHandler.__init__(self, self._open())
      File "/usr/lib64/python3.6/logging/", line 1059, in _open
        return open(self.baseFilename, self.mode, encoding=self.encoding)
    PermissionError: [Errno 13] Permission denied: '/tmp/multibootusb.log'

    so, I try to launch it with sudo:

    sudo multibootusb
    [sudo] Mot de passe de root : 
    sudo: multibootusb : commande introuvable (command not found)

    So I enter in my terminal in root with sudo -s

    Running multibootusb version 8.7.1 from installed system...
    Traceback (most recent call last):
      File "/usr/local/bin/multibootusb", line 147, in <module>
      File "/usr/local/bin/multibootusb", line 73, in start_ogui
        from scripts import mbusb_gui
      File "/usr/local/lib/python3.4/dist-packages/scripts/", line 13, in <module>
        from PyQt5 import QtCore, QtGui, QtWidgets
    ModuleNotFoundError: No module named 'sip'

    I tryed to install dependencie python3-pyqt5 parted mtools python3-dbus, and by asking on irc chan, i finaly install python3-dbus-python at the place of python3-dbus, and python-qt5-utils at the place of python3-pyqt5.

    But there is no way, this change nothing in my errors :(

    opened by PowaBanga 34
  • Multiboot USB boots to GRUB CLI only, no menu

    Multiboot USB boots to GRUB CLI only, no menu

    OS: 4.13.0-kali1-amd64 #1 SMP Debian 4.13.13-1kali1 (2017-11-17) x86_64 GNU/Linux MultiBootUsb linux version 8.9.0 64 gb alcor flash drive, prevously low-level formatted, checked for errors and formatted to fat32 single primary partition with boot flag

    Issue: boots to GRUB command line, no menu

    When checking inside program all works ok - menu shows up, but not working in real boot from usb

    ls output:

    (ahci0) (ahci0,gpt3) (ahci0,gpt2) (ahci0,gpt1) (proc)


    This file is created by MultiBootUSB.

    default vesamenu.c32 prompt 0 menu title MultiBootUSB MENU BACKGROUND /multibootusb/bg.png TIMEOUT 300 MENU WIDTH 80 MENU MARGIN 10 MENU PASSWORDMARGIN 3 MENU ROWS 12 MENU TABMSGROW 18 MENU CMDLINEROW 18 MENU ENDROW -1 MENU PASSWORDROW 11 MENU TIMEOUTROW 20 MENU HELPMSGROW 22 MENU HELPMSGENDROW -1 MENU HIDDENROW -2 MENU HSHIFT 0 MENU VSHIFT 0 MENU COLOR border 30;44 #40ffffff #a0000000 std MENU COLOR title 1;36;44 #9033ccff #a0000000 std MENU COLOR sel 7;37;40 #e0ffffff #20ffffff all MENU COLOR unsel 37;44 #50ffffff #a0000000 std MENU COLOR help 37;40 #c0ffffff #a0000000 std MENU COLOR timeout_msg 37;40 #80ffffff #00000000 std MENU COLOR timeout 1;37;40 #c0ffffff #00000000 std MENU COLOR msg07 37;40 #90ffffff #a0000000 std MENU COLOR tabmsg 31;40 #30ffffff #00000000 std

    Boot from HDD

    LABEL Boot from Hard Drive MENU LABEL Boot from Hard Disk KERNEL chain.c32 APPEND hd1 MENU DEFAULT

    Boot GRUB2

    LABEL GRUB2 MENU LABEL Load GRUB2 BootManager Linux /multibootusb/grub/lnxboot.img INITRD /multibootusb/grub/core.img TEXT HELP Switch to GRUB2 bootloader for more options. Some distros may or may not run on GRUB2, but worth a try. Menu entries under GRUB2 are either converted from syslinux config or supported through native grub.cfg/loopback.cfg. ENDTEXT

    Boot PLoP BootManager

    LABEL GRUB2 MENU LABEL PLoP BootManager KERNEL /multibootusb/plpbt

    #start Parrot-full-3.9_amd64 LABEL Parrot-full-3.9_amd64 MENU LABEL Parrot-full-3.9_amd64 BOOT /multibootusb/Parrot-full-3.9_amd64/isolinux/ #end Parrot-full-3.9_amd64 #start nst-26-9267.x86_64 LABEL nst-26-9267.x86_64 MENU LABEL nst-26-9267.x86_64 BOOT /multibootusb/nst-26-9267.x86_64/isolinux/ #end nst-26-9267.x86_64 #start cyborg-hawk-linux-v-1.1 LABEL cyborg-hawk-linux-v-1.1 MENU LABEL cyborg-hawk-linux-v-1.1 BOOT /multibootusb/cyborg-hawk-linux-v-1.1/isolinux/ #end cyborg-hawk-linux-v-1.1 #start Matriux_Leandros20130923 LABEL Matriux_Leandros20130923 MENU LABEL Matriux_Leandros20130923 BOOT /multibootusb/Matriux_Leandros20130923/isolinux/ #end Matriux_Leandros20130923 #start bugtraq-II_bw-d-kde_x64 LABEL bugtraq-II_bw-d-kde_x64 MENU LABEL bugtraq-II_bw-d-kde_x64 BOOT /multibootusb/bugtraq-II_bw-d-kde_x64/isolinux/ #end bugtraq-II_bw-d-kde_x64 #start deftZ-2017-1 LABEL deftZ-2017-1 MENU LABEL deftZ-2017-1 LINUX memdisk INITRD /multibootusb/deftZ-2017-1/deftZ-2017-1.iso APPEND iso #end deftZ-2017-1 #start wifislax-4-12-final LABEL wifislax-4-12-final MENU LABEL wifislax-4-12-final BOOT /multibootusb/wifislax-4-12-final/boot/isolinux/ #end wifislax-4-12-final #start bugtraq_optimus_x32_beta LABEL bugtraq_optimus_x32_beta MENU LABEL bugtraq_optimus_x32_beta BOOT /multibootusb/bugtraq_optimus_x32_beta/isolinux/ #end bugtraq_optimus_x32_beta #start bb03-amd64-final LABEL bb03-amd64-final MENU LABEL bb03-amd64-final BOOT /multibootusb/bb03-amd64-final/isolinux/ #end bb03-amd64-final #start subgraph-os-alpha_2017-09-22_1 LABEL subgraph-os-alpha_2017-09-22_1 MENU LABEL subgraph-os-alpha_2017-09-22_1 BOOT /multibootusb/subgraph-os-alpha_2017-09-22_1/isolinux/ #end subgraph-os-alpha_2017-09-22_1 #start Discreete_Linux_2016.1_beta1.hybrid LABEL Discreete_Linux_2016.1_beta1.hybrid MENU LABEL Discreete_Linux_2016.1_beta1.hybrid BOOT /multibootusb/Discreete_Linux_2016.1_beta1.hybrid/isolinux/ #end Discreete_Linux_2016.1_beta1.hybrid #start BT5R3-KDE-64 LABEL BT5R3-KDE-64 MENU LABEL BT5R3-KDE-64 CONFIG /multibootusb/BT5R3-KDE-64/isolinux/isolinux.cfg APPEND /multibootusb/BT5R3-KDE-64/isolinux

    Delete or comment above two lines using # and remove # from below line if you get not a COM module error.

    #BOOT /multibootusb/BT5R3-KDE-64/isolinux/ #end BT5R3-KDE-64 #start anonymos-shmoo LABEL anonymos-shmoo MENU LABEL anonymos-shmoo #end anonymos-shmoo #start NodeZero LABEL NodeZero MENU LABEL NodeZero CONFIG /multibootusb/NodeZero/isolinux/isolinux.cfg APPEND /multibootusb/NodeZero/isolinux

    Delete or comment above two lines using # and remove # from below line if you get not a COM module error.

    #BOOT /multibootusb/NodeZero/isolinux/ #end NodeZero #start LionSec-Linux-5.0-amd64 LABEL LionSec-Linux-5.0-amd64 MENU LABEL LionSec-Linux-5.0-amd64 BOOT /multibootusb/LionSec-Linux-5.0-amd64/isolinux/ #end LionSec-Linux-5.0-amd64 #start wt7-elite-1315.04.182016 LABEL wt7-elite-1315.04.182016 MENU LABEL wt7-elite-1315.04.182016 BOOT /multibootusb/wt7-elite-1315.04.182016/isolinux/ #end wt7-elite-1315.04.182016 #start VL-7.2-STD-FINAL LABEL VL-7.2-STD-FINAL MENU LABEL VL-7.2-STD-FINAL BOOT /multibootusb/VL-7.2-STD-FINAL/isolinux/ #end VL-7.2-STD-FINAL #start kali-linux-2017.3-amd64 LABEL kali-linux-2017.3-amd64 MENU LABEL kali-linux-2017.3-amd64 BOOT /multibootusb/kali-linux-2017.3-amd64/isolinux/ #end kali-linux-2017.3-amd64 #start kodachi-3.7-64 LABEL kodachi-3.7-64 MENU LABEL kodachi-3.7-64 LINUX memdisk INITRD /multibootusb/kodachi-3.7-64/kodachi-3.7-64.iso APPEND iso vmalloc=16016M #end kodachi-3.7-64 #start pentoo-amd64-hardened-2015.0_RC5 LABEL pentoo-amd64-hardened-2015.0_RC5 MENU LABEL pentoo-amd64-hardened-2015.0_RC5 #end pentoo-amd64-hardened-2015.0_RC5 #start xiaopan6.4.1 LABEL xiaopan6.4.1 MENU LABEL xiaopan6.4.1 BOOT /multibootusb/xiaopan6.4.1/boot/isolinux/ #end xiaopan6.4.1

    opened by martinedelbrock 30
  • cannot boot some of the installed iso's

    cannot boot some of the installed iso's

    Hi and thanks for multibootusb!

    strange but although it works fine, some of the iso's I have installed do strange things

    SystemRescueCD 4.9.2 and Clonezilla live do work fine, but :

    cannot boot. The first two just hangs with a black screen and then reboot. The last one after a while (showing the ubuntu logo) goes to this message:

    BusyBox v1.18.5 (ubuntu 1:1.18.5-1ubuntu4.1) built-in shell (ash)
    Enter 'help' for a list of built-in commands.
    (initramfs) Unable to find a medium containing a live file system

    I am sure all three iso's are correct (md5sum checked) and also the work when I create a startup usb with each one. I am using multibootusb version 8.4.0 on ubuntu-gnome 16.04.01 regards

    opened by alexxtasi 23
  • Not working with Pentoo

    Not working with Pentoo

    I've downloaded pentoo file from here: I've tested the .iso with virtualbox and worked ok. Then I've tried to added it to a multibootusb pendrive (with and without existent distributions on it.

    So, the files are being copied to pen-drive properly and no error message is shown, but there are no item for it in grub menu while booting with usb.

    I noted that in the syslinux.cfg there aren't a BOOT instruction:

    #start pentoo-amd64-hardened-2018.0_RC5.8_pre20180305 LABEL pentoo-amd64-hardened-2018.0_RC5.8_pre20180305 MENU LABEL pentoo-amd64-hardened-2018.0_RC5.8_pre20180305 #end pentoo-amd64-hardened-2018.0_RC5.8_pre20180305

    opened by cvgaviao 23
  • 8.9.0 crashes silently on Windows 10 (1709) when detecting usb devices

    8.9.0 crashes silently on Windows 10 (1709) when detecting usb devices

    If Multibootusb 8.9.0 is running on Windows 10 (1709) and I plug a USB3 or USB2 stick in the computer and I click on "Detect Drives" a "Diskpart" windows pop-up and immediately this pop-up and Multibootusb disappears.

    The log shows:

    17:00:24.216 root INFO Running multibootusb version 8.9.0 from installed system...
    17:00:24.306 root INFO Starting multibootusb GUI...
    17:00:24.547 root INFO Cleaning old multibootusb directory...
    17:00:24.551 root INFO Extracting syslinux to multibootusb directory...
    17:00:24.635 root INFO Extracting syslinux modules to multibootusb directory...
    17:00:25.833 root INFO No USB device found...
    17:00:49.313 root INFO Selected device E:

    If the USB stick is already pluged in, multibootusb never appear on screen.

    opened by laurent-indermuehle 20
  • Uninstalling multibootusb

    Uninstalling multibootusb

    Multiboot was installed on Linux Mint 19. I created a multiboot usb flash drive with several iso. Everything worked well but I need to re-purpose the usb drive and cannot find how it can be done. I have also have a win10 box if it can be done easier on it rather than the Linux box.

    opened by bushyiv 20
  • Can not run.

    Can not run.

    multibootusb-8.5.0-1.noarch.rpm in fedora 25.

    dnf install thost package.

    (1/4): p7zip-16.02-2.fc25.x86_64.rpm                      510 kB/s | 683 kB     00:01    
    (2/4): p7zip-plugins-16.02-2.fc25.x86_64.rpm              472 kB/s | 990 kB     00:02    
    (3/4): sip-4.18.1-1.fc25.x86_64.rpm                       119 kB/s | 127 kB     00:01    
    (4/4): python-qt5-5.7-4.fc25.x86_64.rpm                   1.0 MB/s | 3.8 MB     00:03    

    when run.

    ▶ multibootusb
    Traceback (most recent call last):
      File "/usr/local/bin/multibootusb", line 18, in <module>
        from scripts.mbusb_cli import *
    ImportError: No module named 'scripts'
    During handling of the above exception, another exception occurred:
    Traceback (most recent call last):
      File "/usr/local/bin/multibootusb", line 23, in <module>
        from .scripts.mbusb_cli import *
    SystemError: Parent module '' not loaded, cannot perform relative import
    During handling of the above exception, another exception occurred:
    Traceback (most recent call last):
      File "/usr/local/bin/multibootusb", line 27, in <module>
        import scripts
    ImportError: No module named 'scripts'
    opened by eexpress 19
  • Debian: No common CD-ROM drive was detected

    Debian: No common CD-ROM drive was detected


    Blocked when installing Debian to second step Detect and mount CD-ROM.

    I'm trying to install a Debian net-install ISO using master, but it fails at this step. According to a comment on cobbler#1518:


    I think I recalled now what is needed. When you use Debian or Ubuntu (in my experience), you need to replace the kernel and initrd from the full ISO with that from the netinstaller. Can you verify this fixes the issue? So, what I'm suggesting is use the *DVD-1.iso and then copy over to /var/lib/cobbler appropriately the initrd & kernel from the corresponding netinst.iso.

    I also tried with Debian stable ISO or Debian live one, but still facing the same issue.


    ~~None found yet, except of using another OS (windows, archlinux work OK) or maybe another USB installer software.~~ See comment

    opened by bagage 19
  • 8.9.0 does not launch on Linux

    8.9.0 does not launch on Linux

    8.8.0 works, while 8.9.0:

    Traceback (most recent call last):
      File "/usr/local/bin/multibootusb", line 164, in <module>
        if config.debug is True:
    NameError: name 'config' is not defined
    opened by nerijus 18
  • USB only boots Grub Minimal Bash-Like

    USB only boots Grub Minimal Bash-Like

    I installed a few Linux and Windows ISOs on a USB with MultiBootUSB. When I boot the usb, I just get this screen:


    Tried a second USB flash drive and installed just one ISO, and I'm getting the same screen,.

    opened by David-Lor 18
  • Update


    Switch links to favor GitHub instead of the website (which isn't resolving for me, currently).

    opened by Yasumoto 0
  • domain gone domain gone

    The links to download point to which appears to be taken over by a search funnel site. The binary hosting and links need to be updated. Thanks

    opened by silicontrip 0
  • Cannot add ISO

    Cannot add ISO

    [[email protected] multisystem]$ . /tmp/multisystem/multisystem-vte fileselect:/home/nd-admin/Downloads/regular-rescue-latest-x86_64.iso function_name:addvte option1:addvte option2:/home/nd-admin/Downloads/regular-rescue-latest-x86_64.iso option3: bash: eval_gettext: command not found

    bash: 58G: value too great for base (error token is "58G") fichier:/home/nd-admin/Downloads/regular-rescue-latest-x86_64.iso iso:639Mio bash: 58G: value too great for base (error token is "58G") bash: eval_gettext: command not found

    mount: /tmp/multisystem/multisystem-mountpoint-iso: WARNING: source write-protected, mounted read-only. XKBLAYOUT:us XKBVARIANT: XKBMODEL: bash: eval_gettext: command not found

    (zenity:118241): Gtk-WARNING **: 09:42:29.611: Theme parsing error: gtk.css:73:46: The style property GtkScrolledWindow:scrollbars-within-bevel is deprecated and shouldn't be used anymore. It will be removed in a future version

    Seems to be some kind of error with the bash script. Any ideas?

    opened by HeroesLament 0
  • Refactor code quality issues

    Refactor code quality issues


    I ran DeepSource analysis on my fork of the repo, and found some interesting code quality and performance issues that can improve the general code quality and performance here. This PR fixes a few of the issues detected.

    Summary of changes

    • Use sys.exit() calls instead of dangerous bare exit().
    • Simplify if statements.
    • Remove unnecessary use of comprehensions.
    • Use identity check for comparison with True/False.
    • Add .deepsource.toml file for continuous analysis on bug risks/performance/code-quality issues on new changes.
    opened by akshgpt7 0
  • add support for newer systemrescuecd isos on grub2 (wip)

    add support for newer systemrescuecd isos on grub2 (wip)

    currently broken, wont find the kernel/initrd

    opened by lpalgarvio 0
  • add support for finnix isos on grub2 (tested & working)

    add support for finnix isos on grub2 (tested & working)

    confirmed working

    opened by lpalgarvio 0
  • add support for openmediavault isos on grub2 (wip)

    add support for openmediavault isos on grub2 (wip)

    currently broken

    during install, wont "mount cdrom"

    opened by lpalgarvio 0
  • add support for proxmox isos on grub2 (wip)

    add support for proxmox isos on grub2 (wip)

    currently fails loading kernel/initrd, as it tries reading from the wrong device

    also tried with no success:

    for isofile in $isopath/proxmox-ve_*.iso; do
      if [ -e "$isofile" ]; then
        regexp --set=isoname "$isopath/(.*)" "$isofile"
        submenu "$isoname ->" "$isofile" {
          insmod regexp
          loopback loop "$iso_path"
          menuentry "Install Proxmox VE" {
            bootoptions="findiso=$iso_path ro ramdisk_size=16777216 rw quiet splash=silent"
            linux /boot/linux26 $bootoptions
            initrd /boot/initrd.img

    seems to be a bug but i dont have deep knowledge at this point to be sure

    opened by lpalgarvio 0
  • add support for ubuntu live-server isos on grub2 (tested & working)

    add support for ubuntu live-server isos on grub2 (tested & working)

    confirmed working for 18.04 and 20.04

    opened by lpalgarvio 0
  • add support for debian10 live and current (non-live) isos on grub2 (wip)

    add support for debian10 live and current (non-live) isos on grub2 (wip)

    broken, wont "mount cdrom"

    opened by lpalgarvio 0
Flash OS images to SD cards & USB drives, safely and easily.

Etcher Flash OS images to SD cards & USB drives, safely and easily. Etcher is a powerful OS image flasher built with web technologies to ensure flashi

balena 20.6k Jun 6, 2021
Read-only mirror of

GPARTED ======= Gparted is the GNOME Partition Editor for creating, reorganizing, and deleting disk partitions. A hard disk is usually subdivided int

GNOME Github Mirror 169 Jun 6, 2021
The Linux PowerTOP tool -- please post patches to the mailing list instead of using github pull requests

PowerTOP PowerTOP is a Linux* tool used to diagnose issues with power consumption and power management. In addition to being a diagnostic tool, PowerT

Arjan van de Ven 499 May 31, 2021
Terminal disk space navigator 🔭

diskonaut How does it work? Given a path on your hard-drive (which could also be the root path, eg. /). diskonaut scans it and indexes its metadata to

Aram Drevekenin 925 Jun 6, 2021
Display and control your Android device

scrcpy (v1.17) Read in another language This application provides display and control of Android devices connected on USB (or over TCP/IP). It does no

Genymobile 49.4k Jun 4, 2021
UNetbootin installs Linux/BSD distributions to a partition or USB drive

UNetbootin Homepage and Downloads Github Source See the src/unetbootin director

UNetbootin 1.7k Jun 5, 2021
The Cyber Swiss Army Knife - a web app for encryption, encoding, compression and data analysis

CyberChef The Cyber Swiss Army Knife CyberChef is a simple, intuitive web app for carrying out all manner of "cyber" operations within a web browser.

GCHQ 12k Jun 2, 2021
BleachBit system cleaner for Windows and Linux

BleachBit BleachBit cleans files to free disk space and to maintain privacy. Running from source To run BleachBit without installation, unpack the tar

null 1.2k Jun 5, 2021
Dude, where are my bytes: Duc, a library and suite of tools for inspecting disk usage

Duc is a collection of tools for indexing, inspecting and visualizing disk usage. Duc maintains a database of accumulated sizes of directories of the

Ico Doornekamp 419 Jun 3, 2021
Mobile Shell

Mosh: the mobile shell Mosh is a remote terminal application that supports intermittent connectivity, allows roaming, and provides speculative local e

Mosh (mobile shell) 10k Jun 4, 2021
Self Hosted Movie, Series and Anime Watch List

Flox Flox is a self hosted Movie, Series and Animes watch list. It's build on top of Laravel and Vue.js and uses The Movie Database API. The rating ba

Viktor Geringer 927 Jun 6, 2021
Graphical program used to map keyboard buttons and mouse controls to a gamepad. Useful for playing games with no gamepad support

antimicro ?? Important update ?? This repo is currently unmaintained. The code hasn't been updated for a while. But not all is lost, antimicro has a f

null 1.4k Jun 5, 2021