Return to the main mkusb page

mkusb version 8

Version 8 has menus instead of a simple text dialogue. It has a mixture of text based menus and graphical windows.


This version of the mkusb tool, version 8, is still only a bash script. Previous versions have been running in crude text mode, but people want eye candy, so I've made menus with dialog (big brother of whiptail used by for example the installers of Ubuntu mini.iso and Lubuntu's alternate iso file). File selection uses zenity in desktop environments and dialog in text screens. The identification of devices is also improved (replaced calling 'parted -ls' with a home-made bash function) based on the bash string found by the command

grep by-id mkusb


Version 9 is released as the current stable version of mkusb after several weeks of testing. There are several improvements (new features and bug-fixes). So please upgrade from version 8 to version 9. If you have a strong reason to keep version 8, please let me know via this link

Improvements and new features

  • Improved identification of devices

  • Cloning from uncompressed image files, 'file.img' (new feature, earlier only from compressed image files)

  • Menu shell with menus to

    • find and select input file alias source in the cloning process 'source file --> target drive'

    • select wipe the first megabyte (actually mibibyte MiB)

    • find and select target device (typically but now always a USB drive)

    • help double-check selecting the correct device (check-points and warnings)

    • start the cloning process 'source file --> target drive'

    • select file with menus, not only via command line parameter

      • with zenity in desktop environments is introduced in version 8.2 See this link

      • with dialog in text screens and whenever zenity does not work

    • select file debugged and improved in version 8.3 (local language)
    • list_drives debugged in version 8.4 (built-in function)
  • Final warning with red background See this link and PPA, mkusb logo & icon, desktop file in version 8.5 ../artwork/mkusb24.png

    • mkcmd_runcmd debugged in version 8.5.1 (LANG=C), for the progress display pv (cosmetic bugfix for compressed image files)

    • improvements and bugfixes in version 8.5.2
      • improved check if the same iso, for updating iso image at iso testing
      • improved final dialogue, more logical, also cosmetic improvements
      • double quotes around the file name in the command string makes it work with some special characters, e.g. space and parenthesis.
    • improvements and bugfixes in version 8.5.3
      • logo and icons developed and uploaded for mkusb

      • function zenitytest: usage test of zenity which also serves as splash in graphics mode
      • mkusb24.png stored in-file (in mkusb itself) encoded with base64
      • sudo -H mkusb recommended (due to graphics) but sudo mkusb works (and better via ssh -X)
      • final warning with zenity window
      • desktop file for easy access via menus in graphical desktop environments

      • manual page, you find it with man mkusb

      • mkusb.desktop using green xterm login and xterm console with correct dialog colours
      • PPA introduced
    • improvements and bugfixes in version 8.5.4
      • bugfix to restore red warning screen in text mode
      • some minor tweaks for the packaging of the PPA

Text screen and graphical desktop environments

mkusb 8.x.x still runs in text screens and terminal windows, so it works in the Ubuntu desktop flavours as well as in Ubuntu Server and text mode mini systems.

A zenity file selector and final windows are used if a test window can be lauched in the current environment. Otherwise a dialog file selector is used. The other menus are dialog menus.

(echo "$htmlbody") | zenity --text-info --html --filename=/dev/stdin \
--height=120 --title "" --timeout 3 2>> "$errout"

When you login remotely from a graphical desktop environment and it can be used at both ends, mkusb wants to use zenity, so you should enable X.

ssh -X nio@server
sudo ./mkusb           # to select source file via menus
sudo ./mkusb file.iso  # to select source file via the command line is still possible

Except while using ssh -X, you should use sudo -H

sudo -H ./mkusb        # because of the graphics by zenity

Return to the main mkusb page

mkusb/v8 (last edited 2014-09-29 07:52:23 by nio-wiklund)