Van USB HDD-m.
Engedélyezni akarom a tömörítést. Megtehetem a rendszerem fstab-jában, vagy akár udev-szabályokat is használhatok. A probléma az, hogy nem csatlakoztattam az USB HDD-t csak a számítógépemre. Eddig minden egyes telepítéskor egy terminált indítottam.
Ezután felfedeztem a chattr +c. Ez nagyon jól működik , de az LZO-t akarom használni a ZLIB helyett. Van-e rá mód hogy konkrétabbak legyünk és egyszer s mindenkorra meghatározzuk a tömörítési algoritmust?
Válasz
A btrfs minden tömörített fájlt tömörít ha használja:
mount -o compress-force=lzo /dev/btrfsdev /mnt/btrfsmnt
Ha azt szeretné, hogy MINDEN fájl tömörüljön így, van egy kis szkriptem, amit írtam …
du -ht +$((1024*1024)) "$HOME" |\ sed -rn "s/^[^/]*(.*)/btrfs fi defrag -fvclzo "\1"/p" |\ sudo sh -n
A fentiek csak a $HOME könyvtáramon működnek, de tetszés szerint bármire vagy mindenre felhasználhatja. A -n operandumot a sh be is táplálta maga láthatja, hogy mi sh jelenleg not eltávolítás előtt, hogy szóljon rá.
Mindenesetre először du human-readable formátumú fájlokhoz (valószínűleg felesleges itt, mivel ezt a következő lépésben levonjuk egyébként) amelyek nagyobbak, mint a 1MB vagy a $((1024*1024)).
|pipes az információit sed hez csatolja mindent elöl a vezető /, "quotes" fájlnév előtt, felépíti a btrfs filesystem defragment -verbose -flush-to-disk -compress-lzo \filename parancsot és átadja egy |pipe t a sudo sh számára a végrehajtáshoz.
Ismét nem csinál semmit, amíg a sh --no-execute van érvényben.
Szerintem néhány nagyon legutóbbi btrfs userspace eszközépítés a teljes könyvtárakat töredezettségmentesíti rekurzív módon, de ha igen, akkor ez egy nagyon új dolog, tehát én mindig ilyen dolgokat kellett csinálnia.
Megjegyzések
Válasz
Az olvasottak alapján beállíthatja a compression tulajdonságot az almennyiség gyökerébe érje el ezt [0, 1]:
sudo btrfs property set /mnt/your-subvolume compression lzo
Miután megragadta a Btrfs almennyiségű UUID azonosítóját az sudo btrfs filesystem show /mnt/your-subvolume paranccsal, akkor ellenőrizze, hogy az LZO tömörítési szolgáltatás jelenleg engedélyezve van-e:
cat /sys/fs/btrfs/<UUID>/features/compress_lzo
Ha engedélyezve van, akkor 1-et kell adnia.
[0] https://btrfs.wiki.kernel.org/index.php/Compression
[1] https://www.berthon.eu/2016/setting-shared-folder-compression-on-synology-nas-btrfs/
compress=lzoelegendő, nem ' nem kell újból tömörítenie a tömörített bináris fájlokat, például a PNG-t.