Wenn Du (wie ich)
- Deine Festplatte in der Umbrel-Node vergrößern möchtest ohne
- die Blockchain erneut komplett herunterzuladen und zu verifizieren
- Du Deine Historie der geschlossenen Lightning-Kanäle etc. erhalten möchtest und
- nicht einfach alte Blöcke abschneiden/entfernen möchtest (Prune Old Blocks)
kannst Du dies unter dem Betriebssystem Linux wie nachfolgend beschrieben durchführen. Fehler in der Anleitung gern kommentieren, diese verbessere ich dann.
Meine Motivation für diese Anleitung: Ich habe zwei Tage nach der Lösung gesucht und dafür die Foren von Umbrel, Blocktrainker und weitere durchsucht sowie Chat GPT bemüht. Chat GPT hat mir dabei wirklich sehr geholfen, wegen der Gefahr der Halluzinationen (Falschaussagen) habe ich die Antworten (insbesondere Linux-Befehle) jedoch stets gegen geprüft (da ich mich selbst zu wenig auskenne).
Achtung: Die unten beschriebenen Tools überschreiben das Ziellaufwerk. Darauf befindliche Daten gehen unwiderruflich verloren. dd und ddrescue überschreiben das angegebene Ziel ohne Nachfrage. Es muss also genau verstanden werden, was zu tun ist.
Was zunächst fehlgeschlagen war:
- clonezilla (https://clonezilla.org/): Brach wiederholt nach kurzer Zeit mit einer Fehlermeldung ab
- dd (dd › Wiki › ubuntuusers.de): Brach nach ca. 30 Minuten ab (zweimal versucht)
Erfolgreich war schließlich ddrescue (gddrescue › Wiki › ubuntuusers.de), eigentlich ein Tool zur Datenrettung von defekten Datenträgern. Auch ddrescue brach zunächst nach ca. 30 Minuten einmal ab, lief anschließend jedoch fehlerfrei durch. Mit der Laufwerksverwaltung (Alternative: GPartet) habe ich die geklonte Partition am Schluss vergrößert, um die gesamte Festplatte nutzen zu können.
Die geklonte SSD zurück in den Raspberry Pi eingebaut wurde diese sofort und mit voller (neuer) Größe erkannt. Die Blockchain (ca. 2 Tage war die Umbrel-Node ausgeschaltet) war bereits nach ca. 1 Stunde wieder aktuell.
Zum System: Die beiden SSD haben das Format SATA in der Bauform M.2. Der Rapberri Pi ist ein einem Gehäuse mit eingebauter M.2 SATA-Festplatte (M oder M+B). SATA (weil nur noch selten verwendetes Datenformat) ist nicht mehr überall erhältlich, im lokalen Handel hatte ich sie gar nicht gefunden, jedoch online bestellen können. Für den Kopiervorgang habe ich die Festplatten in zwei externe USB-Gehäuse eingebaut. Die zunächst preiswert lokal für je 16 Euro gekauften funktionierten weder unter Linux noch unter Windows. Online habe ich dann hochwertigere für je 50 Euro erworben. Da diese beide USB-C-Anschlüsse haben, mein Rechner jedoch nur ein USB-C-Anschluss hat, brauchte ich für die zweite Platte noch einen Adapter von USB-C auf USB-A. Das verlangsamt den Kopiervorgang, weshalb die gut 6 Stunden Kopierdauer sicherlich ein Maximum sind.
Vorbemerkung:
Am besten verhindern, dass die Festplatten nach dem Anschließen an USB überhaupt gemountet werden. Unter Linux Mint Cinnamon:
Dateimanager → Bearbeiten → Einstellungen → Wechselmedien → Automatisch mounten deaktivieren
Alternativ nach dem Einstecken sofort wieder auswerfen (umount im Terminal oder über den Dateimanager oder im Festplattenverwaltungsprogramm auswerfen).
Die Quelle darf gemountet sein, sollte es aber zur Sicherheit nicht, das Ziel darf keinesfalls gemountet sein, damit das System nicht darauf schreiben kann.
Anleitung von Chat GPT sind ohne Klammern.
(gddrescue › Wiki › ubuntuusers.de) In runden Klammern wurde der Befehl verifiziert
[Personalisiert auf eigenes System] In eckigen Klammern habe ich Anpassungen auf mein eigenes System vorgenommen
Unbedingt darauf achten, die Quelle zuerst anzustecken und prüfen, ob sie als sda und das Ziel als sdb aufgeführt sind, sonst die Befehle entsprechend anpassen.
1. Vorbereiten
lsblk (prüfen, welche Platte welche Zuweisung bekommen hat)
sudo umount /dev/sdb* (wenn gemountet wieder auswerfen)
sudo apt install gddrescue (falls das Programm noch nicht installiert ist)
(sudo apt-get install gddrescue) (Alternative von Ubuntuusers)
2. Erster Lauf (schnelle Kopie ohne Retry)
sudo ddrescue -f -n /dev/sda /dev/sdb /home/deinuser/clone.log
(ddrescue -n QUELLE ZIEL ddrescue.log)
[sudo ddrescue -f -n /dev/sda /dev/sdb /home/thok/clone.log]
Dies, falls Abbrüche auftreten, wiederholen, bis die Festplatte komplett geklont wurde.
Die Logdatei ist dabei sehr wichtig, damit das System nach einem Abbruch dort wieder ansetzen kann und nicht von vorn anfangen muss. Sie kann und sollte später wieder gelöscht werden.
Erst nach dem kompletten Klonen der Festplatte:
3. Wiederholung bei Lesefehlern (falls gewünscht)
sudo ddrescue -f -r3 /dev/sda /dev/sdb /home/deinuser/clone.log
[sudo ddrescue -f -r3 /dev/sda /dev/sdb /home/thok/clone.log]
Option und Bedeutung
- -f Force: überschreibt die Zielplatte ohne Nachfrage
- -n Kein Retry beim ersten Durchgang → schnelle Kopie aller fehlerfreien Bereiche
- -r3 3 Versuche, um die Daten zu retten (bei -1 wird das Programm so lange ausgeführt, bis alle Fehler behoben wurden)
- /dev/sda Quellgerät (deine 1 TB SSD)
- /dev/sdb Zielgerät (deine 2 TB SSD)
- clone.log Logfile für Resume und Retry – hier /home/deinuser/clone.log, du kannst einen anderen Pfad wählen
4. Partition auf der Zielplatte erweitern
Die neue Partition hat die gleiche Größe wie die alte Festplatte. Damit die Platte in voller Größe verwendet werden kann, muss die Partition entsprechend vergrößert werden.
Unter Linux Mint Cinnamon konnte ich das mit der schon installierten App „Laufwerke“ sehr einfach und intuitiv bewerkstelligen, GPartet brauchte ich dafür nicht. Viele Anleitungen verweisen jedoch darauf, weshalb ich es hier aufführe.



