Btrfs

Kako omogočiti stiskanje datotečnega sistema Btrfs

Kako omogočiti stiskanje datotečnega sistema Btrfs
Datotečni sistem Btrfs podpira stiskanje podatkov na ravni datotečnega sistema. To pomeni, da se bodo podatki datotečnega sistema samodejno stisnili, ko bodo novi podatki zapisani v datotečni sistem. Ko dostopate do datotek, shranjenih v datotečnem sistemu Btrfs, se podatki teh datotek samodejno dekomprimirajo.

Ta funkcija datotečnega sistema vam bo prihranila veliko prostora na disku in prihranila veliko časa, ki bi ga porabili za ročno stiskanje datotek.

V tem članku vam bom pokazal, kako omogočiti stiskanje na ravni datotečnega sistema Btrfs v datotečnem sistemu Btrfs. Torej, začnimo.

Pogoji:

Če želite preizkusiti primere tega članka,

Imam 20 GB trdega diska sdb na mojem računalniku Ubuntu. Ustvaril sem 2 particiji sdb1 in sdb2 na tem trdem disku. Uporabil bom particijo sdb1 v tem članku.

$ sudo lsblk -e7

Vaš trdi disk ali SSD ima lahko drugačno ime kot moje, prav tako tudi particije. Zato jih odslej zamenjajte s svojimi.

Če potrebujete pomoč pri namestitvi datotečnega sistema Btrfs v Ubuntu, si oglejte moj članek Namestite in uporabite Btrfs v Ubuntu 20.04 LTS.

Če potrebujete pomoč pri namestitvi datotečnega sistema Btrfs v Fedori, si oglejte moj članek Namestite in uporabite Btrfs na Fedora 33.

Btrfs algoritmi stiskanja:

V času pisanja tega zapisa datotečni sistem Btrfs podpira naslednje algoritme stiskanja:

i) LZO: LZO je algoritem za stiskanje blokov v realnem času brez izgub. LZO podatke razdeli na bloke in jih v realnem času stisne / dekomprimira po blokih. To je privzeti algoritem stiskanja datotečnega sistema Btrfs.

ii) ZLIB: ZLIB je knjižnica, ki se uporablja za stiskanje podatkov. Uporablja algoritem stiskanja podatkov DEFLATE. Algoritem stiskanja podatkov DEFLATE je kombinacija algoritmov za kodiranje LZ77 in Huffman. Datotečni sistem Btrfs podpira algoritem stiskanja podatkov ZLIB.

Določite lahko tudi stopnjo stiskanja, ki jo želite. Raven je lahko poljubno število od 1 do 9. Višja raven kaže na večje kompresijsko razmerje. Torej bo raven 9 prihranila več prostora na disku kot raven 1 (raven 9 ima višje stopnjo stiskanja kot raven 1). Če ne določite stopnje stiskanja ZLIB, ki jo želite uporabiti, bo datotečni sistem Btrfs privzeto uporabljal stopnjo stiskanja ZLIB 3.

ZSTD: ZSTD ali Zstandard je visoko zmogljiv algoritem za stiskanje podatkov brez izgub. Na Facebooku ga je razvil Yann Collect. Njegovo stiskalno razmerje je primerljivo z algoritmom DEFLATE, ki se uporablja v ZLIB, vendar je hitrejši. Datotečni sistem Btrfs podpira algoritem stiskanja podatkov ZSTD.

Določite lahko tudi stopnjo stiskanja, ki jo želite. Raven je lahko poljubno število od 1 do 15. Višja raven kaže na večje kompresijsko razmerje. Torej bo raven 15 prihranila več prostora na disku kot raven 1 (raven 15 ima višje stopnjo stiskanja kot raven 1). Če ne določite stopnje stiskanja ZSTD, ki jo želite uporabiti, bo datotečni sistem Btrfs privzeto uporabljal stopnjo stiskanja ZSTD 3.

Ustvarjanje datotečnega sistema Btrfs:

Če želite eksperimentirati s stiskanjem podatkov na ravni datotečnega sistema Btrfs, morate ustvariti datotečni sistem Btrfs.

Če želite ustvariti datotečni sistem Btrfs z oznako podatkov na sdb1 particijo, zaženite naslednji ukaz:

$ sudo mkfs.btrfs -L data / dev / sdb1

Namestite datotečni sistem Btrfs z omogočenim stiskanjem:

Če želite omogočiti stiskanje na ravni datotečnega sistema Btrfs, morate v datotečni sistem Btrfs namestiti datotečni sistem, ki ste ga ustvarili sdb1 particijo bodisi z stisniti ali sila stiskanja možnost pritrditve.

i) možnost stiskanja: The stisniti Možnost mount bo preprosto omogočila stiskanje na ravni datotečnega sistema Btrfs. Datotečni sistem Btrfs bo določil, ali stiskanje naredi datoteko, ki jo je treba stisniti, večjo od izvirne (nestisnjene) velikosti datoteke. Če je zaradi stiskanja velikost datoteke večja od izvirnika, datotečni sistem Btrfs te datoteke ne bo stisnil.

ii) možnost pritrditve s pritiskom na silo: Za razliko od stisniti možnost namestitve, če je datotečni sistem Btrfs nameščen s pomočjo sila stiskanja možnost priklopa, bo vsaka datoteka v datotečnem sistemu Btrfs stisnjena, tudi če stiskanje datoteko poveča.

Ustvari imenik / podatki z naslednjim ukazom:

$ sudo mkdir -v / data

Omogočiti LZO stiskanje, namestite datotečni sistem Btrfs, ki ste ga ustvarili prej v / podatki imenik z naslednjim ukazom:

$ sudo mount -o compress = lzo / dev / sdb1 / data

Da se omogoči sila LZO stiskanje, namestite datotečni sistem Btrfs, ki ste ga prej ustvarili v imeniku / data, kot sledi:

$ sudo mount -o compress-force = lzo / dev / sdb1 / data

Na enak način lahko datotečni sistem Btrfs namestite v / podatki imenik, da omogočite ZLIB stiskanje:

$ sudo mount -o compress = zlib / dev / sdb1 / data

Če želite nastaviti a ZLIB stopnjo stiskanja (recimo, raven 7), lahko datotečni sistem Btrfs namestite v / podatki imenik, kot sledi:

$ sudo mount -o compress = zlib: 7 / dev / sdb1 / data

Omogočiti ZSTD stiskanje, namestite datotečni sistem Btrfs v / podatki imenik, kot sledi:

$ sudo mount -o compress = zstd / dev / sdb1 / data

Če želite nastaviti a ZSTD stopnjo stiskanja (recimo, raven 10), lahko datotečni sistem Btrfs namestite v / podatki imenik, kot sledi:

$ sudo mount -o compress = zstd: 10 / dev / sdb1 / data

Datotečni sistem Btrfs, ki ste ga ustvarili v sdb1 particijo je treba namestiti v / podatki imenik, kot lahko vidite na spodnjem posnetku zaslona.

$ df -h / podatki

Testiranje stiskanja datotečnega sistema Btrfs:

Da preizkusim, ali datotečni sistem Btrfs stisne datoteke, ki so v datotečnem sistemu Btrfs, bom datotečni sistem Btrfs namestil na / podatki imenik z sila stiskanja možnost. Za predstavitev bom uporabil najvišjo stopnjo stiskanja algoritma stiskanja ZSTD.

Najprej odstranite datotečni sistem Btrfs, ki ste ga morda namestili na / podatki imenik, kot sledi:

$ sudo umount / podatki

Datotečni sistem Btrfs namestite z najvišjo stopnjo stiskanja (nivo 15) od ZSTD algoritem stiskanja v / podatki imenik, kot sledi:

$ sudo mount -o compress-force = zstd: 15 / dev / sdb1 / data

Kopiral sem približno 717 MB podatkov v datotečnem sistemu Btrfs, nameščenem na / podatki imenik. Kot lahko vidite, samo 661 MB is prostor na disku se uporablja v datotečnem sistemu Btrfs, čeprav so podatki, shranjeni v datotečnem sistemu 717 MB velikosti. Torej, stiskanje na ravni datotečnega sistema Btrfs deluje.

Namestitev datotečnega sistema Btrfs z omogočenim stiskanjem na zagon:

Če želite datotečni sistem Btrfs samodejno namestiti ob zagonu z omogočenim stiskanjem (kar najverjetneje storite), potem je ta razdelek za vas.

Najprej poiščite UUID datotečnega sistema Btrfs, ki ga želite omogočiti stiskanje in samodejno namestiti ob zagonu, kot sledi:

$ sudo btrfs datotečni sistem show / data

Kot lahko vidite, je UUID datotečnega sistema Btrfs a8e75a9d-a6f6-4c6e-be41-c10bc1077aa2 v mojem primeru. Za vas bo drugače. Zato ga odslej zamenjajte s svojim.

Odprite / etc / fstab datoteko z nano urejevalnik besedil, kot sledi:

$ sudo nano / etc / fstab

Na koncu vrstice vnesite naslednjo vrstico / etc / fstab mapa:

UUID = a8e75a9d-a6f6-4c6e-be41-c10bc1077aa2 / data btrfs compress = lzo 0 0

OPOMBA: UUID datotečnega sistema Btrfs zamenjajte s svojim. Spremenite tudi možnost pritrditve in algoritem stiskanja, kot želite.

Ko končate, pritisnite + X čemur sledi Y in shraniti / etc / fstab mapa.

Da bodo spremembe začele veljati, znova zaženite računalnik z naslednjim ukazom:

$ sudo znova zaženite

Ko se računalnik zažene, je treba datotečni sistem Btrfs namestiti v / podatki imenik, kot lahko vidite na spodnjem posnetku zaslona.

$ df -h / podatki

Zaključek:

V tem članku sem razpravljal o algoritmih stiskanja, ki jih podpira datotečni sistem Btrfs: LZO, ZLIB in ZSTD. Pokazal sem vam tudi, kako v datotečnem sistemu Btrfs omogočiti stiskanje na ravni datotečnega sistema.

Kako uporabiti Xdotool za spodbujanje klikov in pritiskov mišk v Linuxu
Xdotool je brezplačno in odprtokodno orodje za ukazno vrstico, ki simulira klike in pritiske tipk. Ta članek bo zajemal kratek vodnik o uporabi xdotoo...
Najboljših 5 izdelkov z ergonomsko računalniško miško za Linux
Ali dolgotrajna uporaba računalnika povzroča bolečine v zapestju ali prstih? Ali imate trde sklepe in bi se morali neprestano tresti z rokami? Ali čut...
How to Change Mouse and Touchpad Settings Using Xinput in Linux
Most Linux distributions ship with “libinput” library by default to handle input events on a system. It can process input events on both Wayland and X...