Raspberry Pi richtig wiederherstellen

  • Hallo Community!

    Ich habe Schwierigkeiten, meine Raspberry Pi 4 SD Karte mit meinem Mac (Big Sur) zu sichern und wiederherzustellen.

    KONTEXT
    Mein Raspberry Pi 4 ist als headless Steuerzentrale via LAN mit dem Hausnetzwerk verbunden und läuft mit einem conbee, iobroker & homebridge. Im Grunde ist alles gut eingestellt. Die Installation folgt dem Manual https://smartapfel.de/homebridge/raspberry-pi-vorbereiten/ und nutzt die ssh Datei im root, um Zugriff via SSH zu erlauben. Leider hört der Pi ab und zu auf zu funktionieren und lässt sich nicht mehr via Mac Terminal ansprechen. Um dem vorzubeugen, möchte ich gern (mehrere) Backup SD Karten als Ersatz parat haben.

    PROBLEM
    Ich habe inzwischen verschiedene Strategien ausprobiert, Backups von dem funktionierenden System zu machen. Leider sind alle Versuche erfolglos: Die erstellten Backups lassen sich via Mac Terminal allesamt nicht ansprechen. Ich habe inzwischen 6 neue SD Karten, alle 16GB, alle gleicher Hersteller, mit denen ich versuche, Backups zu machen.


    • Ein Restore einer 16GB SD Karte über den ApplePiBaker (v 2.2.3, BigSur) erzeugt lediglich ein Backup der 268MB "Boot" Partition.
    • Ein Restore via Terminal und dd in verschiedenen Varianten scheint erfolgreich, das Ergebnis lässt sich trotzdem nicht starten
      • sudo dd if=~/Desktop/raspberrypi.dmg of=/dev/disk2 conv=sync,noerror bs=1m als langsame Standardvariante mit bis zu 12 Stunden Wartezeit
      • sudo dd if=~/Desktop/raspberrypi.dmg of=/dev/rdisk2 conv=sync,noerror bs=1m als schnellere Variante mit rdisk
      • sudo dd if=~/Desktop/raspberrypi5.dmg | pv -s 16G | sudo dd of=/dev/rdisk2 bs=8m als Variante mit dem Monitoring-Tool pv
    • Ein Restore via DiskUtility hat leider nicht geklappt, die gespeicherten Daten konnte ich nicht wieder als Restore aufspielen

    FRAGE

    Letztlich sitze ich immer vor einem stummen RaspberryPi mit einer restore-SD, der sich nicht automatisch ins LAN einwählt und nicht mehr per SSH erreichbar ist. Auch die Services (conbee, iobroker, homebridge) werden nicht gestartet.

    • Kann es sein, dass die Backups doch laufen und lediglich der SSH Zugang nicht mehr greift?
    • Ist das Quellsystem vielleicht schon kaputt?
    • Wo kann ich Hinweise auf den Fehler finden?


    ANHANG

    Im Anhang ein Bild einesdiskutil list mit einer der perdd erstellten restore-SDs aufdisk2

  • PiBaker habe ich nie getestet, denn dazu müsste ich die SD-Card aus dem Raspi nehmen, und um das zu tun, müsste ich ihn ausschalten. Meine Mutter hat mich nicht unter Schmerzen geboren, damit ich meinen Raspi ausschalte.


    Falls mir meine Homebridge abraucht, brauche ich wahrscheinlich eine Stunde, um sie auf einer neuen SD-Card erneut einzurichten. Ich verwende das Backup von homebridge-config-ui-x, um die Homebridge wieder herzustellen. Leider ist es aber bei mir ähnlich wie bei dir: da ist nicht nur eine Homebridge, sondern noch eine Node Red-Installation. Diese Konfiguration sichere ich auf GitHub und ich schätze mal, hier brauche ich eine weitere Stunde, um die wieder herzustellen.


    Dazu kommen unzählige Scripts, Cronjobs und andere Services. Wenn die weg sind, dann bin voll am A, ähm... Ende.


    Augenblicklich arbeitet bei mir ein Skript, das täglich alle möglichen Verzeichnisse in ein tar-Archiv packt, unter anderem /usr/local/bin/, /etc, /home/pi, /home/homebridge und andere, wobei ich meist nur Teile dieser Verzeichnisse sichere, um das Backup nicht zu groß werden zu lassen. Letztendlich landen die dann automatisiert auf iDrive.


    Um das alles wieder herzustellen, brauche ich dann mindestens zwei weitere Stunden. Ich wäre also insgesamt vier, fünf Stunden beschäftigt. Ich habe anfangs auch mit dd gearbeitet, aber das war so lahm und die Images so groß, dass ich davon wieder Abstand genommen habe. Auch ätzend.


    Um es völlig richtig zu machen, müsste ich alles auf Docker betreiben: ein Container mit Homebridge, ein Container mit Node Red, ein Container mit pi-hole, ein Container mit meiner Sonos-API, ein Container mit Skripten und CronJobs, ein Container, der sich um das Backup kümmert. Das würde aber bedeuten, dass man bei Änderungen irgendeiner Konfiguration diese für Docker machen müsste, daraus dann ein neues Docker-Image erstellt und dieses in irgendeiner Registry speichert. Aber so wäre es gut und richtig.

  • Um das alles wieder herzustellen, brauche ich dann mindestens zwei weitere Stunden. Ich wäre also insgesamt vier, fünf Stunden beschäftigt.


    Klingt für mich - Mutter hin, Mutter her - nach einem klaren Plädoyer für den PiBaker (Recovery in 10 Minuten).


    Gilt aber vorrangig für Warmduscher, wie mich (der ich frei von aller Fachkenntnis dilettiere).

  • det genau so mache ich das auch. conv=sync,noerror brauche ich, weil sonst Fehler zu einem Abbruch führen. Vielleicht ist das der Knackpunkt?

    sschuste Deine Situation durfte ich jetzt schon öfter erleben: Im Haus geht kein Licht mehr und ich bin gezwungen, quasi sofort viele Stunden den Pi neu aufzusetzen und einzurichten. Ein Conbee ist dann immer neu auf der Suche nach Devices und verteilt neue IDs, die extra gesicherten Backups helfen dann nicht mehr und es braucht eine fummelige Neueinrichtung aller einzelnen (!) Teile. Da muss doch jemand von euch einen besseren Workflow haben?

  • Wenn Du mir Conbee, deConz meinst kann man mit Phoscon eine Sicherung machen und diese wieder mit Phoscon zurück spielen.

    Danach ist alles wieder da und funktioniert (musste ich leider selber erfolgreich durchführen)


    Für mich bedeutet eine Sicherung, das nach dem restore alles sofort wieder funktioniert.

    (Netzwerk, WLAN, ssh, deConz usw.)


    Ich sichere den laufenden Raspberry komplett in ein Image auf einen angesteckten USB Stick.

    Leider musste ich schon mehrmals eine Restore machen, dieses mache ich mit Etcher

    Image auf neue SD Card schreiben, SD Card in Raspberry, Strom an und alles funktioniert wieder.

  • Ich nutze mein Tool raspiBackup.sh Homebridge-Tool zum aktualisieren, sichern, neu aufsetzen.....

    Montags 6:00 Uhr (raspiBackup.sh -cmd -sz) mache ich eine Sicherung mit geschrinktem Image, damit dies auch auf eine SD Card past die etwas kleiner ist.

    Täglich 15.00 Uhr eine Sicherung (raspiBackup.sh -cmd) in ein normales Image.

    Dies auf mehreren Raspberry‘s Homegridge; MagicMirror...

    Hilfe mit raspiBackup.sh -?