Een Linux-bestandssysteem is een gestructureerde verzameling bestanden op een schijf of een partitie. Een partitie is een geheugensegment en bevat enkele specifieke gegevens. In onze machine kunnen er verschillende geheugenpartities zijn. Over het algemeen bevat elke partitie een bestandssysteem.
Het algemene computersysteem moet gegevens systematisch opslaan, zodat we in minder tijd gemakkelijk toegang hebben tot de bestanden. Het slaat de gegevens op harde schijven (HDD) of een gelijkwaardig opslagtype op. Er kunnen de volgende redenen zijn om het bestandssysteem te onderhouden:
- In de eerste plaats slaat de computer gegevens op in de RAM-opslag; het kan de gegevens verliezen als het wordt uitgeschakeld. Er is echter niet-vluchtig RAM (Flash RAM en SSD) beschikbaar om de gegevens na de stroomonderbreking te behouden.
- Gegevensopslag heeft de voorkeur op harde schijven in vergelijking met standaard RAM, omdat RAM meer kost dan schijfruimte. De kosten voor harde schijven dalen geleidelijk in vergelijking met het RAM-geheugen.
De Linux bestandssysteem bevat de volgende secties:
- De hoofdmap (/)
- Een specifiek gegevensopslagformaat (EXT3, EXT4, BTRFS, XFS enzovoort)
- Een partitie of logisch volume met een bepaald bestandssysteem.
Wat is het Linux-bestandssysteem?
Het Linux-bestandssysteem is over het algemeen een ingebouwde laag van a Linux-besturingssysteem gebruikt om het gegevensbeheer van de opslag af te handelen. Het helpt om het bestand op de schijfopslag te ordenen. Het beheert de bestandsnaam, bestandsgrootte, aanmaakdatum en nog veel meer informatie over een bestand.
Als we een niet-ondersteund bestandsformaat in ons bestandssysteem hebben, kunnen we software downloaden om hiermee om te gaan.
Linux-bestandssysteemstructuur
Het Linux-bestandssysteem heeft een hiërarchische bestandsstructuur omdat het een hoofdmap en zijn submappen bevat. Alle andere mappen zijn toegankelijk vanuit de hoofdmap. Een partitie heeft doorgaans maar één bestandssysteem, maar kan ook meer dan één bestandssysteem hebben.
Een bestandssysteem is zo ontworpen dat het niet-vluchtige opslaggegevens kan beheren en ruimte kan bieden. Alle bestandssystemen vereisten een naamruimte die een naamgevings- en organisatiemethodologie is. De naamruimte definieert het naamgevingsproces, de lengte van de bestandsnaam of een subset van tekens die voor de bestandsnaam kunnen worden gebruikt. Het definieert ook de logische structuur van bestanden in een geheugensegment, zoals het gebruik van mappen voor het organiseren van de specifieke bestanden. Zodra een naamruimte is beschreven, moet er voor dat specifieke bestand een metadatabeschrijving worden gedefinieerd.
De datastructuur moet een hiërarchische directorystructuur ondersteunen; deze structuur wordt gebruikt om de beschikbare en gebruikte schijfruimte voor een bepaald blok te beschrijven. Het bevat ook de andere details over de bestanden, zoals bestandsgrootte, datum en tijd van creatie, update en laatst gewijzigd.
Het slaat ook geavanceerde informatie op over het gedeelte van de schijf, zoals partities en volumes.
De geavanceerde gegevens en de structuren die deze vertegenwoordigen, bevatten de informatie over het bestandssysteem dat op de schijf is opgeslagen; het is verschillend en onafhankelijk van de metagegevens van het bestandssysteem.
Het Linux-bestandssysteem bevat een tweedelige architectuur voor de implementatie van bestandssysteemsoftware. Beschouw de onderstaande afbeelding:
Het bestandssysteem vereist een API (Application Programming Interface) om toegang te krijgen tot de functieaanroepen om te communiceren met bestandssysteemcomponenten zoals bestanden en mappen. API vergemakkelijkt taken zoals het maken, verwijderen en kopiëren van de bestanden. Het vergemakkelijkt een algoritme dat de rangschikking van bestanden op een bestandssysteem definieert.
conversie van datum naar tekenreeks
De eerste twee delen van het gegeven bestandssysteem worden samen a Linux virtueel bestandssysteem . Het biedt een enkele set opdrachten voor de kernel en ontwikkelaars om toegang te krijgen tot het bestandssysteem. Dit virtuele bestandssysteem vereist dat het specifieke systeemstuurprogramma een interface voor het bestandssysteem geeft.
Directorystructuur
De mappen helpen ons de bestanden op te slaan en ze te lokaliseren wanneer we ze nodig hebben. Mappen worden ook mappen genoemd, omdat ze kunnen worden beschouwd als mappen waarin bestanden zich bevinden in de vorm van een fysieke desktop-analogie. Mappen kunnen in Linux en verschillende andere besturingssystemen in een boomachtige hiërarchie worden georganiseerd.
De directorystructuur van Linux is goed gedocumenteerd en gedefinieerd in de Linux FHS (Filesystem Hierarchy Standard). Het verwijzen naar deze mappen als u er toegang toe krijgt, wordt bereikt via de opeenvolgend diepere namen van de map die zijn gekoppeld door een '/' schuine streep naar voren, zoals /var/spool/mail en /var/log. Deze staan bekend als paden.
De onderstaande tabel geeft een zeer korte standaard, gedefinieerde en bekende Linux-directorylijst op het hoogste niveau en hun doeleinden:
Functies van Linux-bestandssysteem
In Linux creëert het bestandssysteem een boomstructuur. Alle bestanden zijn gerangschikt als een boom en zijn takken. De bovenste map genaamd hoofdmap (/). . Alle andere mappen in Linux zijn toegankelijk vanuit de hoofdmap.
Enkele belangrijke kenmerken van het Linux-bestandssysteem zijn als volgt:
Soorten Linux-bestandssysteem
Wanneer we het Linux-besturingssysteem installeren, biedt Linux veel bestandssystemen zoals Ext, Ext2, Ext3, Ext4, JFS, ReiserFS, XFS, btrfs, En ruil .
Laten we elk van deze bestandssystemen in detail begrijpen:
1. Ext-, Ext2-, Ext3- en Ext4-bestandssysteem
Het bestandssysteem Ext staat voor Uitgebreid bestandssysteem . Het is in de eerste plaats ontwikkeld voor MINIX-besturingssysteem . Het Ext-bestandssysteem is een oudere versie en wordt vanwege enkele beperkingen niet meer gebruikt.
Ext2 is het eerste Linux-bestandssysteem waarmee twee terabytes aan gegevens kunnen worden beheerd. Ext3 is ontwikkeld via Ext2; het is een verbeterde versie van Ext2 en bevat achterwaartse compatibiliteit. Het grootste nadeel van Ext3 is dat het geen servers ondersteunt, omdat dit bestandssysteem geen bestandsherstel en schijfsnapshot ondersteunt.
Ext4 bestandssysteem is het snellere bestandssysteem van alle Ext-bestandssystemen. Het is een zeer compatibele optie voor de SSD-schijven (solid-state drive) en het is het standaardbestandssysteem in de Linux-distributie.
2. JFS-bestandssysteem
JFS staat voor Gejournaliseerd bestandssysteem , en het is ontwikkeld door IBM voor AIX Unix . Het is een alternatief voor het Ext-bestandssysteem. Het kan ook worden gebruikt in plaats van Ext4, waar stabiliteit nodig is met weinig middelen. Het is een handig bestandssysteem wanneer de CPU-kracht beperkt is.
3. ReiserFS-bestandssysteem
ReiserFS is een alternatief voor het Ext3-bestandssysteem. Het heeft verbeterde prestaties en geavanceerde functies. Vroeger werd ReiserFS gebruikt als het standaardbestandssysteem in SUSE Linux, maar later zijn er enkele beleidsregels gewijzigd, dus keerde SUSE terug naar Ext3. Dit bestandssysteem ondersteunt de bestandsextensie dynamisch, maar heeft enkele prestatienadelen.
4. XFS-bestandssysteem
Het XFS-bestandssysteem werd beschouwd als snelle JFS, die is ontwikkeld voor parallelle I/O-verwerking. NASA gebruikt dit bestandssysteem nog steeds met zijn hoge opslagserver (server van meer dan 300 terabyte).
binaire boom versus binaire zoekboom
5. Btrfs-bestandssysteem
Btrfs staat voor de B-boombestandssysteem . Het wordt gebruikt voor fouttolerantie, reparatiesysteem, leuk beheer, uitgebreide opslagconfiguratie en meer. Het past niet goed bij het productiesysteem.
6. Bestandssysteem wisselen
Het wisselbestandssysteem wordt gebruikt voor het wisselen van geheugen in het Linux-besturingssysteem tijdens de slaapstand van het systeem. Een systeem dat nooit in de slaapstand gaat, moet over swapruimte beschikken die gelijk is aan de RAM-grootte.
Wat is mounten in het Linux-bestandssysteem?
Onder Linux is de 'bestijgen' , een bestandssysteemterm, verwijst naar de eerste computerdagen waarin een verwijderbaar schijf- of tapepakket fysiek op een correct schijfapparaat moet worden gemonteerd. Op het schijfpakket zou het bestandssysteem logischerwijs door het besturingssysteem worden aangekoppeld om de inhoud beschikbaar te maken voor toegang door toepassingsprogramma's, het besturingssysteem en gebruikers nadat het fysiek op de schijf was gelokaliseerd.
Simpel gezegd is een koppelpunt een map die gemaakt is als onderdeel van het bestandssysteem. Het homebestandssysteem wordt bijvoorbeeld in de map /home geplaatst. Bestandssystemen kunnen op veel niet-rootbestandssystemen op koppelpunten worden geplaatst, maar dit komt minder vaak voor.
- Het rootbestandssysteem van Linux wordt al heel vroeg in de opstartvolgorde in de map / (hoofdmap) aangekoppeld.
- Verschillende bestandssystemen worden later aangekoppeld door de opstartprogramma's van Linux, hetzij rc op SystemV of via systemd in nieuwe Linux-versies.
- Het koppelen van het bestandssysteem tijdens het opstarten wordt afgehandeld door het configuratiebestand, d.w.z. /etc/fstab .
- Een gemakkelijke manier om dat te begrijpen is fstab, de afkorting van 'bestandssysteemtabel' , en het is een lijst met bestandssystemen die moeten worden gemount, hun opties en aangewezen koppelpunten die mogelijk vereist zijn voor bepaalde bestandssystemen.
Bestandssystemen kunnen worden gemount op een beschikbaar mountpunt/map met behulp van het mount-commando. Met andere woorden: elke map die als koppelpunt wordt toegepast, mag geen andere bestanden bevatten en moet leeg zijn. Linux zal gebruikers er niet van weerhouden een bestandssysteem te mounten op een systeem dat al beschikbaar is of op een map die bestanden bevat. De daadwerkelijke inhoud zal worden behandeld, en alleen de nieuw aangekoppelde inhoud van het bestandssysteem zal zichtbaar zijn als we een bestandssysteem op een bestaand bestandssysteem of map mounten.