Btrfs

Hur man aktiverar Btrfs-filsystemkomprimering

Hur man aktiverar Btrfs-filsystemkomprimering
Btrfs-filsystemet stöder datakomprimering på filsystemnivå. Det innebär att filsystemdata komprimeras automatiskt när nya data skrivs till filsystemet. När du får åtkomst till filerna som är lagrade i ditt Btrfs-filsystem dekomprimeras dessa filers data automatiskt.

Denna funktion i filsystemet sparar dig mycket diskutrymme och sparar mycket tid som du skulle ha spenderat komprimera dina filer manuellt.

I den här artikeln ska jag visa dig hur du aktiverar Btrfs-filsystemnivåkomprimering på ett Btrfs-filsystem. Så, låt oss komma igång.

Förutsättningar:

För att testa exemplen i den här artikeln,

Jag har en 20 GB hårddisk sdb på min Ubuntu-maskin. Jag har skapat två partitioner sdb1 och sdb2 på den här hårddisken. Jag kommer att använda partitionen sdb1 i den här artikeln.

$ sudo lsblk -e7

Din hårddisk eller SSD kan ha ett annat namn än mitt, så kommer partitionerna också att göra. Så se till att ersätta dem med din från och med nu.

Om du behöver hjälp med att installera Btrfs-filsystemet på Ubuntu, kolla in min artikel Installera och använd Btrfs på Ubuntu 20.04 LTS.

Om du behöver hjälp med att installera Btrfs-filsystemet på Fedora, kolla in min artikel Installera och använd Btrfs på Fedora 33.

Btrfs-kompressionsalgoritmer:

När detta skrivs stöder Btrfs-filsystemet följande komprimeringsalgoritmer:

i) LZO: LZO är en förlustfri realtidskomprimeringsalgoritm. LZO delar upp data i block och komprimerar / dekomprimerar data i block i realtid. Det är standardkomprimeringsalgoritmen för Btrfs-filsystemet.

ii) ZLIB: ZLIB är ett bibliotek som används för datakomprimering. Den använder DEFLATE-datakomprimeringsalgoritmen. DEFLATE-datakomprimeringsalgoritmen är en kombination av kodningsalgoritmerna LZ77 och Huffman. Btrfs-filsystemet stöder ZLIB-datakomprimeringsalgoritmen.

Du kan också ange vilken komprimeringsnivå du vill ha. Nivån kan vara valfritt nummer från 1 till 9. En högre nivå indikerar ett högre kompressionsförhållande. Så, nivå 9 sparar mer diskutrymme än nivå 1 (nivå 9 har ett högre kompressionsförhållande än nivå 1). Om du inte anger en ZLIB-komprimeringsnivå som ska användas, använder Btrfs-filsystemet ZLIB-komprimeringsnivå 3 som standard.

ZSTD: ZSTD eller Zstandard är en högpresterande förlustfri datakomprimeringsalgoritm. Det utvecklades på Facebook av Yann Collect. Dess kompressionsförhållande är jämförbart med DEFLATE-algoritmen som används i ZLIB, men det är snabbare. Btrfs-filsystemet stöder ZSTD-datakomprimeringsalgoritmen.

Du kan också ange vilken komprimeringsnivå du vill ha. Nivån kan vara valfritt nummer från 1 till 15. En högre nivå indikerar ett högre kompressionsförhållande. Så nivå 15 sparar mer diskutrymme än nivå 1 (nivå 15 har ett högre kompressionsförhållande än nivå 1). Om du inte anger en ZSTD-komprimeringsnivå som ska användas, använder Btrfs-filsystemet ZSTD-komprimeringsnivå 3 som standard.

Skapa ett Btrfs-filsystem:

För att experimentera med Btrfs-datakomprimering på filsystemnivå måste du skapa ett Btrfs-filsystem.

Att skapa ett Btrfs-filsystem med etiketten datasdb1 partition, kör följande kommando:

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

Montera ett Btrfs-filsystem med kompression aktiverad:

För att aktivera komprimering av Btrfs-filsystemnivå måste du montera det Btrfs-filsystem du har skapat på sdb1 partition med antingen komprimera eller komprimeringskraft monteringsalternativ.

i) komprimeringsfäste: De komprimera monteringsalternativ aktiverar helt enkelt Btrfs-filsystemnivåkomprimering. Btrfs-filsystemet kommer att avgöra om komprimering gör filen som ska komprimeras större än den ursprungliga (okomprimerade) filstorleken. Om komprimering gör filstorleken större än originalet komprimerar inte Btrfs-filsystemet den filen.

ii) alternativ för kompresskraftmontering: till skillnad från komprimera monteringsalternativ, om Btrfs-filsystemet är monterat med hjälp av komprimeringskraft monteringsalternativ komprimeras alla filer i Btrfs-filsystemet även när komprimering gör filen större.

Skapa en katalog /data med följande kommando:

$ sudo mkdir -v / data

Att möjliggöra LZO komprimering, montera Btrfs-filsystemet som du skapade tidigare i /data katalog med följande kommando:

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

För att möjliggöra kraft LZO komprimering, montera Btrfs-filsystemet som du skapade tidigare i / data-katalogen enligt följande:

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

På samma sätt kan du montera Btrfs-filsystemet i /data katalogen enligt följande för att aktivera ZLIB kompression:

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

För att ställa in en ZLIB komprimeringsnivå (låt oss säga, nivå 7), kan du montera Btrfs-filsystemet i /data katalog enligt följande:

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

Att möjliggöra ZSTD komprimering, montera Btrfs-filsystemet i /data katalog enligt följande:

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

För att ställa in en ZSTD komprimeringsnivå (låt oss säga, nivå 10), kan du montera Btrfs-filsystemet i /data katalog enligt följande:

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

Btrfs-filsystemet som du har skapat på sdb1 partition bör monteras i /data katalog som du kan se på skärmdumpen nedan.

$ df -h / data

Testa Btrfs-filsystemkomprimering:

För att testa om Btrfs-filsystemet komprimerar filerna som finns i Btrfs-filsystemet, monterar jag Btrfs-filsystemet på /data katalog med komprimeringskraft alternativ. Jag kommer att använda den högsta komprimeringsnivån för ZSTD-komprimeringsalgoritmen för demonstrationen.

Demontera först Btrfs-filsystemet som du kanske har monterat på /data katalog enligt följande:

$ sudo umount / data

Montera Btrfs-filsystemet med högsta komprimeringsnivå (nivå 15) av ZSTD komprimeringsalgoritm i /data katalog enligt följande:

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

Jag har kopierat om 717 MB av data på Btrfs-filsystemet monterat på /data katalog. Som du kan se, bara 661 MB är diskutrymme används på Btrfs-filsystemet trots att data som lagras i filsystemet är 717 MB i storlek. Så fungerar Btrfs-filsystemnivåkomprimering.

Montera ett komprimeringsaktiverat Btrfs-filsystem vid start:

Om du vill montera Btrfs-filsystemet automatiskt vid start med komprimering aktiverad (vilket du troligen gör), är det här avsnittet för dig.

Hitta först UUID för Btrfs-filsystemet som du vill aktivera komprimering och montera automatiskt vid starttiden enligt följande:

$ sudo btrfs filsystemshow / data

Som du kan se är UUID för Btrfs-filsystemet a8e75a9d-a6f6-4c6e-be41-c10bc1077aa2 i mitt fall. Det kommer att vara annorlunda för dig. Så se till att ersätta den med din från och med nu.

Öppna / etc / fstab fil med nano textredigerare enligt följande:

$ sudo nano / etc / fstab

Skriv in följande rad i slutet av / etc / fstab fil:

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

NOTERA: Byt ut UUID för Btrfs-filsystemet mot ditt. Ändra också monteringsalternativet och kompressionsalgoritmen som du vill.

När du är klar trycker du på + X följd av Y och för att spara / etc / fstab fil.

För att ändringarna ska träda i kraft startar du om datorn med följande kommando:

$ sudo omstart

När din dator startar bör Btrfs-filsystemet monteras i /data katalog som du kan se på skärmdumpen nedan.

$ df -h / data

Slutsats:

I den här artikeln har jag diskuterat komprimeringsalgoritmerna som stöds av Btrfs-filsystemet: LZO, ZLIB och ZSTD. Jag har också visat hur du aktiverar komprimering av filsystemnivå i ett Btrfs-filsystem.

Hur man visar FPS-räknare i Linux-spel
Linux-spel fick ett stort tryck när Valve tillkännagav Linux-stöd för Steam-klient och deras spel 2012. Sedan dess har många AAA- och indiespel tagit ...
Hur man laddar ner och spelar Sid Meier's Civilization VI på Linux
Introduktion till spelet Civilization 6 är ett modernt intag av det klassiska konceptet som introducerades i serien Age of Empires-spel. Idén var gans...
Hur man installerar och spelar Doom på Linux
Introduktion till Doom Doom-serien har sitt ursprung på 90-talet efter att den ursprungliga Doom släpptes. Det blev en omedelbar hit och från den tide...