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=lzo
elegendő, nem ' nem kell újból tömörítenie a tömörített bináris fájlokat, például a PNG-t.