Ich versuche, Kopien einiger Dateien / Verzeichnisse anzufertigen, aber von den verschiedenen mir bekannten Möglichkeiten scheinen alle nicht optimal zu sein.
Zum Beispiel kann btrfs mit der Verwendung cp --reflink=auto
von Dateien schnell Kuh-Kopien erzeugen.
Was ich ausprobiert habe:
- Symlinks: Nein gut. Umbenannte Datei, defekter Link.
- Hardlinks: Besser, aber immer noch nicht gut. Änderungen an einer Datei ändern die andere, und ich möchte nicht unbedingt, dass die andere Datei geändert wird.
- Erstellen Sie einen Snapshot des Datasets und klonen Sie den Snapshot: Dies kann funktionieren, ist aber nicht gut. Oft suche ich nicht nach einer Kopie des gesamten Datensatzes oder nach Kopien, die sich wie ein anderer Datensatz verhalten. Dann gibt es die Eltern / Kind-Beziehungen zwischen dem Klon / Schnappschuss / Original, die meines Wissens schwer, wenn nicht unmöglich zu brechen sind.
- Durch Verwenden
zfs send/receive
und Aktivieren von dedup wird das Dataset in ein neues Dataset repliziert: Dies vermeidet die übergeordneten / untergeordneten Beziehungen bei der Verwendung eines Klons, erstellt jedoch immer noch unnötigerweise ein anderes Dataset und leidet weiterhin unter der Verlangsamung, dass die Dateien zu 100% und zu 100% gelesen werden müssen Die Blöcke werden erneut referenziert anstatt geschrieben. - Dateien kopieren und dedup seine Arbeit machen lassen: Dies funktioniert, ist aber langsam, da die Datei (en) zu 100% gelesen und dann die Blöcke erneut referenziert werden müssen, anstatt zu schreiben.
Die Verlangsamung des Sende- / Empfangsvorgangs von ZFS sowie des physischen Kopierens oder Synchronisierens wird weiter verschärft, da die meisten Dinge komprimiert gespeichert werden und während des Lesens dekomprimiert und dann komprimiert werden müssen, bevor dedup auf doppelte Blöcke verweist.
In all meinen Nachforschungen konnte ich nichts finden, das der Einfachheit von --reflink in btrfs im entferntesten ähnelt.
Gibt es eine Möglichkeit, Kuhkopien in ZFS zu erstellen? Oder ist das "physische" Kopieren und das Erledigen von Dedups die einzig wahre Option?