Ich plane, meine großen Festplatten bis zum zu sichern rsync
, und erwarte, dass es einige Tage dauert. Ist es sicher, die Original-Festplatte (Hinzufügen von Dateien) während der rsync
Arbeit zu verwenden? Oder ist es besser, die Festplatten unberührt zu lassen, bis der Vorgang abgeschlossen rsync
ist?
27
Antworten:
Wie bereits erwähnt, können Sie sicher von der Quelldiskette lesen oder die Zieldiskette außerhalb des Zielverzeichnisses verwenden, während rsync ausgeführt wird. Das Lesen innerhalb des Zielverzeichnisses ist ebenfalls sicher , insbesondere wenn das Zielverzeichnis ausschließlich vom rsync-Lauf ausgefüllt wird.
Was im Allgemeinen nicht sicher ist, ist das Schreiben im Quellverzeichnis, während rsync ausgeführt wird. "Schreiben" ist alles, was den Inhalt des Quellverzeichnisses oder eines seiner Unterverzeichnisse ändert, einschließlich Datei-Updates, Löschen, Erstellen usw.
Dadurch wird also nicht wirklich brechen nichts, aber die Änderung nicht tatsächlich durch rsync abgeholt für das Kopieren auf den Zielort bekommen oder nicht. Dies hängt von der Art der Änderung ab, ob rsync das betreffende Verzeichnis bereits durchsucht hat und ob rsync die betreffende Datei oder das betreffende Verzeichnis bereits kopiert hat.
Es gibt jedoch eine einfache Möglichkeit, dies zu umgehen: Führen Sie nach Abschluss von rsync erneut mit denselben Parametern aus. (Es sei denn, Sie haben einen unkonventionellen Löschparameter. Wenn Sie dies tun, gehen Sie etwas vorsichtiger vor.) Wenn Sie dies tun, wird die Quelle erneut gescannt und alle Differenzen übertragen, die während des ursprünglichen Laufs nicht erkannt wurden.
Der zweite Durchlauf sollte nur Unterschiede übertragen, die beim vorherigen rsync-Durchlauf aufgetreten sind, und wird daher viel schneller abgeschlossen. Sie können den Computer also während des ersten Durchlaufs normal verwenden, sollten jedoch möglichst keine Änderungen an der Quelle während des zweiten Durchlaufs vornehmen. Wenn dies möglich ist, sollten Sie das Quelldateisystem unbedingt schreibgeschützt erneut bereitstellen, bevor Sie den zweiten rsync-Lauf starten. (Sowas
mount -o ro,remount /media/source
sollte schon gehen.)quelle
@reboot root find / -print &>/dev/null
in meiner System-Crontab, um den Cache zu füllen . (Der eigentliche Eintrag ist komplexer, um einige Sonderfälle auf meinem speziellen System zu berücksichtigen.) Er verwendet etwas RAM und eine gewisse Zeit für die Wanduhr früh nach dem Start, um das Durchsuchen des Verzeichnisbaums um einiges zu verbessern.updatedb
(Datenbank von locateslocate -u
erstellen) oder (dasselbe, wenn Sie slocate haben)? Auf diese Weise können Sie die Hierarchie weiterhin zwischenspeichern, aber auch die Datenbanken von locate oder slocate aufbauen, sodass Sie mit diesen Befehlen schnell viele Dateien finden können.Dies hängt vom verwendeten Backup-System ab. Im Allgemeinen ist es jedoch eine schlechte Idee, den Inhalt eines Geräts zu ändern , während Sie es sichern. Sie können jedoch den Inhalt lesen . Das ist eine sichere Operation, auch wenn sie den Prozess verlangsamt.
In Ihrem Fall
rsync
wird eine Dateiliste erstellt und dann die Sicherung gestartet. Daher werden alle Dateien, die Sie nach dem Start der Sicherung zur Quellfestplatte hinzufügen, nicht kopiert.Was ich tue, ist, während eines Backups überhaupt kein Gerät zu verwenden. Dies ist der sicherere Weg, um ein schnelles und konsistentes Backup zu erhalten.
quelle
rsync
in wenigen Sekunden beendet wird, da nur die Dateien kopiert werden, die ich während des Laufs geändert habe. Alles wird sich in den Caches befinden, so dass es in dieser Zeit viel einfacher ist, auf Änderungen zu verzichten.Es ist sicher, während des
rsync
Betriebs Daten aus den Quellbereichen zu lesen. Wenn Sie jedoch etwasrsync
aktualisieren, ist es wahrscheinlich, dass die erstellte / aktualisierte Kopie inkonsistent ist:Wenn Sie eine Datei aktualisieren, die von rsync bereits gescannt wurde, wird das Update erst bei einem späteren Start angezeigt. Wenn Sie eine Datei aktualisieren, die noch nicht gescannt wurde, wird die Änderung im Ziel berücksichtigt. Wenn Sie Dateien aktualisieren, die sowohl gescannt als auch nicht gescannt wurden, wird das Ziel eine Mischung aus alten und neuen Versionen enthalten.
Wenn Sie eine Datei zu einem Verzeichnis hinzufügen, das bereits gescannt wurde, wird sie dieses Mal von der Zielkopie übersehen. Wenn Sie eine Datei aus einem bereits gescannten Verzeichnis entfernen, verbleibt sie diesmal in der Zielkopie. Je nachdem, wie Sie
rsync
den gesamten Baum aufrufen, wird dieser möglicherweise zu Beginn oder während des Synchronisierungsvorgangs inkrementell gescannt.In einigen Fällen
rsync
wird die Inkonsistenz angezeigt und Sie gewarnt. Wenn Sie eine Datei oder ein Unterverzeichnis aus einem Verzeichnis entfernen, das bereits selbst gescannt wurde, dessen Inhalt jedoch noch nicht gescannt wurde, erhalten Sie eine Fehlermeldung über das fehlende Objekt. Unter ähnlichen Umständen kann es vorkommen, dass (wenn sich die Größe und / oder der Zeitstempel geändert hat) Dateien während des Scanvorgangs geändert werden.Bei einigen Sicherungen ist diese Inkonsistenz möglicherweise kein schwerwiegendes Problem, bei den meisten wird jedoch empfohlen, keine sich aktiv ändernde Quelle zu synchronisieren.
Wenn Sie Ihr Speichersystem mithilfe von LVM partitionieren, können Sie mithilfe eines temporären Snapshots eine Sicherung zu einem bestimmten Zeitpunkt erstellen. Dies setzt voraus, dass Sie genügend Speicherplatz in der Volume-Gruppe haben, um ein Snapshot-Volume zu erstellen, das groß genug ist, um alle Änderungen zu speichern, die während der Dauer des Snapshots erforderlich sind. Weitere Informationen finden Sie in der LVM-Dokumentation (oder in einem der vielen Online-Beispiele: Suchen Sie nach "LVM-Snapshot-Backup" oder ähnlichem).
Selbst ohne LVM unterstützen einige Dateisysteme Snapshots selbst - daher möchten Sie möglicherweise auch diese Option in Betracht ziehen.
Wenn Sie große aktive Volumes ohne lange Ausfallzeiten sichern möchten und keine Snapshots verwenden können, reicht es möglicherweise aus, den "Live" -Scan vollständig auszuführen, dann den Zugriff auf das Volume zu beenden und einen weiteren rsync-Prozess auszuführen, der möglicherweise viel weniger Zeit in Anspruch nimmt (falls erforderlich) sehr wenig geändert hat, scannt es nur den Verzeichnisbaum und dann die wenigen aktualisierten Dateien). Auf diese Weise kann die Dauer, in der Sie Änderungen vermeiden sollten, viel kürzer sein.
quelle
Quelle HDD kann alles lesen, während Rsync.
Die Quellfestplatte kann alle Inhalte schreiben, die nicht mit dem rsync-Inhalt zusammenhängen.
Die Zielfestplatte kann während des Synchronisierens alles lesen.
Die Zielfestplatte kann während des Synchronisierens alles schreiben, sofern genügend Speicherplatz für den synchronisierten Inhalt zur Verfügung steht.
Natürlich kommt es in jedem Fall zu Leistungseinbußen.
quelle
In allen aktuellen Antworten geht es um Datensicherheit in Bezug auf Konsistenz und die Annahme einer perfekten Hardware.
Eine weitere zu berücksichtigende Sache ist die Hardware-Sicherheit. Wenn Sie nicht gesicherte Festplatten haben, die kurz vor dem Ausfall stehen (vielleicht wissen Sie es noch nicht einmal), und Sie ein erstes umfassendes Backup erstellen, verwenden Sie es nicht. Mounten Sie es nicht einmal, wenn die Daten kritisch sind. Sie können ein Tool verwenden
dd
, um die Festplatte als Blockgerät zu klonen. Was Sie nicht wollen, dass der Plattenkopf sucht und möglicherweise schreibt, während Sie versuchen, ein Backup zu erstellen. Plusdd
sollte für das anfängliche Backup schneller sein, da es nur die Bits in der richtigen Reihenfolge kopiert (Wenn das Laufwerk zum größten Teil nicht voll ist, würde rsync vermutlich auch im ersten Fall gewinnen).Für nachfolgende inkrementelle Backups ist rsync eine gute Wahl und ich stimme den anderen Antworten zu 100% zu.
quelle
dd
ist dies nicht die beste Wahl. Verwenden Sieddrescue
stattdessen; Teilausfälle werden viel besser behandelt. Aber das war in der ursprünglichen Frage keine Überlegung.