Wie kann eine nicht standardmäßige zstd-Komprimierungsstufe bei der Defragmentierung des btrfs-Dateisystems festgelegt werden?

7
# btrfs filesystem defragment -r -v -czstd:15 /
ERROR: unknown compression type zstd:15
# btrfs filesystem defragment -r -v -czstd_15 /
ERROR: unknown compression type zstd_15
# btrfs filesystem defragment -r -v -czstd15 /
ERROR: unknown compression type zstd15

Die btrfs-Handbuchseite gibt keinen Hinweis darauf, wie eine Komprimierungsstufe ausgewählt wird:

-c [algo]

Komprimieren Sie den Dateiinhalt während der Defragmentierung. Das optionale Argument wählt den Komprimierungsalgorithmus zlib (Standard), lzo oder zstd aus. Derzeit ist es nicht möglich, keine Komprimierung auszuwählen. Siehe auch Abschnitt BEISPIELE.

Wie wähle ich eine nicht standardmäßige zstd-Komprimierungsstufe aus, um vorhandene btrfs-Dateisysteme erneut zu komprimieren?



Hinweis: btrfs filesystem defragmentauf Snapshots können in vielen größeren Speicherplatz Verbrauch führen :

Warnung: Durch die Defragmentierung mit Linux-Kernelversionen <3.9 oder ≥ 3.14-rc2 sowie mit stabilen Linux-Kernelversionen ≥ 3.10.31, ≥ 3.12.12 oder ≥ 3.13.4 werden die Ref-Links von COW-Daten (z. B. Dateien) aufgelöst kopiert mit cp --reflink, Snapshots oder de-duplizierten Daten). Dies kann in Abhängigkeit von den unterbrochenen Ref-Links zu einer erheblichen Erhöhung der Speicherplatznutzung führen .

Pro Backup
quelle

Antworten:

9

Kernel 5.1 hat Unterstützung auf ZSTD-Ebene hinzugefügt. Ich habe es heute mit rc1 mit einer Mount-Option compress = zstd: 12 in / etc / fstab getestet. Die Standardstufe ist 3. Um es klar zu machen: Die Änderung betrifft nur Dateien, die nach diesem Mount-Befehl geschrieben wurden. Einige Benchmark-Ergebnisse: https://lkml.org/lkml/2019/1/28/1930

Sven
quelle
2

Versuchen:

$> sudo mount -o remount, compress = zlib: 9, compress = zstd /

Nach diesem Befehl ' findmnt ' zeigt ' compress = ZStd: 9 ' Mount - Option :)

Alexander Baranov
quelle
2
Ich frage mich, ob dies auch besser zstd-Dateien komprimiert als standardmäßig zstd? Und wie wurde das verifiziert? Oder ist das nur ein Displayfehler?
Pro Backup