Btrfs

Ako povoliť kompresiu súborového systému Btrfs

Ako povoliť kompresiu súborového systému Btrfs
Súborový systém Btrfs podporuje kompresiu údajov na úrovni súborového systému. To znamená, že údaje súborového systému budú automaticky komprimované pri zapisovaní nových údajov do súborového systému. Pri prístupe k súborom uloženým v súborovom systéme Btrfs sa údaje týchto súborov automaticky dekomprimujú.

Táto vlastnosť súborového systému vám ušetrí veľa miesta na disku a ušetrí vám čas, ktorý by ste strávili manuálnou kompresiou súborov.

V tomto článku vám ukážem, ako povoliť kompresiu na úrovni súborového systému Btrfs v súborovom systéme Btrfs. Takže poďme na to.

Predpoklady:

Vyskúšať príklady tohto článku,

Mám 20 GB pevný disk sdb na mojom stroji Ubuntu. Vytvoril som 2 oddiely sdb1 a sdb2 na tomto pevnom disku. Použijem oddiel sdb1 v tomto článku.

$ sudo lsblk -e7

Váš pevný disk alebo SSD môže mať iný názov ako ja, rovnako tak aj jeho oddiely. Odteraz ich teda vymeňte za tie svoje.

Ak potrebujete pomoc s inštaláciou súborového systému Btrfs na Ubuntu, prečítajte si môj článok Inštalácia a používanie Btrfs na Ubuntu 20.04 LTS.

Ak potrebujete pomoc s inštaláciou súborového systému Btrfs na Fedore, prečítajte si môj článok Nainštalujte a používajte Btrfs na Fedore 33.

Algoritmy kompresie Btrfs:

V čase tohto písania podporoval súborový systém Btrfs nasledujúce kompresné algoritmy:

i) LZO: LZO je bezstratový algoritmus kompresie blokov v reálnom čase. LZO rozdeľuje údaje do blokov a v reálnom čase ich komprimuje / dekomprimuje do blokov. Je to predvolený kompresný algoritmus súborového systému Btrfs.

ii) ZLIB: ZLIB je knižnica používaná na kompresiu údajov. Používa algoritmus kompresie údajov DEFLATE. Algoritmus kompresie údajov DEFLATE je kombináciou kódovacích algoritmov LZ77 a Huffman. Systém súborov Btrfs podporuje algoritmus kompresie údajov ZLIB.

Môžete tiež určiť požadovanú úroveň kompresie. Úroveň môže byť akékoľvek číslo od 1 do 9. Vyššia úroveň znamená vyšší kompresný pomer. Úroveň 9 teda ušetrí viac miesta na disku ako úroveň 1 (úroveň 9 má vyšší kompresný pomer ako úroveň 1). Pokiaľ neurčíte úroveň kompresie ZLIB, ktorá sa má použiť, použije súborový systém Btrfs štandardne úroveň kompresie ZLIB 3.

ZSTD: ZSTD alebo Zstandard je vysoko výkonný algoritmus kompresie dát bez straty. Na Facebooku ju vyvinul Yann Collect. Jeho kompresný pomer je porovnateľný s algoritmom DEFLATE, ktorý sa používa v ZLIB, ale je rýchlejší. Systém súborov Btrfs podporuje algoritmus kompresie dát ZSTD.

Môžete tiež určiť požadovanú úroveň kompresie. Úroveň môže byť akékoľvek číslo od 1 do 15. Vyššia úroveň znamená vyšší kompresný pomer. Úroveň 15 teda ušetrí viac miesta na disku ako úroveň 1 (úroveň 15 má vyšší kompresný pomer ako úroveň 1). Pokiaľ neurčíte úroveň kompresie ZSTD, ktorá sa má použiť, použije súborový systém Btrfs štandardne úroveň kompresie ZSTD 3.

Vytvorenie súborového systému Btrfs:

Ak chcete experimentovať s kompresiou údajov na úrovni súborového systému Btrfs, musíte si vytvoriť súborový systém Btrfs.

Vytvorenie súborového systému Btrfs s menovkou údaje na sdb1 oddiel, spustite nasledujúci príkaz:

$ sudo mkfs.btrfs -L dáta / dev / sdb1

Pripojte súborový systém Btrfs s povolenou kompresiou:

Ak chcete povoliť kompresiu na úrovni súborového systému Btrfs, musíte pripojiť súborový systém Btrfs, ktorý ste vytvorili na serveri sdb1 priečka buď s stlačiť alebo kompresná sila možnosť pripojenia.

i) komprimovať možnosť pripojenia: The stlačiť voľba mount jednoducho umožní kompresiu na úrovni súborového systému Btrfs. Súborový systém Btrfs určí, či kompresia spôsobí, že súbor, ktorý sa má komprimovať, bude väčší ako pôvodná (nekomprimovaná) veľkosť súboru. Ak kompresia zväčší veľkosť súboru ako pôvodný, súborový systém Btrfs tento súbor nekomprimuje.

ii) možnosť upevnenia kompresnou silou: Na rozdiel od stlačiť možnosť pripojenia, ak je súborový systém Btrfs pripojený pomocou kompresná sila voľba mount, potom bude každý súbor na súborovom systéme Btrfs komprimovaný, aj keď ho kompresia zväčší.

Vytvorte adresár / údaje nasledujúcim príkazom:

$ sudo mkdir -v / data

Umožniť LZO skomprimujte, pripojte súborový systém Btrfs, ktorý ste vytvorili predtým v / údaje adresár s nasledujúcim príkazom:

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

Na umožnenie sily LZO kompresie, pripojte súborový systém Btrfs, ktorý ste vytvorili predtým, do adresára / data takto:

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

Rovnakým spôsobom môžete pripojiť súborový systém Btrfs do priečinka / údaje adresár nasledujúcim spôsobom povoliť ZLIB kompresia:

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

Nastaviť a ZLIB úroveň kompresie (povedzme na úrovni 7), môžete pripojiť súborový systém Btrfs do systému Windows / údaje adresár takto:

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

Umožniť ZSTD kompresia, pripojte súborový systém Btrfs do systému Windows / údaje adresár takto:

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

Nastaviť a ZSTD úroveň kompresie (povedzme na úrovni 10), môžete pripojiť súborový systém Btrfs do systému Windows / údaje adresár takto:

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

Súborový systém Btrfs, ktorý ste vytvorili na sdb1 oddiel by mal byť pripojený k / údaje ako vidíte na snímke obrazovky nižšie.

$ df -h / dáta

Testovanie kompresie súborového systému Btrfs:

Aby som otestoval, či súborový systém Btrfs komprimuje súbory, ktoré sa nachádzajú v súborovom systéme Btrfs, pripojím súborový systém Btrfs na / údaje adresár s kompresná sila možnosť. Na ukážku použijem najvyššiu úroveň kompresie algoritmu kompresie ZSTD.

Najskôr odpojte súborový systém Btrfs, ktorý ste mohli mať pripojený k / údaje adresár takto:

$ sudo umount / data

Pripojte súborový systém Btrfs s najvyššou úrovňou kompresie (úroveň 15) z ZSTD kompresný algoritmus v / údaje adresár takto:

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

Skopíroval som asi 717 MB údajov na súborovom systéme Btrfs namontovaných na serveri / údaje adresár. Ako vidíte, iba 661 MB je diskový priestor sa používa v súborovom systéme Btrfs, aj keď údaje uložené v súborovom systéme sú 717 MB vo veľkosti. Kompresia na úrovni súborového systému Btrfs teda funguje.

Pripojenie súborového systému Btrfs s povolenou kompresiou pri štarte:

Ak chcete pripojiť súborový systém Btrfs automaticky pri štarte s povolenou kompresiou (čo s najväčšou pravdepodobnosťou robíte), potom je táto časť určená pre vás.

Najskôr vyhľadajte UUID súborového systému Btrfs, ktorému chcete povoliť kompresiu, a pripojte sa automaticky pri štarte, a to nasledovne:

Zobraziť / dáta súborového systému $ sudo btrfs

Ako vidíte, UUID súborového systému Btrfs je a8e75a9d-a6f6-4c6e-be41-c10bc1077aa2 v mojom prípade. U teba to bude iné. Odteraz ho teda vymeňte za svoj.

Otvor / etc / fstab súbor s nano textový editor nasledovne:

$ sudo nano / etc / fstab

Zadajte nasledujúci riadok na konci / etc / fstab spis:

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

POZNÁMKA: Vymeňte UUID súborového systému Btrfs za svoj. Podľa potreby tiež zmeňte možnosť pripojenia a kompresný algoritmus.

Po dokončení stlačte + X nasledovaný Y a zachrániť / etc / fstab spis.

Aby sa zmeny prejavili, reštartujte počítač pomocou nasledujúceho príkazu:

$ sudo reštart

Po zavedení počítača by mal byť súborový systém Btrfs pripojený k / údaje ako vidíte na snímke obrazovky nižšie.

$ df -h / dáta

Záver:

V tomto článku som sa zmienil o kompresných algoritmoch podporovaných súborovým systémom Btrfs: LZO, ZLIB a ZSTD. Tiež som vám ukázal, ako povoliť kompresiu na úrovni súborového systému v súborovom systéme Btrfs.

Hry Nainštalujte si najnovšiu strategickú hru OpenRA na Ubuntu Linux
Nainštalujte si najnovšiu strategickú hru OpenRA na Ubuntu Linux
OpenRA je herný engine Libre / Free Real Time Strategy, ktorý obnovuje rané hry z Westwoodu, ako napríklad klasické Command & Conquer: Red Alert. Dist...
Hry Nainštalujte si najnovší Dolphin Emulator pre Gamecube a Wii na Linuxe
Nainštalujte si najnovší Dolphin Emulator pre Gamecube a Wii na Linuxe
Emulátor Dolphin vám umožní hrať vybrané hry Gamecube a Wii na osobných počítačoch Linux (PC). Emulátor Dolphin, ktorý je voľne dostupným emulátorom ...
Hry Ako používať GameConqueror Cheat Engine v Linuxe
Ako používať GameConqueror Cheat Engine v Linuxe
Tento článok obsahuje sprievodcu používaním cheatovacieho modulu GameConqueror v systéme Linux. Mnoho používateľov, ktorí hrajú hry v systéme Windows,...