Updated: October 2, 2017
May I rhyme? Let me rhyme. UNetbootin, I am hootin', for you won't let me burn. Cue the intro. UNetbootin is a cross-platform USB image write, which you can use to create live USB systems, mostly but not limited to Linux distributions. Except the mission is easier said than done.
On a sunny day sometime in June, I spent a good hour or two fighting UNetbootin, trying to get it to do its job. Alas, it would not, giving me all sorts of problems. The two chief amongst them were: 1) not running at all in Fedora 25, Wayland or no Wayland 2) and then, it would not burn any images, as it felt the external USB drivers were not mounted, an issue that came about both in Kubuntu as well as Fedora. Let's solve them, shall we.
UNetbootin won't run
Das boot not. That's a mighty joke, you must admit. Anyway, I tried to run it in Fedora Gnome from the system menu, and it just would not launch. Next, I tried from the command line, as root, and then I did make some small progress. The GUI window did show, but it was blank, and I had the following error in the console:
X Error: BadDrawable (invalid Pixmap or Window parameter) 9
Major opcode: 62 (X_CopyArea)
Resource id: 0x2000010
X Error: BadDrawable (invalid Pixmap or Window parameter) 9
Major opcode: 62 (X_CopyArea)
Resource id: 0x2000010
It turns out, there's a bug, like duh, but it's been around for one quarter of an eternity, and it's affected a whole range of Fedora releases. The workaround is to run UNetbootin with shared memory disabled. Why, well don't ask me, I didn't write the program, or Fedora or Gnome for that matter.
QT_X11_NO_MITSHM=1 unetbootin
UNetbootin cannot detect mounted media
Mount Error. Like Mount Everest, only better. Let's say you did get the program running. When you try to write an image, you get the following ugly error:
The text reads: You must first mount the USB drive /dev/sdb1 to a mountpoint. Most distributions will do this automatically after you remove and reinsert the USB drive.
Strange. Because the USB drive is mounted, and the distro has done this automatically. True for both Fedora Gnome and Kubuntu (KDE/Plasma). Replace /dev/sdb1 with any which device you may be using. So this seems to be a bug. Again, we will resort to a workaround. We will manually mount the drive (to another mount point):
sudo mkdir /media/usb
sudo mount /dev/<device><part num> /media/usb
Alternatively, you can run UNetbootin, thusly:
unetbootin installtype=USB targetdrive=/dev/<device><part num>
And you should be all set!
Conclusion
Here we go. If you like UNetbootin, have used it in Windows and wish to continue the tradition in Linux, or just plain believe it will yield better results over other image writing tools, then this guide should help you get the program running. You may face obstacles, including shared memory and mount point bugs, but we can work around those neatly.
All in all, UNetbootin is a worthy tool, and it does it jobs well. Alas, it seems less robust in Linux than it is in Windows. But it does have its advantages over distro-specific tools in that it runs across pretty much the entire Linux range, and it's shown to be able to handle some rather tricky distros and operating systems. Anyway, no more worries. That would be all for today.
Cheers.