I haven’t been able to find a document relating to this, so my apologies if I’m repeating something.
Raspberry Pi 4s can boot from SSD without a SD card. I found I had one that hadn’t been updated to the current EEPROM so had to follow the instructions here: https://www.raspberrystreet.com/learn/how-to-boot-raspberrypi-from-usb-ssd
This needs an SD card, but will work with the Yunohost image because it’s Raspbian Lite.
Here’s a quick summary:
- Burn a MicroSD card with the current Yunohost image as in the documentation.
- Boot the Pi from the SD card, connect, and let it run through the installation process so you have an admin login.
- Connect to the Pi over SSH with the admin user.
- Check the status of the Pi EEPROM with sudo vcgencmd bootloader_version. The version date is on the first line and should be later than 2020/03/09.
- Check for an update with sudo rpi-eeprom-update. There may be an update available, but the update channel needs to be changed fromdefault(that was in my case, the blog entry says it will becritical) tostable.
- Open /etc/default/rpi-eeprom-updatewith an editor. For ease of usesudo nano /etc/default/rpi-eeprom-update. You will see the lineFIRMWARE_RELEASE_STATUS="default". Changedefaulttostable. Save the file.
- Check sudo rpi-eeprom-updateagain. This should show an update.
- Apply the update with sudo rpi-eeprom-update -a, and reboot.
- When the Pi has rebooted, check that the update has been applied with vcgencmd bootloader_versionagain.
- Now change the boot order. This can be done through raspi-config.
- Run sudo raspi-configand select6. Advanced Options.
- Select A6 Boot Order. Confirm that the first option isB1 SD Card Boot Boot from SD Card if available, otherwise boot from USB. If it isn’t, make an option that includes USB first - the second option for me isB2 USB Boot Boot from USB if available, otherwise boot from SD Card, but I can’t change to that in the Yunohost image.
- Next, burn the Yunohost image to your SSD. This works in the same way as an SD card, so use Etcher or the image burner of your choice. Etcher will tell you that your SSD is a large device and ask for confirmation.
- You now have a 2.1GB image on your SSD so it needs to be resized. On a Linux based desktop this will need Gparted or another disk management tool (Gnome Disks, KDE Partition Manager etc) so start that.
- The external SSD should appear with your local storage with a FAT32 bootpartition, a 2.1 GBrootfspartition and a lot of unallocated space. Resize therootfspartition to use up as much space as it can. Gparted, Disks and KDE Partition Manager will do this graphically.
- Remove the SD card from the Pi and plug the SSD into one of the USB 3 ports and boot.
- Connect to the Pi with a web browser - it should have the same IP as with the SD card if your router is working correctly and run the configuration again. You should then have a clean Yunohost install on the SSD.
 Hi Serversonic,
 Hi Serversonic, Hi Serversonic,
 Hi Serversonic,