Forum: PC Hard- und Software Rasberry Pi und Co: Abhärten gegen Stromentzug


von Borislav B. (boris_b)


Lesenswert?

Hallo!
Ich habe hier einen Udoo und einen Raspberry Pi. Beide Geräte haben 
dasselbe Problem: wenn man den Strom abzieht ohne vorhher 
herunterzufahren, ist die SD Karte im Eimer. Oft hilft dann ein erneutes 
Auspielen des Images, manchmal ist die SD Karte aber auch ganz kaputt. 
Das ist nervig und arbeitsintensiv.

Da ich auf dem Udoo gerne einen Server betreiben möchte, soll dieser 
auch nach einem Stromverlust einfach wieder booten und weiterarbeiten.

Folgendes würde ich mir wünschen:
 - ein Read-Only File System, das bei jedem Boot wieder im 
Ursprungszustand ist.
 - Die möglichkeit den Read-Only-Modus kurz zu deaktivieren, um z.B. ein 
Softwareupdate zu machen.
 - Ein schreibbarer Bereich, auf dem man Daten ablegen. Dieser sollte 
aber nicht zu empfindlich sein, und auch einen harten Neustart 
überleben.

Hier und da gibt es zawar Anleitungen im Netz, aber die sind für eien 
Linux-Leien vollkommen unverständlich :-/
Gibt es vielleicht eine Distribution/ein Tool mit dem man sowas auch als 
Normalsterblicher hinbekommt?

von Sabine W. (sabine_w)


Lesenswert?

Und wie wäre es mit nem Puffer, der noch so lange Strom liefern kann, 
bis das System ordnungsgemäß runter gefahren wurde?

von Borislav B. (boris_b)


Lesenswert?

Sabine W. schrieb:
> Und wie wäre es mit nem Puffer, der noch so lange Strom liefern kann,
> bis das System ordnungsgemäß runter gefahren wurde?

Woran fürde das Gerät denn merken, dass es Zeit zum Runterfahren ist?

Davon ab hat ein R-O-Dateisystem ja auch noch den Vorteil, dass nach 
jedem reboot das system genau in dem Zustand ist, den man definiert hat. 
Keine Probleme mit korrupten Dateien, fehlerhaften Updates, 
Viren/Malware oder sonst was. Den Ansatz würde ich schon bevorzugen...

von Εrnst B. (ernst)


Lesenswert?

Andere Frage: Wenn die SD-Karte beim Stromausfall so kaputt ist, dass 
nichtmal ein Neuaufspielen des Images hilft/geht, wie soll ein 
RO-Dateisystem davor schützen?

von Borislav B. (boris_b)


Lesenswert?

Εrnst B✶ schrieb:
> Andere Frage: Wenn die SD-Karte beim Stromausfall so kaputt ist, dass
> nichtmal ein Neuaufspielen des Images hilft/geht, wie soll ein
> RO-Dateisystem davor schützen?

Wenn es keine Schreibzugriffe gibt während das System abgeschaltet wird, 
sollte das Problem nicht auftreten. Und ein Read-Only Dateisystem hat ja 
per Definition keine Schreibzugriffe ;-)

: Bearbeitet durch User
von Kaj (Gast)


Lesenswert?

Boris P. schrieb:
> wenn man den Strom abzieht ohne vorhher
> herunterzufahren, ist die SD Karte im Eimer.
Das Problem hast du nicht nur bei Raspberry, UDOO und co, sondern auch 
bei einem normalen PC: Wenn du einfach den Stecker ziehst, kann danach 
auch deine Windowsinstallation im arsch sein!

Boris P. schrieb:
> ein Read-Only File System
Aendert aber nichts an der Tatsache, das das System nicht sauber 
runtergefahren wurde, und dein schreibbarer Bereich (den ja auch 
irgendwie brauchst) danach im eimer sein kann. Ob nun dein komplettes 
system fuer die tonne ist, oder nur deine nutzdaten, spielt dann auch 
keine rolle: irgendwie musst du daten wieder herstellen! Egal wie, es 
ist zeitaufwendig. Und einfach das Image neu auf die SD-Karte braten, 
ist da noch die einfachste methode.

Boris P. schrieb:
> manchmal ist die SD Karte aber auch ganz kaputt.
Wenn die SD-Karte danach kaputt ist, also nicht mehr zu benutzen, dann 
lauft was ganz anderes falsch! Alternativ nicht den billigen schrott 
kaufen, sondern n paar euro mehr drauf legen und was kaufen, was fuer 
den Industrie einsatz, und nicht den Konsumermarkt, gedacht ist.

Boris P. schrieb:
> Woran fürde das Gerät denn merken, dass es Zeit zum Runterfahren ist?
Interrupts! Schon mal USV-Systeme gesehe? Da gibt es mechanismen, die 
dem PC/Server signalisieren koennen, das der Strom ausgefallen ist, und 
sich der PC/Server jetzt runterfahren soll.

von Borislav B. (boris_b)


Lesenswert?

Kaj schrieb:
> Das Problem hast du nicht nur bei Raspberry, UDOO und co, sondern auch
> bei einem normalen PC: Wenn du einfach den Stecker ziehst, kann danach
> auch deine Windowsinstallation im arsch sein!

Eigentlich nicht. Meinen Windows PC habe ich schon unzählige Male hart 
neustarten müssen. manchmal meckert Windows beim nächsten Bootvorgang, 
aber kaputt war noch NIE was. Die kleinen Linuxkisten sind bei mir in 
100% aller Fälle (habe es jetzt insgesammt mehr oder weniger freiwillig 
6x ausprobiert) hinüber.

Kaj schrieb:
> Aendert aber nichts an der Tatsache, das das System nicht sauber
> runtergefahren wurde, und dein schreibbarer Bereich (den ja auch
> irgendwie brauchst) danach im eimer sein kann

Für den schreibbaren Bereich könnte man ja ggf. ein spezielles 
Dateisystem nutzen, das keine Probleme mit sowas hat (kann ja ruhig 
langsam sein). Irgendwas mit Journaling?

von Εrnst B. (ernst)


Lesenswert?

Wenn sich auf die SD kein Image mehr aufspielen lässt, dann ist die 
Hardwaremäßig kaputt... Wird die Hardware resistenter, wenn im letzten 
Augenblick grad nur "Lese"-Elektronen durch den VCC-Anschluss flossen, 
und keine "Schreib"-Elektronen?


Ich hab hier ein ARM-Board 24/7 laufen, Filesystem auf SD-Karte, als 
Private-Cloud-Server.
Da wird relativ viel geschrieben, Strom fällt auch ab und an aus, noch 
nie ist das Dateisystem beschädigt gewesen (bis auf den normalen 
"journal replay") und erst recht ist noch nie die SD-Karte kaputt 
gegangen.

# cat /sys/fs/ext4/mmcblk0p3/lifetime_write_kbytes
258251113

Sicher dass das nicht ein Hardware-Problem vom RasPI ist?
Oder hast du irgendwelche halb-garen Tuning-Tipps befolgt, und das 
Journaling abgeschaltet?

von Jürgen H. (nobody)


Lesenswert?

Mich würde das auch interessieren.

Bei meinem Rasp ist es nun schon 2 mal passiert das dass Filesystem 
schrott war.

Nur ein neuaufspielen konnte ihn wieder zum leben erwecken.

Haben mehr Leute dieses Problem?

von chris (Gast)


Lesenswert?

rpi mit freebsd (ufs mit soft update) sowie log filesystem ist zimlich
Resisten gegen diese Ausfall.

von Borislav B. (boris_b)


Lesenswert?

Jürgen H. schrieb:
> Haben mehr Leute dieses Problem?

Jo, die RPI Foren sind voll von solchen Beiträgen...

von klaushuber (Gast)


Lesenswert?

o_O

Mein Raspi wird taeglich 1-2x hart ausgeschaltet. Konkret: jedes mal 
wenn mein Verstaerker im Wohnzimmer aus gemacht wird. Der Raspi wird mit 
diesesm zusammen mit strom versorgt und sobald der Verstaerker aus ist, 
hat auch der Raspi keinen Saft mehr. Zeit zum shutdown bleibt da nicht.

Ich hatte seit mittlerweile 1.5 Jahren noch nie Probleme dass der Raspi 
nicht mehr booten will. Geschweige denn dass die SDkarte anschliessend 
defekt war.

Zugegeben: der Raspi dient als streaming Client, hat also recht wenig 
schreibzugriffe auf der SDkarte durchzufuehren.

Gruss,
Klaus

von Amateur (Gast)


Lesenswert?

Oft helfen ein dicker Kondensator (oder Hi-Cap) - als moralische Stütze,
ein Komparator - zur Spannungsüberwachung und
ein Interruptfähiger Port um den shutdown einzuleiten.
Diode gegen Rückspeisung nicht vergessen.
Normalerweise geht es ja nur um einen rel. kurzen Zeitraum, weshalb auch 
kein 100AH Akku nötig ist.

von Simon S. (-schumi-)


Lesenswert?


von Rolf Magnus (Gast)


Lesenswert?

Kaj schrieb:
> Boris P. schrieb:
>> wenn man den Strom abzieht ohne vorhher
>> herunterzufahren, ist die SD Karte im Eimer.
> Das Problem hast du nicht nur bei Raspberry, UDOO und co, sondern auch
> bei einem normalen PC: Wenn du einfach den Stecker ziehst, kann danach
> auch deine Windowsinstallation im arsch sein!

Ob das bei Windows so ist, weiß ich nicht. Bei Linux ist das auf dem PC 
aber eigentlich kein Problem, wenn man das nicht gerade während eines 
System-Upgrades macht. Ich verstehe nicht ganz, was der Raspi mit der 
SD-Karte anstellt, daß das bei dem anders ist.

Boris P. schrieb:
> Für den schreibbaren Bereich könnte man ja ggf. ein spezielles
> Dateisystem nutzen, das keine Probleme mit sowas hat (kann ja ruhig
> langsam sein). Irgendwas mit Journaling?

Da braucht's nichts spezielles. Die unter Linux heute üblichen 
Filesysteme haben alle Journalling und kein Problem damit, wenn im 
Betrieb der Strom aus geht.

von Stefan W. (dl6dx)


Lesenswert?

Rolf Magnus schrieb:
> Ich verstehe nicht ganz, was der Raspi mit der
> SD-Karte anstellt, daß das bei dem anders ist.

Das ist in der Tat eine interessante Frage. Hier liegt gerade ein Modell 
B, das vorgestern bei einem Raspian-Update zwei Mal das Filesystem 
zerschossen hat. Ok ist das nicht.

Ich werde mir die Tage mal die Versorgungsspannungen (insbesondere am 
SD-Karten-Sockel) unter höherer Systemlast (Schreibzugriffe) ansehen. 
Nicht, dass es da knapp wird.

Grüße

Stefan

von Kaj (Gast)


Lesenswert?

Rolf Magnus schrieb:
> Kaj schrieb:
>> Boris P. schrieb:
>>> wenn man den Strom abzieht ohne vorhher
>>> herunterzufahren, ist die SD Karte im Eimer.
>> Das Problem hast du nicht nur bei Raspberry, UDOO und co, sondern auch
>> bei einem normalen PC: Wenn du einfach den Stecker ziehst, kann danach
>> auch deine Windowsinstallation im arsch sein!
>
> Ob das bei Windows so ist, weiß ich nicht. Bei Linux ist das auf dem PC
> aber eigentlich kein Problem
Normalerweise stellt es auch für Windows kein Problem dar, aber es 
kann ein Problem sein. Denn du kannst nie garantieren das das System 
(egal ob Win, Linux, BSD, Apple oder was auch immer) in einem Zusatand 
ist, wo nichts kaputt gehet, wenn plötzlich der Strom weg ist. In der 
Regel werden ja vom System nach so einer Aktion auch reparaturarbeiten 
durchgeführt, um die Intigrität des Systems (falls nötig) wieder 
herzustellen, die der Benutzer nicht unbedingt mitbekommt.
Wie gesagt: Normalerweise stellt es kein Problem dar. Aber wir wissen 
alle das es auch Ausnahmen gibt, wie du ja selber sagst: Ungüstige 
Momente (z.B. System-Upgrade)

Diese Ausnahmen haben aber nichts mit dem Problem des TO zu tun, da von 
so einer Aktion ein Speichermedium nicht einfach elektrisch zerstört 
wird.

von Uhu U. (uhu)


Lesenswert?

Rolf Magnus schrieb:
> Da braucht's nichts spezielles. Die unter Linux heute üblichen
> Filesysteme haben alle Journalling und kein Problem damit, wenn im
> Betrieb der Strom aus geht.

ext2 hat kein Journal, das kam erst mit ext3. Es kommt also darauf an, 
was da zusammenkonfiguriert wird.

von Rolf Magnus (Gast)


Lesenswert?

Kaj schrieb:
> Wie gesagt: Normalerweise stellt es kein Problem dar. Aber wir wissen
> alle das es auch Ausnahmen gibt, wie du ja selber sagst: Ungüstige
> Momente (z.B. System-Upgrade)

Ja, nur ist das beim PC meiner Erfahrung nach nur sehr selten der Fall. 
Beim Raspi scheint es aber nach dem, was man so liest, nahezu jedesmal 
zu passieren.

Uhu Uhuhu schrieb:
> ext2 hat kein Journal, das kam erst mit ext3. Es kommt also darauf an,
> was da zusammenkonfiguriert wird.

Ich hab deshalb ja auch "heute üblich" dazugeschrieben. Natürlich 
unterstützt Linux auch noch Filesysteme, bei denen es kein Journalling 
gibt, aber ich würde ext2 nicht unbedingt mehr als üblich bezeichnen. 
Aber auch bei ext2 ist eher selten sofort gleich das ganze Filesystem 
Schrott, wenn mal der Rechner im Betrieb ausgeht. Es wird halt ein 
ausgiebiges fsck durchgeführt, und das eine oder andere File, das noch 
nicht fertig rausgeschrieben war, ist halt dann kaputt, aber es ist 
nicht gleich alles weg.

von Uhu U. (uhu)


Lesenswert?

Rolf Magnus schrieb:
> aber ich würde ext2 nicht unbedingt mehr als üblich bezeichnen

Für Boot-Partitions ist es durchaus üblich. Dort hat ein Journal wenig 
Sinn und die Bootsoftware kann sowieso nichts damit anfangen.

von Georg (Gast)


Lesenswert?

Hallo,

ein RO-Dateisystem schützt beim Abschalten gegen garnichts. Das geht nur 
mit einem Hardware-Schutz, d.h. bei Unterschreiten der kritischen 
Spannung müsste die SD-Karte HARDWAREMÄSSIG gegen Schreiben gesperrt 
werden, sofern das überhaupt geht. Bei einer Festplatte werden mit dem 
Herunterfahren die Köpfe ausserhalb des Datenbereichs geparkt - klappt 
das nicht, kann der Kopf beim Abschalten der Versorgung aufschlagen und 
Daten beschädigen, Software kann daran nichts ändern, es läuft ja keine 
mehr.

Einen ähnlichen Schutz muss es auch bei SD-Karten geben, sonst könnte 
man sie überhaupt nicht vernünftig benutzen. Du müsstest also zum Schutz 
das Gleiche tun, was das System beim korrekten Herunterfahren tut, aber 
bevor du da ein grösseres wissenschaftliches Projekt ins Leben rufst 
wäre es doch einfacher, das System mit Batteriepufferung sauber 
herunterzufahren, wie das jede USV veranlasst.

RO per Software beruht ja nur auf Konvention, selbst bei den meisten 
USB-Sticks ist das so, dass irgendwo der Wunsch vermerkt ist, bitte 
nicht schreiben. Aber ein abstürzender Prozessor hält sich nicht an 
Wünsche. Das ist ganz unabhängig davon, ob Windows oder Linux nicht 
läuft.

Georg

von Peter D. (peda)


Lesenswert?

Georg schrieb:
> Das geht nur
> mit einem Hardware-Schutz, d.h. bei Unterschreiten der kritischen
> Spannung müsste die SD-Karte HARDWAREMÄSSIG gegen Schreiben gesperrt
> werden

Ich denke, das wird das Problem des Rasberry Pi sein.
Er wird bei Unterspannung Amok laufen und willkürliche Kommandos an die 
SD-Karte schicken.

Man müßte z.B. mit einem kleinen 8Bitter (ATtiny13) die Spannungen 
überwachen und dann über einen Analogschalter (74HC4066) die SD-Karte 
trennen, bzw. beim Power-On verzögert zuschalten.

von Lukas K. (carrotindustries)


Lesenswert?

Georg schrieb:
> Bei einer Festplatte werden mit dem
> Herunterfahren die Köpfe ausserhalb des Datenbereichs geparkt - klappt
> das nicht, kann der Kopf beim Abschalten der Versorgung aufschlagen und
> Daten beschädigen, Software kann daran nichts ändern, es läuft ja keine
> mehr.
Das war mal so. Jede halbwegs neue Festplatte (dieses Jahrtausend) parkt 
die Köpfe mit der Rotationsenergie der Platten.

Peter Dannegger schrieb:
> bzw. beim Power-On verzögert zuschalten.
Das wird dem SoC nicht gefallen, da er unmittelbar von der SD-Karte 
booten will.

von Test (Gast)


Lesenswert?

Also ich kann das Problem nicht nachvollziehen...habe ca. 20 von den 
Dingern aus verschiedenen Chargen (A und B) Version und die in jeglicher 
Hinsicht gequält..Ein kaputtes Dateisystem hatte ich noch nicht außer 
bei ganz billigen Samsung SD Karten..da war aber die komplette Karte 
jeweils hin nach nem Powerdown o.ä. Mit jegliche anderen Karten ist mir 
sowas noch nicht passiert... Nimm zB SanDisk Extreme Pro...

von foobar (Gast)


Lesenswert?

Ich hab kaputte Dateisysteme am Pi nur in Verbindung mit Übertakten 
beobachten können.

von Amateur (Gast)


Lesenswert?

>Man müßte z.B. mit einem kleinen 8Bitter (ATtiny13) die Spannungen
>überwachen und dann über einen Analogschalter (74HC4066) die SD-Karte
>trennen, bzw. beim Power-On verzögert zuschalten.
Ich schätze mal, dass das genauso schlimm ist, wie einfach Strom weg.

Alles, was "neben" dem System läuft ist Gift.

Schaut euch mal die Formatierung eurer Karten an. Traditionell ist da 
oft FAT32 drauf. Also nix mit Journal und doppeltem Boden.

von Εrnst B. (ernst)


Lesenswert?

Amateur schrieb:
> Schaut euch mal die Formatierung eurer Karten an. Traditionell ist da
> oft FAT32 drauf. Also nix mit Journal und doppeltem Boden.

Auch die vielen "Supergeheimen RasPi-Tuning-Tipps, die euch die 
Linux-Bonzen nicht verraten wollen" beginnen oft mit:

  tune4fs -O ^has_journal /dev/XXX

oder

  mkfs.ext4 -O ^has_journal /dev/xxx

Und gehen weiter mit (schon eher sinnvollen) Mount/fstab-Optionen wie

  data=writeback,noatime,nodiratime

von jetzt (Gast)


Lesenswert?

>Woran fürde das Gerät denn merken, dass es Zeit zum Runterfahren ist?

Indem man des Stromausfall direkt detektiert, vor dem powersupply, und 
das powersupply kann aufgrund von irgendwas genuegend Power liefern um 
das Herunterfahren zu bewerkstelligen. Kann auch ein kleiner Akku sein.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.