A fájlrendszerek típusai

A Linux operációs rendszer számos különböző fájlrendszert támogat. A Linux szempontjából a fájlrendszerek négy csoportra oszthatók:

  • "Natív" fájlrendszerek. Ez azt jelenti, hogy a fájlrendszer támogatja a Linux sajátosságait: hozzáférési jogokat, időbélyegzőket, a fájl tulajdonosával kapcsolatos információkat stb .;
  • "Nem natív" fájlrendszerek. Azaz olyan fájlrendszerek, amelyek nem támogatják a Linux attribútumokat;
  • Virtuális. Ezek olyan fájlrendszerek, amelyeknek nincs fizikai adathordozójuk;
  • Hálózati fájlrendszerek.

A "natív" fájlrendszerekhez lehetséges:

Az ext2 fájlrendszer

- Igen, ez ugyanaz, az egyetlen fájlrendszer, amely teljesen megfelel nekem.

Emellett az ext2-nek komoly korlátai vannak:

  • A maximális fájlméret 2048 GB.
  • A fájlrendszer maximális mérete 32768 GB.
  • Az alkönyvtárak maximális száma egy könyvtárban 32768.

Naplózott fájlrendszerek

Most az ext2 fájlrendszert szinte soha nem használják. És még a korlátozásai között is, az ext2 meglehetősen megbízható fájlrendszer. A Linux szerverek betöltésének sebessége. Szükséges, hogy a kiszolgáló folyamatosan működjön. De nem történik csodák, a szerver néha túlterhelt. Feladata annak biztosítása, hogy a rendszer bukása után a lehető leggyorsabban megterheljék. A szerver bekapcsolásakor a lemezek ellenőrzése megtörtént. A fájlrendszerek, különösen a nagyméretű rendszerek ellenőrzése meglehetősen hosszú folyamat. Ha több ilyen fájlrendszer létezik, az ellenőrzésük nagyon sokáig tarthat. És a kiszolgálónak működnie kell!

Az ellenőrzésre fordított idő csökkentése és a megbízhatóság növelése érdekében naplózási fájlrendszereket fejlesztettek ki. Ha adatbázisokkal dolgozik, valószínűleg egy tranzakciót ismer. Számos SQL utasítás társul egy tranzakcióhoz. A rendszernek minden üzemeltetőt végre kell hajtania. Ha legalább egyikük nem működik, akkor a rendszer visszaáll a tranzakció elejére. Ha a rendszer a tranzakció során le van tiltva, ha engedélyezve van, akkor megpróbálja végrehajtani a fennmaradó operátorokat, vagy visszatér a tranzakció elejére.

A modern fájlrendszerekben a tranzakciós napló támogatása hozzáadódott. A fájlrendszer működésének szempontjából a fájl összes művelete egyetlen tranzakciónak tűnik. Ha alaposabban megvizsgálja a Linux operációs rendszeren végzett fájlkezelést, a fájl írása vagy módosítása meglehetősen bonyolult eljárás, amely számos, a lemezen lévő műveletből áll. Ha a tranzakciónaplót használja, mielőtt bármilyen fizikai módosításra kerülne a lemezen, egy új tranzakció nyílik meg a naplóban, amely rögzíti a fájlrendszer összes műveleteit. És csak miután a tranzakció mentésre került a lemezen, a fájlrendszernek megváltozik.

Ha a fájlrendszer lesz kapcsolva rendesen, a program ellenőrzi az első tranzakciós napló látszó és adatok alapján tárolt, vagy megpróbál visszatérni (rollback) rendszer kezdetén az ügylet vagy, ha ez lehetséges, hogy hajtsa végre a lépéseket a tranzakciót. Mivel a napló kicsi (32 MB az ext3 fájlrendszerben), a fájlrendszer helyreállítási folyamata jelentősen felgyorsult.

Az ext3 fájlrendszer

Amikor szükségessé vált a naplózó fájlrendszerek Linuxon történő bevezetése, a RedHat kifejlesztette az ext3 fájlrendszert. A RedHat-ban a legkisebb ellenállás ment végbe, hiszen jól ismert ext2-t vettek igénybe, és támogatta a magazint.

A fizikai eszköze révén az ext2 azonos az ext3-vel. Ez a szolgáltatás ugyanazokat a segédprogramokat használhatja az ext3-hoz (fájlrendszerek létrehozásához, ellenőrzéséhez és konfigurálásához), valamint az ext2-hez való munkához.

A napló hozzáadása ellenére az ext3 gyorsabban fut, mint az ext2. Az ext3 előnyei között szerepelnie kell a nemcsak a szükséges műveletek naplózásának, hanem más naplózási rendszerek által nem engedélyezett adatoknak is. E tulajdonság miatt az ext3 nagyon megbízhatónak tekinthető.

Az Ext3 három üzemmódot támogat:

  • Visszahúzás - ez a mód nem rögzíti az adatokat. Mindenekelőtt az úgynevezett metaadatok (inode fájl, blokk referenciák) kerülnek a naplóba. Csak azután, hogy a naplóban vannak, az adatok a fájlrendszerbe íródnak.
  • Rendezett (alapértelmezett üzemmód) - ez a mód hasonló a fentihez. Az egyetlen különbség az, hogy az írási módban az összes metaadat először a naplóba kerül, és csak ezután változik meg a fájlrendszer. Rendszeres módban, amikor blokk információ kerül a naplóba, ez a blokk azonnal megváltozik a fájlrendszerben. Ezután a következő blokkra vonatkozó információ kerül a naplóba, és a blokk rögzítésre kerül, és így tovább. Vagyis az adatok párhuzamosan változnak a napló módosításával.
  • Folyóirat - teljes naplózási mód. A metaadatok és adatok beírják a naplót. És csak ezután változik a fájlrendszer.

ReiserFS fájlrendszer

Megoldotta a kis fájlok merevlemezre helyezésének problémáját. Például az ext2 / 3-ban egyetlen karaktert tartalmazó fájl tárolására az egész blokk a lemezen lesz elfoglalva. Az ext2 / 3 blokk mérete 1-8 kBa lehet (a méret a fájlrendszer méretétől függ). A ReiserFS-ben egy blokkban több fájl adatait is elhelyezheti. Továbbá, ha a fájl mérete nagyon kicsi, akkor az adatok az inode-ba helyezhetők el, vagyis közvetlenül a metaadatokban.

A fájlrendszer optimalizált fákon (B tree) alapul. Ez növeli a keresési sebességet a fájlrendszerben, és megszünteti a könyvtárban található fájlok és könyvtárak számának korlátozását.

Nagy fájlok esetén ez a fájlrendszer is nagyon magabiztos.

A ReiserFS fájlrendszer 3.6 verziójára a következő korlátozások léteznek:

  • A maximális fájlméret 8 TB (32 bites számítógépek esetén);
  • A fájlrendszer maximális mérete 16 TB.

Most a ReiserFS következő verziója kerül kifejlesztésre - a negyedik. Várható, hogy a 2.6.17 vagy 2.6.18 verziókban szerepel a rendszermag.

JFS fájlrendszer

A JFS naplózott fájlrendszer. Fő hobbija az LVM (Logical Volume Manager) segítségével együtt használható. Az LVM lehetővé teszi a merevlemezek több fizikai partíciójának egy logikai partícióba való kombinálását, amelyet ezután hagyományos merevlemezként rendezhet. Ugyanakkor az LVM egyes típusai lehetővé teszik az új lemezterület on-the-fly csatlakoztatását. És ha az ext3 fájlrendszert használja a növekvő partíciókra, egy ponton kap egy üzenetet arról, hogy lehetetlen létrehozni egy új fájlt. Az a tény, hogy az ext3 partíció formázásakor a méret, a véges számú inódok függvényében előre rögzül. Vagyis a fájlok maximális száma előzetesen ismert. Ha a fájlrendszer mérete nem nő, akkor ez az inodes-szám elegendő a normál működéshez. A JFS-ben lehetőség van dinamikusan növelni a fájlrendszert és az inódok számát. Ennek a tulajdonságnak köszönhetően, ahogy a fájlrendszer mérete nő, nincs korlátozás a létrehozott fájlok számára.

A JFS fájlrendszer esetében a következő korlátozások léteznek:

  • A maximális fájlméretet az operációs rendszer mérete korlátozza.
  • A fájlrendszer maximális mérete 512 TB.

Az XFS fájlrendszer

Nagy fájlok támogatása azért lehetséges, mert az XFS egy 64 bites fájlrendszer. És a fájlrendszer sebessége a B + fák használatával érhető el a belső struktúrák keresésére és leírására.

Belülről a fájlrendszer meglehetősen bonyolult, és nem látom annak szükségességét, hogy röviden ismertesse struktúráját. Különösen azért, mert jó cikkek vannak az interneten az XFS részletezésével:

Microsoft fájlrendszerek

Ha a Microsoft fájlrendszeréről beszélünk, a Linux támogatja a FAT és NTFS fájlokat. A FAT-szel minden nagyon egyszerű, a fájlrendszer struktúrája ismeretes, ezért a Linuxban teljesen támogatott. Az egyetlen dolog, amit figyelembe kell venni a FAT használatakor, Linuxban kétféle van:

Támogatni kell a FAT-ot abban az esetben, ha floppy lemezeket és különböző USB-meghajtókat kíván használni: flash kártyák, merevlemezek stb. Az a tény, hogy mindegyikük általában a FAT-ban van formázva.

A NTFS egy kicsit bonyolultabb. Ez a fájlrendszer általában csak olvasható módban támogatott. Felvételi módban nem ajánlott használni. Míg a rögzítési mód támogatott, de ha elolvasod a dokumentációt az NTFS vezetők, azt találjuk, hogy több betűt írt a felvételi mód, akkor csak módosítani a tartalmát a meglévő fájlokat, minden esetben, nem hozhat létre új fájlokat, törlése vagy átméretezése meglévő - képes elpusztítani fájlrendszer.

Az iso9660 és az udf fájlrendszerek

Ezeket a fájlrendszereket CD és DVD lemezekre vonatkozó információk tárolására használják.

Kezdetben az iso9660 egy nagyon egyszerű fájlrendszer volt, sok korlátozással. Például a fájlnevek, mint az MS DOS, a címtármellékletek számának korlátozása. Ezért számos bővítményt írtak az iso9660-ra, ami kibővíti képességeit. Beleértve azokat a kiegészítéseket, amelyek lehetővé teszik a UNIX fájlok tulajdonságainak mentését. Minden kiegészítõt a fájlrendszer-illesztőprogram támogat, és nem okoz gondot a munka során. Továbbá, az iso9660 meghajtó támogatja, ahogy furcsán hangzik, a felvételi mód. CD-ROM-képek létrehozásakor használható.

Az udf-nál sem voltak különleges problémák. Így a CD- és DVD-lemezeken végzett munkát a Linux korlátozás nélkül támogatja.

A proc fájlrendszer

Ez egy nagyon hasznos fájlrendszer. Rendszergazdaként végzett munkájakor nagyon gyakran fordulhat képességéhez. A Linux-fájlrendszer szervezésének első fejezetek egyikében röviden beszélek a fájlrendszer céljáról. Ne felejtsük el, hogy a / proc könyvtárban lévő fájlok a rendszermag adattartományának leképezése a fájlrendszerbe. Ez azt jelenti, hogy ha egy fájl tartalmát nézzük, valójában látszik a rendszermag adatterületének bizonyos része.

Az alábbiakban néhány érdekes fájlt fogok leírni, amelyek megtalálhatók a / proc könyvtárban. A rendszeren található fájlok tartalma eltér a példákban bemutatott fájlok tartalmától.

/ proc / cmdline

Tartalmazza a rendszermaghoz továbbított parancssort, amikor elindul.

/ proc / cpuinfo

Információ a processzorról vagy a processzorokról.

/ proc / partíciók

Az összes csatlakoztatott meghajtó partícióinak listáját tartalmazza.

A PCI buszon észlelt eszközök listája.

Ez a fájl meg tudja állapítani, hogy egyes eszközök miért nem működnek. Ügyeljen a megszakításokra: ha 0, akkor azt jelenti, hogy az eszközt semmilyen okból nem adták meg megszakításnak. Nem fogom teljes mértékben idézni a fájl tartalmát, nagyon nagy.

/ proc / swaps

A csatlakoztatott swap fájlok és partíciók listáját tartalmazza.

/ proc / verzió

Információt tartalmaz az operációs rendszer és a Linux kernel verziójáról.

Folyamatadatok

A / proc fájlok mellett vannak olyan könyvtárak is, amelyek neve a szám. Minden könyvtár olyan folyamatot ír le, amelynek PID-je megfelel a könyvtár nevének. A könyvtárban található fájlok leírják a folyamat paramétereit. Az egyik könyvtár tartalma az alábbiakban található.

Csak néhány példányban található fájl tartalmaz olyan információkat, amelyek előzetes feldolgozás nélkül értendők.

Összefoglaló parancsokat tartalmaz.

Tartalmazza a környezeti változók értékeit a folyamat környezetben.

Információt tartalmaz a folyamat állapotáról emberileg olvasható formában.

Egyéb könyvtárak

A rendszer folyamatait leíró könyvtárak kómája, a / proc más könyvtárak lehetnek. Az alábbiakban néhányuk célja:

  • ide - az ide interfészhez kapcsolódó eszközökről.
  • irq - információk a megszakítások elosztásáról.
  • net - a hálózatról. Az arp tábla tartalma és az útválasztási táblázat. A hálózati interfészek és protokoll statisztikái. És így tovább.
  • scsi - SCSI eszközökről.
  • sys - változó rendszerparamétereket tartalmaz.

A / proc / sys fájlrendszer különálló téma. A könyvtárban található fájlok segítségével megváltoztathatja a rendszer "menet közben" paramétereit. Elég a kívánt érték megírása egy adott fájlban. Nem fogom leírni a / proc / sys-t, túl sok információ van, és túl sok tudnivaló van annak megértéséhez, hogy mely fájlokat használják. Szóval elmondom, hol találja meg a fájlrendszer dokumentációját és leírását:

Sysfs fájlrendszer

A virtuális sysfs fájlrendszer a Linux 2.6 kernel egyik jellemzője. A fájlrendszer néhány rendszermag-adatstruktúrát jelenít meg, alapvetően leírva a jelenleg a rendszerben lévő eszközöket.

A Sysfs-t az udev használja az eszközfájlok dinamikus létrehozásához.

Kapcsolódó cikkek