So far using only an USB media (USB stick or SSD) and no SD card at all, not even for the boot partition, requires some extra steps.

This is because booting the Raspberry Pi 4 from an USB media needs a firmware update and certain other files. To perform the firmware update, you need a working NCP image on an SD card.

  1. You need to copy the latest Image “NextCloudPi_Rpi_xx-xx-xx.img” to the SD card. Than copy it again to your USB media. Follow the instructions provided here.
  2. Insert the SD Card in the Raspberry Pi and boot it normally. Log in (via SSH or via attached keyboard and display) and make sure that you have a network connection.
  3. In the terminal do a “sudo apt update” followed by “sudo apt upgrade". After the upgrade has finished restart the Raspberry Pi by typing “sudo reboot now" and login again.
  4. Type “vcgencmd bootloader_config” and watch for the output. Part of the output should read "BOOT_ORDER=0xf41"which means that USB boot is available and active.
  5. Type “rpi-eeprom-update" which should give you some output like “LATEST: Thu 3 Sep [...]" (or later).
  6. Now you can attach your USB media and type “lsblk" which should give you output like “sda",”sda1“and”sda2“. This is your USB Device with sda1 beeing the boot partition and sda2 beeing the root partition. You should also see “mmcblk0",”mmcblk0p1"(mounted to /boot) and "mmcblk0p2" (mounted to /).
  7. Next you have to mount the partitions of your USB device. Therefore type "sudo mkdir /media/boot” and “sudo mkdir /media/root". Than "sudo mount /dev/sda1 /media/boot" and "sudo mount /dev/sda2 /media/root“. Typing “lsblk” again should show you sda1 and sda2 as mounted
  8. Now you can update the bootloader of the system on the USB device which is mounted but not booted. Therefore type “sudo ROOT_PATH=/media/root BOOT_PATH=/media/boot BRANCH=stable rpi-update“ and confirm with y. This update is downloading the current bootloader files from the stable branch and installs them on the USB device.
  9. The unmount the USB device with “sudo umount /media/boot” and ” sudo umount /media/root” and shutdown the system with “sudo shutdown now“. Then unplug the power cable and remove the SD card.
  10. Restarting the Raspberry Pi with only the USB device attached will boot you in your new system.