I would like to expand on the answer by V Bota and sudodus.
I wrote much of this for another question but I think it would serve better here.
I too have previously tried many different instructions without success and had almost given up when I found a working method using the very nicely created mkusb
tool.
Prior Considerations
I am assuming you have the .iso file (of Ubuntu 16.04/any *buntu) already downloaded. If not get it.
I have tried running these instructions from an installed Ubuntu system.
Note: There is currently a limitation that efi-enabled OSes wont work in BIOS mode. To bypass the restriction, run all these steps from another live system.
Installing mkusb
Boot into an existing Ubuntu or live-boot the secondary Ubuntu flash drive.
Open a terminal (Ctrl+Alt+T) and run the following commands one by one:
sudo add-apt-repository universe
sudo add-apt-repository ppa:mkusb/ppa
sudo apt-get update
sudo apt-get install mkusb usb-pack-efi
The last command might fail (though unlikely) as mkusb
(GUI version) has some dependencies that are not preinstalled/active in the live version of Ubuntu.
No need to panic though, the developer has also created a text only version. Run:
sudo apt-get install mkusb-nox usb-pack-efi
Creating the persistent drive
I will focus on the main GUI version as that is the one I have used. So if you installed the default mkusb
(GUI version) run:
dus
dus
is an alias for the latest updated new-look of mkusb
. It is a revamp of the old version and even more easy to use.
After you run the command the GUI will open.
Follow these steps next:
- Screen 1: Note the warning and click OK
- Screen 2: Double-Click on the
i
option Install(make a boot device)
- Screen 2: Double-Click on the
p
option Persistent Live
and select the .iso file.
- Screen 3: Tick the device you want to install to and click OK
- Screen 4: Just click Use defaults and let
mkusb
decide what's best. (Or choose, but wisely.)
- Screen 5: Enter the percentage of USB drive space you want to allot for persistence file-system. The remaining will later show up as portable storage device.
- Screen 6: Double check you have selected the right device and settings. Tick the
Go
radio button and click Go.
- Screens 7,8,: Just click Ok and let mkusb do its thing.
Done!
Now plug your newly made persistent drive in any system and check if it really stores data/settings across reboots (Mine does).
Screenshots
The whole process should look something like the following.
Run the command in terminal:

Note the warning and click OK:

Double-Click on the i option Install(make a boot device):

Double-Click on the p option Persistent Live and select the .iso file:

Click on the USB drive to make persistent. I want to use my 32 GB one so I mark the radio button:

Click Use Defaults to let mkusb
choose default:

Enter a percentage of the drive to reserve for persistence. Mine is a large (32GB) so I allot only 20% ~ 6GB. The remaining space will be turned into an empty portable drive:

Double check very carefully and confirm. You don't want to mess up another drive.

If all goes well you will be greeted by a nice green finished screen:
Now plug your newly made persistent drive in any system and check if it really stores data/settings across reboots (Mine does).
References & Acknowledgenent
You can refer to a nice tutorial by Calvin Bui here to guide you through the GUI step by step or read through the detailed documentation
https://help.ubuntu.com/community/mkusb
Thanks again to V Bota for this answer and andrea-lazzarotto for helping edit this one.