Btrfs

Jämförelsen av Btrfs vs Ext4-filsystem

Jämförelsen av Btrfs vs Ext4-filsystem
Det finns många filsystem där ute för Linux. De vanligaste är Ext4, Btrfs, XFS, ZFS och så vidare. Varje filsystem har användningsfall, fördelar och nackdelar. Du kan ha svårt att bestämma vilket filsystem du ska använda.

I den här artikeln kommer jag att jämföra Ext4 och Btrfs-filsystemet. Så om du har svårt att bestämma om du vill använda Ext4-filsystemet eller Btrfs-filsystemet, då

Introduktion till Ext4 och Btrfs-filsystemen:

Ext4-filsystem: Ext4 är den fjärde versionen av Ext (Extended) filsystem. Det är en efterträdare till Ext3-filsystemet. Den första versionen av Ext-filsystemet släpptes 1992 för operativsystemet Minix. Den portades senare på Linux-operativsystem. Ext4-filsystemet släpptes 2008. Ext4 är ett journalfört filsystem.

Btrfs-filsystem: Btrfs eller B-Tree-filsystemet är ett modernt CoW-filsystem (Copy-on-Write). Det är nytt jämfört med Ext-filsystemet. Den designades för Linux-operativsystem på Oracle Corporation 2007. I november 2013 förklarades Btrfs-filsystemet stabilt för Linux-kärnan.

Funktionsjämförelser av filsystemen Ext4 och Btrfs:

Ext4- och Btrfs-filsystemet utformades för att lösa olika typer av problem. Så designmålet för Ext4-filsystemet var annorlunda än Btrfs-filsystemet. Ändå är de filsystem. De har vissa likheter som vi kan jämföra.

i. Maximal partitionsstorlek: Ext4-filsystemet stöder partitionsstorlekar upp till 1 EiB.

Btrfs-filsystemet stöder partitionsstorlekar upp till 16 EiB.

ii. Maximal filstorlek: Ext4-filsystemet stöder filstorlekar upp till 16 TiB (för standardstorlek på 4 KiB).

Btrfs-filsystemet stöder filstorlekar upp till 16 EiB.

iii. Maximal filnamnlängd: Ext4-filsystemet stöder upp till 255 tecken (255 byte) långa filnamn.

Btrfs-filsystemet stöder också upp till 255 tecken (255 byte) långa filnamn.

iv. Tillåtna tecken i katalog och filnamn: Ext4-filsystemet tillåter alla tecken utom / och NULL (\ 0) tecken i katalog- och filnamn.

NOTERA: Du kan inte skapa en fil eller katalog med namnet. och ... antingen i Ext4- eller Btrfs-filsystemet.

v. Maximal väglängd: Ext4-filsystemet har inga gränser för längden på en fil eller katalog. Så du kan skapa väldigt djupa katalogstrukturer och hålla dina filer där.

Detsamma gäller för Btrfs-filsystemet.

vi. Max antal filer: Du kan skapa max 232 (= 4,294,967,296 ~ = 4 miljarder) filer i ett Ext4-filsystem.

Du kan skapa max 264 (= 18,446,744,073,709,551,616 ~ = 18 kvintillioner) filer i ett Btrfs-filsystem.

vii. inode Allocation Method: En inod är en datasystemstruktur för filsystem som används för att beskriva en fil eller en katalog. Så, en katalog eller en fil kräver 1 inode. Två kataloger eller 2 filer kräver två inoder.

I Ext4-filsystemet definierar du antalet inoder som filsystemet kan stödja när du skapar filsystemet. Du kan inte ändra det efter att filsystemet har skapats. Om du skapar för många små filer kan du ha ledigt diskutrymme kvar i ditt filsystem, men du kan inte skapa nya filer / kataloger om du inte har gratis inoder. Detta är en stor begränsning av Ext4-filsystemet.

I Btrfs-filsystemet är inodetilldelningen flexibel. Filsystemet kan lägga till så många inoder som behövs. Så du kommer aldrig att ta slut på inoder.

viii. Kontrollsumma / ECC-stöd: Ext4-filsystemet håller inte kontrollsumma för de data som lagras i filsystemet.

Btrfs-filsystemet håller crc32c-kontrollsumma för de data som lagras i filsystemet. Så i händelse av dataskada kan Btrfs-filsystemet upptäcka det och återställa den skadade filen.

ix. Journal- och Copy-on-Write-stöd: Ext4-filsystemet är ett journalföringssystem. Det har inget Copy-on-Write-stöd (CoW).

Btrfs-filsystemet är ett CoW-filsystem (Copy-on-Write) och det har inget journalstöd.

x. Snapshot för filsystem: Ext4-filsystemet kan inte ta ögonblicksbilder av filsystemet.

Btrfs-filsystemet kan ta ögonblicksbilder. Du kan ta skrivskyddade ögonblicksbilder och skrivbara ögonblicksbilder.

NOTERA: Snapshot för filsystem är en viktig funktion. Med den här funktionen kan du ta en ögonblicksbild av ditt filsystem innan du testar något riskabelt. Om saker inte går som planerat kan du gå tillbaka till ett tidigt tillstånd där allt fungerade. Detta är en inbyggd funktion i Btrfs-filsystemet. Du behöver inte några verktyg / programvara från tredje part för att göra det på ett Btrfs-filsystem.

xi. Kryptering av filsystemnivå: Ext4-filsystemet har experimentellt stöd för kryptering av filsystemnivå.

Btrfs-filsystemet har inget stöd för kryptering av filsystemnivå.

xii. Deduplicering av filsystemnivå: Ext4-filsystemet har inte dedupliceringsstöd.

Btrfs-filsystemet stöder deduplicering på filsystemnivå. Du behöver inga verktyg / programvara från tredje part för det.

NOTERA: Depulication är en teknik för att eliminera / ta bort duplicerade kopior av data från filsystemet och behålla endast en kopia av data (unika data) i filsystemet. Denna teknik används för att spara diskutrymme.

xiii. Stöd för flera enheter: Btrfs-filsystemet stöder flera enheter och har inbyggt RAID-stöd. Btrfs-filsystemet har en inbyggd logisk volymhanterare (LVM) som används för att lägga till flera lagringsenheter eller partitioner till ett enda Btrfs-filsystem. Ett enda Btrfs-filsystem kan spänna över flera skivor och partitioner.

Ext4-filsystemet stöder inte flera enheter. Du kan inte spänna över ett enda Ext4-filsystem över flera diskar eller partitioner. För att kombinera flera lagringsenheter och partitioner i ett Ext4-filsystem måste du använda logiska volymhanterare från tredje part som LVM 2. För att ställa in RAID måste du använda verktyg från tredje part som DM-RAID eller MDADM.

xiv. Komprimering på filsystemnivå: Ext4-filsystemet har inte inbyggt komprimeringsstöd för filsystemnivå.

Btrfs-filsystemet har inbyggt komprimeringsstöd för filsystemnivå. Det kan komprimera en enda katalog eller en enda fil eller hela filsystemet för att spara diskutrymme.

xv. Offline filsystem ändra storlek kapacitet: Ext4-filsystemet har stöd för offline-filsystem som växer (ökar filsystemstorlek) och krymper (minskar filsystemstorlek).

Btrfs-filsystemet stöder också växande och krympande offline-filsystem.

xvi. Online filsystems storlek kapacitet: Ext4-filsystemet har stöd för onlineodling (öka filsystemets storlek när den är monterad). Men det har inget stöd för kryptering av filsystem online (minska filsystemets storlek när den är monterad).

Du kan växa (öka filsystemstorlek) och krympa (minska filsystemstorlek) Btrfs-filsystem online (vid montering).

xvii. Sparse filer: Sparse file-funktion sparar diskutrymme när små filer (mindre än blockstorleken) lagras på filsystemet. Ext4- och Btrfs-filsystemet stöder glesa filer.

xviii. Blockera delallokering: Ext4-filsystemet stöder inte blocktilldelning.

Btrfs-filsystemet stöder blocktilldelning.

NOTERA: När ett filsystem lagrar stora filer i ett filsystem delas den stora filen upp i block och blocken lagras i filsystemet. Det sista blocket i filen upptar inte hela blocket. Detta sista block kallas svansblocket. På samma sätt, när många små filer lagras, upptar de inte hela blocket. Så mycket diskutrymme går till spillo. Blockera allokering är en metod för att lagra delar av ett annat filblock i svansblocket (det sista blocket i en annan fil som inte upptog hela blocket) och spara diskutrymme.

xix. Svansförpackning: Ext4-filsystemet stöder inte svansförpackning.

Btrfs-filsystemet stöder svansförpackning.

NOTERA: Svansförpackning är en del av blockdelningen. Som jag redan har diskuterat upptar inte små filer ett helt filblock. Så för att effektivt lagra små filer (i.e. programkällkoder) i filsystemet används svansblocket för en liten fil för att lagra andra små filer. Svansförpackning förbättrar filsystemets prestanda och sparar mycket diskutrymme i ett filsystem där många små filer (t.ex.e. programkällkoder) lagras.

xx. Omfattningsbaserat filsystem: Både Ext4- och Btrfs-filsystemen är omfattningsbaserade filsystem.

NOTERA: En omfattning är ett sammanhängande område av lagringsenheten som är reserverat för en fil i ett filsystem. Omfattningsbaserade filsystem lagrar stora filer i ett angränsande lagringsområde. Detta förbättrar filsystemets prestanda och ökar lagringseffektiviteten.

xxi. Variabel filstorlek: Ext4-filsystemet stöder fast blockstorlek. Blockstorleken ställs in innan filsystemet skapas. När filsystemet har skapats kan du inte ändra blockstorleken.

Btrfs-filsystemet stöder variabel blockstorlek. Filsystemet kan bestämma bästa möjliga blockstorlek för att lagra en fil i filsystemet baserat på filens storlek. Denna funktion kan spara mycket diskutrymme.

xxii. Tilldela vid spolning: Både Ext4- och Btrfs-filsystemet stöder allokering-på-spolning.

NOTERA: Filsystemet tilldelar något buffertutrymme i datorns minne. När det finns förfrågningar om diskskrivning skriver inte filsystemet datablocken direkt på lagringsenheten. Istället lagrar filsystemet datablocken i buffertminnet. När buffertminnet är fullt skriver filsystemet alla väntande datablock till lagringsenheten på en gång. Detta minskar CPU-användningen, påskyndar diskskrivningar och minskar diskfragmentering.

xxiii. TRIM-stöd: Både Ext4 och Btrfs-filsystemet stöder TRIM. Det är en mycket viktig funktion för SSD-lagringsenheter.

NOTERA: När du tar bort en fil från en SSD meddelar TRIM-kommandot SSD-lagringsenheten om de sidor (filblock) som inte längre behövs. SSD raderar onödiga sidor (filblock) från flashminnet och förbereder sidorna (filblock) för lagring av nya data. Utan TRIM-stöd skulle SSD-skrivhastigheten bli långsammare eftersom SSD är fylld med ny data.

Fördelar med Ext4 jämfört med Btrfs:

Ext4-filsystemet är ett mycket gammalt filsystem. Det har använts i Linux-operativsystemet under lång, lång tid. På grund av detta är Ext4-filsystemet mycket stabilt. Ext4-filsystemet är fortfarande standardfilsystemet i många populära Linux-distributioner (i.e. Ubuntu / Debian). Om du behöver lagra en del data som en vanlig Linux-användare kan du hålla ögonen stängda och använda Ext4-filsystemet. Ext4-filsystemet har stöd för journalföring. Så dina filer ska vara säkra även när det är strömavbrott. Det är ett bra filsystem för daglig användning.

Fördelar med Btrfs jämfört med Ext4:

Btrfs-filsystemet är ett modernt Copy-on-Write (CoW) -filsystem som var utformat för högkapacitets- och högpresterande lagringsservrar. Så det har många avancerade funktioner som Ext4-filsystemet inte har. Ext4-filsystemet utformades för att vara ett enkelt lokalt filsystem.

De viktigaste funktionerna i Btrfs-filsystemet som är användbara för vardagliga Linux-användare är:

  1. Inbyggda snapshots på filsystemnivå.
  2. Stöd för flera enheter.
  3. Inbyggt RAID-stöd.
  4. Flexibel inodallokering.
  5. Optimeringar för lagring av mindre filer (glesa filer, blockeringsallokering, svanspackning, variabel blockstorlek).
  6. Inbyggt komprimeringsstöd för filsystemnivå.

Det här är filsystemfunktionerna som du kan välja att använda Btrfs-filsystemet över Ext4-filsystemet.

Slutsats:

I den här artikeln har jag jämfört Btrfs och Ext4-filsystemen. Jag har jämfört huvudfunktionerna i filsystemet Btrfs och Ext4. Denna artikel ska hjälpa dig att välja mellan Btrfs och Ext4-filsystemet.

Referenser:

  1. ext4 - Wikipedia - https: // sv.wikipedia.org / wiki / Ext4
  2. Btrfs - Wikipedia - https: // sv.wikipedia.org / wiki / Btrfs
  3. kärna / git / torvalds / linux.git - Linux-kärnkällträd - https: // git.kärna.org / pub / scm / linux / kernel / git / torvalds / linux.git / begå /?id = 4204617d142c0887e45fda2562cb5c58097b918e
  4. Jämförelse av filsystem - Wikipedia - https: // sv.wikipedia.org / wiki / Comparison_of_file_systems
  5. Dataduplicering - Wikipedia - https: // sv.wikipedia.org / wiki / Data_deduplication
  6. Sparse file - Wikipedia - https: // sv.wikipedia.org / wiki / Sparse_file
  7. Blockera underallokering - Wikipedia - https: // sv.wikipedia.org / wiki / Block_suballocation
  8. Omfattning (filsystem) - Wikipedia - https: // sv.wikipedia.org / wiki / Extent_ (file_systems)
  9. Allocate-on-flush - Wikipedia - https: // sv.wikipedia.org / wiki / Allocate-on-flush
  10. Trim (computing) - Wikipedia - https: // sv.wikipedia.org / wiki / Trim_ (dator)
Bästa spel att spela med handspårning
Oculus Quest introducerade nyligen den fantastiska idén om handspårning utan kontroller. Med ett ständigt ökande antal spel och aktiviteter som utför ...
Hur man visar OSD-överlägg i helskärms Linux-appar och -spel
Att spela helskärmsspel eller använda appar i distraktionsfritt helskärmsläge kan avskärma dig från relevant systeminformation som syns i en panel ell...
Topp 5 spelinspelningskort
Vi har alla sett och älskat streaming av spel på YouTube. PewDiePie, Jakesepticye och Markiplier är bara några av de bästa spelarna som har tjänat mil...