Während verschiedene gemountete Schnappschüsse funktionieren, scheint es in vielen Fällen furchtbar langsam zu sein.
Gibt es btrfs-spezifische Funktionen zum Unterscheiden von Snapshots? (In den Dokumenten konnte ich keine finden.)
filesystems
diff
btrfs
Catskul
quelle
quelle
A
enthälta
, schreiben Sieb
in den Snapshot und ändern Sie ihn später wieder ina
, die Datei hat sich überhaupt nicht wirklich geändert.Antworten:
Es hört sich so an, als ob Sie nach btrfs send / receive suchen , das in Linux 3.6 angezeigt wird. Der
send
Befehl erstellt eine Protokolldatei mit den Unterschieden zwischen zwei Snapshots, und derreceive
Befehl wendet die Änderungen aus einer Datei an. Beachten Sie, dass beim Senden / Empfangen ein benutzerdefiniertes Dateiformat verwendet wird, sodass die Datei beispielsweise nicht genau wie Diff oder Tar aussieht.quelle
Ich verwende Debian Stable, das es nicht gibt
btrfs send
, also habe ich nach einer Lösung gesucht, die verwendetbtrfs subvolume find-new
.Wenn Sie über Snapshot1 und Snapshot2 verfügen und wissen möchten, was sich in Snapshot 2 geändert hat, können Sie das folgende Skript verwenden, da Snapshot1 erstellt wurde
Hier werden alle Dateien aufgelistet, die in newsnapshot / since oldsnapshot / geändert wurden.
Erklärung:
btrfs subvolume find-new
Findet Dateien, die nach einer bestimmten 'Generierung' eines Schnappschusses geändert wurden . Es gibt auch die aktuelle Generationsnummer an.Vorbehalte
zB machen Sie den täglichen Schnappschuss eines Subvolume-Falls:
Was hat sich zwischen snap1 und snap2 geändert?
Wir können also die neue Datei und die geänderte Datei sehen, aber das Löschen wird nicht gemeldet . Dies liegt daran, dass der Befehl auf vorhandene Dateien hinweist, nicht auf Dateien, die jetzt nicht vorhanden sind.
Was hat sich zwischen snap2 und dem Live-Subvolume geändert?
Die umbenannte Datei wird nicht gemeldet . Ihre Daten haben sich nicht geändert.
Was nun, wenn wir der umbenannten Datei Daten hinzufügen?
OK, macht Sinn. Aber lasst uns eine neue Datei erstellen
eh! Wo ist Lala? . Wenn Sie eine weitere Datei hinzufügen, wird
lala
angezeigt. Dieses Verhalten ist also etwas seltsam. Welches ist wahrscheinlich, warum das Wiki sagt:Die Seltsamkeit tritt jedoch auf, wenn Sie ein Live-Subvolume mit einem vorherigen Status vergleichen, nicht, wenn Sie (schreibgeschützte) Snapshots vergleichen. Dies kann also weiterhin nützlich sein, es sei denn, Sie möchten auch gelöschte Dateien identifizieren.
quelle
Dies wird vom Snapshot-Tool unterstützt
snapper
.sudo snapper -c config diff 445..446
Natürlich müssen Sie dies
snapper
für Ihre Schnappschüsse verwenden.Diese Snapshot-IDs finden Sie mit
snapper list -a
. Leider unterstützte snapper zum Zeitpunkt des Schreibens keine Listen-Snapshots für eine einzelne Konfiguration, obwohl diese Nummern aus den Namen der Subvolumes hervorgehen.quelle