Banana Pi – Systemsicherung bei Installation auf SATA / USB

Und hier jetzt auf besonderen Wunsch von Michael eine Möglichkeit, wie man sein komplettes System von der SATA-Platte auf einen externen Speicher sichern kann.

Wie man vorgeht, hängt ein wenig davon ab, was zur verfügung steht. Ideal wäre natürlich eine externe USB-Festplatte, die ext4-formatiert ist. Zur Not kann man auch auf der Externen Festplatte eine neue Partition erstellen, die dann ext4-formatiert ist, wenn man nicht die komplette Platte mit einem Linux Dateisystem beschreiben möchte.
Dann kann man die Daten bequem mit rsync sichern. rsync hätte den Vorteil, dass nicht bei jeder Sicherung alle Dateien gesichert werden, sondern nur Dateien mit Änderungen oder neue Dateien.

Wenn das gar nicht geht, bleibt der Weg über den Archivmanager tar. Der packt das Dateisystem so ein, dass auch bei Sicherung auf einem Windows-Dateisystem nachher alle symbolischen Links usw. wieder hergestellt werden.

Sicherung

Also gehen wir mal davon aus, dass wir eine externe Festplatte haben. In die USB-Buchse stecken, per SSH auf der Banana anmelden und erstmal schauen, wo die Platte eingehängt wurde.
Das geht mit dem Befehl ‚lsblk‘.

 # lsblk
NAME        MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda           8:0    0 931,5G  0 disk 
└─sda1        8:1    0 931,5G  0 part /
sdb           8:16   1   3,9G  0 disk 
mmcblk0     179:0    0   7,4G  0 disk 
├─mmcblk0p1 179:1    0    20M  0 part 
└─mmcblk0p2 179:2    0   7,4G  0 part 

Wie man hier sehen kann, ist die Platte auf sdb gelandet.
Jetzt wird erstmal die Platte gemounted mit

mount /dev/sdb /mnt

Wenn man jetzt mit rsync arbeiten würde, geht die Sicherung mit:

rsync -ax --exclude '/mnt' / /mnt/[Pfad zur Sicherung]

Mit dem Befehl wird – wie bei der Installation auf der festplatte – die komplette Festplatte bis auf das Verzeichnis /mnt, wo ja die externe Festplatte eingehängt ist, auf der externen Festplatte gesichert.

Wenn man mit tar arbeitet, wäre der Befehl zur Sicherung wie folgt:

tar --exclude='/mnt' zcvf / | split -b 1980m /mnt/[Pfad zur Sicherung]/backup.tar.gz

Damit wird dann die komplette Festplatte, wieder bis auf /mnt, wo die externe Festplatte eingehängt ist, in Archiven der Größe 1,9GB auf der externen Festplatte gesichert. Das Archiv wir aufgesplittet, damit es keine Probleme mit zu großen Dateien gibt.

Wiederherstellung

Wenn man sein System dann mal komplett verwurstet hat und komplett neu bespielen will, sollte man dann folgendermaßen vorgehen:

Zuerst nimmt man sich eine zweite SD-Karte, um das System von der SD-Karte zu booten. Damit wird vermieden, dass während der Rücksicherung das System abstürzt oder andere komische Sachen macht.
Wenn dann der Server gebootet ist, hängt man die externe festplatte ein und mounted sowohl die SATA-Platte als auch die USB-Platte:

mkdir /mnt/usb
mkdir /mnt/disk

mount /dev/sdb /mnt/usb
mount /dev/sda /mnt/disk

Falls man zur Sicherheit seine Festplatte neu formatieren möcht, geht das mit

 mkfs.ext4 /mnt/disk/ 

Jetzt kann man anfangen, sein System zurück zu spielen:

Bei rsync mit

rsync -ax /mnt/usb/[Pfad zur Sicherung] /mnt/disk/

Bei tar mit

cat /mnt/usb/[Pfad zur Sicherung]/backup.tar.gz.?? | tar -zxvf /mnt/disk/

Danach den Rechner ausschalten, die alte SD-Karte wieder einstecken, damit die Banane das nächste mal wieder von der Platte bootet und das sollte es gewesen sein.

Ist beides ungetestet .. Und es gibt mit Sicherheit elegantere Methoden für dieses Backup – nur fällt mir gerade keine ein 😉

Aber so sollte es auf jeden Fall funktionieren.

2 Gedanken zu “Banana Pi – Systemsicherung bei Installation auf SATA / USB

    • Gern … Sag bitte Bescheid, wie es geklappt hat. Das ist jetzt die erste Anleitung, die ich nicht selber getestet habe. Wäre mir extrem unangenehm, wenn die dann jetzt nicht funktionieren würde 🙂

      Gruß Bjoern

Schreibe einen Kommentar