I made the (wrong) decision of installing Ubuntu LTS on my Raspi 4 that I used as a server, thinking it would be easier to install and configure stuff as I'm used to Ubuntu. Turns out for some reason the system is not as snappy as it is on Raspbian and many things are not working out of the box.

Anyhow...after working with it for a few months with the system installed on sdcard I decided to buy the Argon SSD enclosure and to use a 128 GB SSD as startup disk by following this guide https://jamesachambers.com/raspberry-pi-4-ubuntu-20-04-usb-mass-storage-boot-guide/. The only difference is that, since I already had the system installed on the sd card, I just cloned it onto the SSD and then made the modifications needed to fix the partitions and decompress kernel.

Everything worked for a while but the other day I noticed that the /boot/firmware partition was mounted as read only due to same FAT errors being thrown out. I repaired the partition and of course the system stopped booting being stuck at the beginning looking for label=WRITABLE drive.

When reinsterting my old sdcard weirdly enough the system booted up but what I find weird is that the partitions of the sdcard are NOT mounted.

ubuntu@ubuntu:~$ lsblk
sda           8:0    0 119.2G  0 disk
├─sda1        8:1    0   256M  0 part /boot/firmware
└─sda2        8:2    0   119G  0 part /
mmcblk0     179:0    0  29.7G  0 disk
├─mmcblk0p1 179:1    0   256M  0 part
└─mmcblk0p2 179:2    0  29.5G  0 part

So somehow ubuntu is booting from my SSD and not from my sdcard?? But if I remove the sdcard then it doesn't boot...

Long story short I think the problem here is the fact that I cloned the sdcard over the SSD instead than doing a clean installation. Does anyone know if I need to modify something into the /boot/firmware partition to make it work without the sdcard?

This is my cmdline.txt

net.ifnames=0 dwc_otg.lpm_enable=0 console=serial0,115200 console=tty1 root=LABEL=writable rootfstype=ext4 elevator=deadline rootwait fixrtc

Although if it works like this now and uses the SSD I may just leave it as it is...


I tried Ubuntu for a while, then gave up. However, I do think I'll try it again, and here's why:

When I tried to use it before, I had a class 7 SD card. Now that I have a class 10 SD card, Raspbian/Ubuntu, for that matter, is much snappier. And, instead of a user developed OS, I would use the official Ubuntu from here:




The RPI4 with the current firmware can boot from USB.. However what I think is happening in your case is it's booting from the SD card then it's remounting the drives of the USB drive.

In RPIOS the SD card boot partition cmdline.txt contains the UUID of the root file-system. But Ubuntu uses a label 'Writable'.

You can view the label and UUID information using the lsblk command:-

lsblk --fs

This is my CM4 node running Ubuntu 21.04:

├─sda1      vfat     FAT32 system-boot A935-223B
└─sda2      ext4     1.0   writable    208c7994-eefe-41da-8c3b-46f745b8a370  207.9G     5% /
├─mmcblk0p1 vfat     FAT32 system-boot A935-223B                             124.9M    50% /boot/firmware
└─mmcblk0p2 ext2     1.0               413c013b-e740-4ec4-87f6-a5e57866e2ef

From my experience this is randomized... So every time you reboot you might get different mounting combinations.

That will cause you some head scratching when you do updates...

I suggest that you follow this guide and eliminate the need for the SD card.

  • I followed that guide (see original comment, I posted the exact same link:)) – Guido Cioni Jun 4 at 10:26

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.