GNU/Linux: automatisches Klonen eines Systems mit mit LUKS+dm-crypt verschlüsselten Partitionen

GNU/Linux: automatisches Klonen eines Systems mit mit LUKS+dm-crypt verschlüsselten Partitionen

Ich möchte einen aktuellen Klon eines (Debian) GNU/Linux-Systems auf einer externen Festplatte haben und so jederzeit die interne Festplatte durch die externe Festplatte ersetzen können und in kürzester Zeit einsatzbereit sein. Da sich das System auf einem Laptop befindet, kann ich mich nicht auf eine hardwarebasierte Spiegelungslösung verlassen.

Ich wünsche mir, dass der Sicherungsvorgang so automatisch und unkompliziert wie möglich abläuft. Beispielsweise könnte er beim Herunterfahren automatisch ausgeführt werden, wenn eine externe Festplatte angeschlossen wird.

Ich habe bereits eine externe Festplatte mit einem Klon der Systempartitionen.

Der Vorbehalt besteht darin, dass die Partition, die die/Das Verzeichnis ist mit LUKS+dm-crypt verschlüsselt und ich möchte es lieber vermeiden, für das Backup erneut Passwörter einzugeben.

Ich konnte die externe verschlüsselte Partition vor dem Herunterfahren automatisch mounten.

Gibt es eine vorgefertigte Lösung? Bitte antworten Sie nur, wenn dies der Fall ist. Andernfalls werde ich eine spezielle Frage stellen, um eine benutzerdefinierte Lösung zu implementieren.

Dank für Ihre Aufmerksamkeit.

Antwort1

Das Backup geht viel schneller, wenn Sie nur das sichern, was sich geändert hat. Dies muss auf Dateiebene erfolgen, wobei verschlüsselte Container gemountet werden müssen, da Dateien einen Zeitstempel tragen, der es dem Backup-Tool ermöglicht, Dateien zu überspringen, die seit dem letzten Backup nicht geändert wurden.

Um die Datei zu kopieren,rsyncist das Tool der Wahl. Sie müssen jedes Dateisystem mit dem entsprechenden auf der externen Festplatte synchronisieren:

rsync -ax / /media/backup-hdd/root

Verwenden Sie für jede Partition einen dedizierten Blockgerätenamen und einen dedizierten Einhängepunkt, um nicht auf generische Namen wie sdb1und angewiesen zu sein /media/sdb1, die ein anderes Laufwerk bezeichnen könnten. Dies geschieht über udev; sieheAutomatisierung der Abfolge von Mounting-Befehlen.

Um ein Skript beim Herunterfahren auszuführen, fügen Sie es ein /etc/init.dund erstellen Sie symbolische Links dazu in /etc/rc0.dund /etc/rc6.d(0 für Ausschalten, 6 für Neustart) genannt S01my-backup. Das Skript muss mehrere Dinge tun:

  • Überprüfen Sie, ob das Sicherungslaufwerk bereits gemountet ist (indem Sie in nach dem Mount-Punkt suchen /proc/mounts).
  • Wenn das Sicherungslaufwerk nicht gemountet ist, überprüfen Sie, ob es vorhanden ist (indem Sie in nach dem Blockgerät suchen /dev).
  • Wenn das Sicherungslaufwerk nicht vorhanden ist, geben Sie entweder auf oder fordern Sie den Benutzer auf, es anzuschließen.
  • Wenn das verschlüsselte Volume nicht gemountet ist, müssen Sie den Benutzer zur Eingabe des Kennworts auffordern. Sobald das verschlüsselte Volume verfügbar ist, mounten Sie die Dateisysteme.
  • Führen Sie abschließend aus rsync.

Wenn Sie das externe verschlüsselte Volume nicht mounten möchten, können Sie das verschlüsselte Volume komplett kopieren. Das ist zwar einfach, hat aber einen großen Nachteil: Es ist sehr, sehr langsam, da Sie jedes Mal die gesamte Festplatte neu abbilden müssen. Wenn dies mittendrin fehlschlägt, haben Sie außerdem ein nicht lesbares Backup – das Backup ist erst nach einem vollständigen Durchlauf wohlgeformt. Sie sollten auch die Quellmountung auf schreibgeschützt umstellen, da Sie sonst riskieren, inkonsistente Daten zu kopieren.

verwandte Informationen