Btrfs parte 2: Backup mit Lichtgeschwindigkeit (ohne rsync)

Veröffentlicht von TheJoe am

Geschätzte Lesezeit: 2 Minuten

Im vorherigen Beitrag haben wir gesehen, wie wir unser System widerstandsfähig machen können “vor Ort” mit RAID und Snapshot. Aber wenn der PC explodiert oder der Server gestohlen wird, Lokale Snapshots sind nutzlos. Heute machen wir den Qualitätssprung: Lass uns lernen, es zu benutzen Btrfs Senden und Empfangen.

Vergessen rsync und seine endlosen Dateiscans. Mit Btrfs, Das Backup wird zu einem reinen Datenstrom, Es werden nur die Blöcke übertragen, die sich seit dem letzten Mal tatsächlich geändert haben.

1. Die Logik: weil Senden/Empfangen besser ist

Die Einschränkung von rsync besteht darin, dass Daten und Größen verglichen werden müssen (o ich prüfe die Summe) jeder einzelnen Datei zwischen Quelle und Ziel. Wenn Sie Millionen von Dateien haben, Sie verschwenden Minuten damit, herauszufinden, was Sie übertragen möchten. Btrfs, ein Dateisystem sein Copy-on-Write, Verfolgt bereits jeden geänderten Block. Der Befehl send extrahiert diese Unterschiede und die “speichern” gegenüber dem Befehl receive, der sie ans Ziel schreibt.

Grundvoraussetzung: Beide unterstützen (Quelle und Ziel) Sie müssen in Btrfs formatiert sein.

2. Üben: Backup auf externe Festplatte

Angenommen, wir möchten unsere Daten sichern /home Es ist ein USB-Laufwerk. Erstellen wir zunächst einen schreibgeschützten Snapshot (für den Versand unerlässlich):

# Crea lo snapshot di sola lettura
sudo btrfs subvolume snapshot -r /home /home/backup_temp

Jetzt senden wir alles auf die eingebundene externe Festplatte /mnt/backup_disk:

# Il primo invio (Full Backup)
sudo btrfs send /home/backup_temp | sudo btrfs receive /mnt/backup_disk/

Ab dem nächsten Mal, wir können es verschicken inkrementell, Angabe des vorherigen Schnappschusses als Basis. Es wird eine Frage von Millisekunden sein.

3. Remote-Backup über SSH: maximale Effizienz

Das ist mein Lieblingsteil. Wir können den Datenstrom durch einen SSH-Tunnel senden. Ideal für diejenigen mit Glasfaserverbindungen mit nicht übermäßigem Upload, weil Sie nur die wenigen MB versenden, die sich im Laufe des Tages geändert haben.

# Invia lo snapshot a un server remoto
sudo btrfs send /home/backup_oggi | ssh utente@server "sudo btrfs receive /backup/remoto"

Die Daten erreichen ihr Ziel genau so, wie sie es verlassen haben, mit der durch die nativen Prüfsummen des Dateisystems garantierten Integrität.

Schau hier:  10 Linux-basierte Firewalls

4. Automatisierung: Machen Sie es nicht von Hand (ein Btrbk)

Seien wir ehrlich: Niemand denkt daran, diese Befehle jeden Tag zu erteilen. Deshalb existiert es Btrbk. Es ist ein Perl-Skript, sehr leicht, welches mit einer einfachen Textdatei in konfiguriert wird /etc/btrbk.conf.

Sie sagen ihm, welches Subvolume überwacht werden soll, Wie viele Exemplare sollen aufbewahrt werden? (ist. 7 täglich, 4 Weekly) und wohin man sie schicken kann. Er kümmert sich um die Erstellung der Schnappschüsse, Führen Sie den Sende-/Empfangsvorgang durch und löschen Sie die alten.

Kurzes Btrbk-Konfigurationsbeispiel:

volume /mnt/data
  subvolume home
    target send-receive /mnt/backup_esterno
    snapshot_preserve_min 2d
    snapshot_preserve 7d

5. Notfallwiederherstellung: Die “Stiefel” aus dem Backup

Was passiert, wenn die Hauptfestplatte ausfällt?? Wenn Sie Senden/Empfangen auf einem anderen internen oder externen Laufwerk verwendet haben, Ihre Daten liegen bereits im Subvolume-Format vor. Das musst du nicht “Extrakt” ein .tar- oder .zip-Archiv. Mounten Sie einfach das Backup und, ggf, Benutze es wie neu /home einfach bearbeiten /etc/fstab. Es ist die schnellste Erholung der Welt.

Vorsicht: Denken Sie daran, dass Snapshots als Grundlage für inkrementelle Arbeiten dienen (der Parameter -p nel senden) sie müssen auf beiden Seiten vorhanden sein. Wenn Sie den Snapshot löschen “Vater” von der Sicherungsdiskette, Der nächste inkrementelle Vorgang schlägt fehl und Sie müssen einen vollständigen Versand wiederholen.

Abschluss

Btrfs Send/Receive verwandelt das Backup von einer mühsamen Aufgabe in einen unsichtbaren, sofortigen Prozess. Wenn Sie der vorherigen Anleitung gefolgt sind und Ihre Subvolumes bereits bereit haben, Holen Sie sich eine alte Platte, Formatieren Sie es mit Btrfs und beginnen Sie damit “schießen” Ihre Daten. Die Gewissheit, dass Ihr Backup ein verifiziertes Spiegelbild Ihrer Daten ist, ist unbezahlbar.

Sie haben Zweifel, wie Sie Btrbk konfigurieren oder SSH-Berechtigungen verwalten? Schreib es in die Kommentare!


TheJoe

Ich halte diesen Blog als ein Hobby von 2009. Ich bin begeistert von Grafik, Technologie, Open Source Software. Unter meinen Artikel wird nicht schwierig sein, über die Musik finden, und einige persönliche Reflexionen, aber ich bevorzuge die direkte Linie des Blogs vor allem auf Technologie. Weitere Informationen Kontaktieren Sie mich.

0 Kommentare

Hinterlasse eine Antwort

Avatar-Platzhalter

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre, wie deine Kommentardaten verarbeitet werden.