3

I just followed James' tutorial on how to run a Pi 4 off an SSD. jamesachambers.com

I don't know enough about OS so the question for me is how is the SD card used after these modifications?

From his post:

In this guide I’ll show you a workaround to use USB devices as your rootfs device and use a Micro SD card as bootloader only which gives us full SSD performance after boot!

Am I correct in assuming that the SD card is just being read very briefly and points to the SSD immediately after powering up? Or is the SD card still being read from/written to during subsequent operations and thus at risk of breaking? Which begs the question what will happen when the SD card breaks. Should I make a backup of the SD card or the SSD or both?

Thank you!

8
  • 1
    HI @Malte, Welcome and nice to meet you. Ah, let me see. As you pointed out, James says the following: "Micro SD card [is used] as bootloader only which gives us full SSD performance after boot!" I think he means that the micro SD card is used as the boot [strap] loader, whose one and only one short job is loading the big boot guy (in the SSD I guess). As soon the big boot guy takes over, the small guy is just ignored for ever -- I mean until the OS shuts down. One thing is verify is this: after the boot, REMOVE the micro SD card and see nothing melts down or blow up! / to continue, ...
    – tlfong01
    May 19 '20 at 8:38
  • 2
    of course, the SD card will be occasionally needed to keep raspbian updated - because that's where the kernel etc lives May 19 '20 at 8:40
  • James' storage benchmarks storage.jamesachambers.com is very good, now I am happy to know that my USB Samsung T5 1TB SSD is about 5 times as fast as my small and stupid SanDisk Ultra Class 10.
    – tlfong01
    May 19 '20 at 8:43
  • 1
    @Jaromanda, yes, so the micro SD card is now seen as read only, and never be written again until the next buster release.
    – tlfong01
    May 19 '20 at 8:46
  • So I will now just sit back and watch, the brave guy @Malte to try his luck. If no smoke comes out, nothing melts down or blows up, then I will follow him. :) google.com/…. Good luck to Malte. Cheers.
    – tlfong01
    May 19 '20 at 8:49
2

To keep your installation up to date you should do system upgrades from time to time with sudo apt update && sudo apt full-upgrade. If you have done this, then you should always backup the SD Card together with the SSD storage. With an upgrade it is likely that also the kernel is upgraded together with its modules. The kernel is stored at the SD Card, its modules are stored at the SSD in /lib/modules. If you do not have this together then it is possible that the RasPi does not boot after an upgrade because of a mismatch of the versions kernel/modules. This is checked on bootup.

Update due to clarification of a comment:
I do not talk about (dynamic loadable) libraries which are mostly independent from the kernel and used by programs. This is the reason why you can run programs with different kernel. I'm talking about modules that are dynamically loaded by the kernel and which are always configured and compiled together with the kernel to load drivers and firmware into the protected kernel space. They are part of the kernel. You can manually load modules using modprobe and show loaded modules with lsmod. Most of this modules can also direct compiled into the kernel. They must fit to the kernel.

2
  • Hi Ingo! So let me rephrase to make sure I understand correctly. The kernel is still stored on the SD card and will, with the exception of an update, not be written to and only be read. The kernel libraries will be stored on the SSD only, not on the SD card, correct? If that is so, a proper backup will include both SD card and SSD since a given version of a kernel needs the respective packages stored on the SSD. Did I get that right?
    – Malte
    May 19 '20 at 14:04
  • @Malte Yes, that is nearly correct with an important detail. I do not talk about (dynamic loadable) libraries. I have updated the answer.
    – Ingo
    May 19 '20 at 17:20
1

Yes, the SD card is only used to read data while the pi is booting.

Rather than back up the SD card, you could take a copy of the tweaked cmdline.txt used to mount your USB drive, or just write down the partition id you used.

If you follow the guide you will have the SD mounted as /boot or /boot/firmware, which allows the SD card to be written for kernel / firmware updates after the system has booted.

Other than that it will be used for reads only (and should last longer than it would have otherwise).

1
  • Thanks Peter! That was helpful!
    – Malte
    May 19 '20 at 19:45

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.