Categories
Computers Debian deutsch Linux

Raspberry Pi: Ständig Micro-SD kaputt? Das muss nicht sein!

Wer einen Raspberry Pi mit einer Micro-SD betreibt, dem wird wahrscheinlich das Problem nicht fremd sein, dass die Micro-SDs schnell kaputt gehen. Das muss aber nicht sein!

Wenn man ein System hat, dass kaum Dateien auf dem lokalen Dateisystem schreibt oder verändert (abgesehen von Logdateien vielleicht) — in meinem Fall liest der Raspi nur über einen an den USB-Port angeschlossenen Infrarot-Lesekopf einen Stromzähler aus, das Logging erfolgt dabei auf einen Remote-Syslog-Server — dann sollte man das System so konfigurieren, dass das Root-Filesystem als “Overlay”-Filesystem konfiguriert ist.

Änderungen im Filesystem werden dadurch nur in ein “Overlay” im RAM geschrieben, so dass das ursprüngliche Dateisystem auf der Micro-SD nicht verändert wird, was natürlich der Lebensdauer der Micro-SD zugute kommt.

(Das Ganze heißt “Overlay”, weil es quasi “über” dem physikalischen Dateisystem liegt. Die Originaldateien “scheinen durch”, sind also sichtbar. Wenn nun Änderungen durchgeführt werden, dann werden diese im darüberliegenden “Overlay”-Dateisystem (deshalb heißt es so!) durchgeführt und “überdecken” dadurch die darunter liegenden Originaldateien.)

Das Overlay-Dateisystem befindet sich im RAM, d. h. wenn Ihr Änderungen durchführt und rebootet, dann sind sämtliche Änderungen verschwunden, da das Overlay dann nach dem Neustart “leer” ist. Wollt Ihr also permanente Änderungen durchführen, dann müsst Ihr erst das Overlay-System wieder deaktivieren, die Änderungen durchführen und dann wieder das Overlay-System aktivieren.

Wie richtet man das Ganze nun ein? Ganz einfach. Nur das raspi-config-Kommando aufrufen und dann unter Performance Options das Feature aktivieren.

Gleichzeitig empfiehlt es sich auch, anschließend die /boot-Partition mit einem Schreibschutz zu versehen (das ist auch aus Sicherheitsgründen eine gute Idee!). Man wird gefragt, ob man das möchte, bitte dann dort das Feature aktivieren.

Abschließend muss der Raspi dann noch neu gebootet werden.

Hier mal eine Gegenüberstellung, wie sich die Dateisysteme darstellen. Zunächst ohne Nutzung des Overlay-Dateisystems:

/dev/mmcblk0p2 on / type ext4 (rw,noatime)
/dev/mmcblk0p1 on /boot/firmware type vfat (rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=ascii,shortname=mixed,errors=remount-ro)

Und hier die Darstellung mit aktivem Overlay-Dateisystem:

/dev/mmcblk0p2 on /media/root-ro type ext4 (ro,relatime)
tmpfs-root on /media/root-rw type tmpfs (rw,relatime)
overlayroot on / type overlay (rw,relatime,lowerdir=/media/root-ro,upperdir=/media/root-rw/overlay,workdir=/media/root-rw/overlay-workdir/_,uuid=on)
/dev/mmcblk0p1 on /boot/firmware type vfat (ro,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=ascii,shortname=mixed,errors=remount-ro)

Das war’s auch schon. Ab nun wird die Micro-SD nicht mehr schnell verrecken, versprochen! 🙂

Viele Grüße, Ralf

By Ralf Bergs

Geek, computer guy, licensed and certified electrical and computer engineer, husband, best daddy.

Leave a Reply

Your email address will not be published. Required fields are marked *