Ubuntu USB Stick Day 3 - Native USB install
Daniel Nashed – 21 January 2026 14:13:24
When I woke up this morning I had another idea. I don't know why I did not start like this.
But research showed that this approach only works with modern UEFI configurations. The boot would be problematic with a standard BIOS.
The idea:
Instead of using a Live USB stick with persistent data mode, I am just installing Ubuntu native on an USB stick.
No more read-only file-system. No copy on write mode for the persistent data. No hacks to get another normal file-system.
The steps are pretty simple now that I know it works. And I even took a different approach to set it up.
- I created a dummy VMware workstation VM and booted fom ISO/DVD.
- The I mounted an empty USB stick from host
- A dummy disk stays untouched
The same would also work with two USB sticks but this way I was making sure my SSD with Windows on it will not be touched and I had a fast retry test environment.
Once started I used the normal installer to do a custom partitioned install on the USB stick:
- Custom install instead of the default
- Create a boot partition on the USB stick
- Add a sufficient size ext4 disk and set the mount to /
- Keep some free space for ZFS later and create an empty partition
The installation will just proceed the standard way and you can boot from the USB stick
In my case I did boot in the VMware environment first before using it to boot my notebook from it natively.
All the remaining steps to setup ZFS and get up Docker remain the same and the result looks like this:
filesystem Size Used Avail Use% Mounted on
/dev/sda2 39G 11G 26G 30% /
tmpfs 16G 8.0K 16G 1% /dev/shm
tank 186G 128K 186G 1% /tank
tank/local 189G 2.9G 186G 2% /local
tank/docker 187G 438M 186G 1% /tank/docker
tank/containerd 186G 256K 186G 1% /tank/containerd
---
Sometimes it takes more than one iteration to get it right.
I think this is now a quite flexible setup and can be used even for production.
For sure it is a good backup if you run into issues with your normal machine configuration.
- Comments [0]