Systém souborů v Unixu

Systém souborů v Unixu je tvořen hierarchickým uspořádáním souborů a adresářů (stromová struktura), jejímž kořenem je adresář root, který se označuje „/“.

Charakteristika editovat

V Unixu je, oproti některým jiným systémům (např. MS Windows), jeden strom adresářů (na jehož vrcholu leží právě root - kořen). Kořen se připojuje při startu operačního systému (jádra). Další systémy souborů (filesystem) jsou připojeny do nějakého adresáře.

Vlastnosti systému souborů v UNIXu :

  • možnost vytvářet a mazat soubory
  • konzistentní přístup k datům v souboru
  • ochrana dat v souborech
  • kořenový systém souborů nelze odpojit

Rozdělení editovat

Skoro vše v Unixu je soubor. V Unixu rozlišujeme tři základní skupiny souborů:

  • adresáře
  • soubory
  • speciální soubory

Adresáře editovat

  • Domovský adresář (též domácí, angl. home directory) – uživatel by měl mít vlastní domovský adresář. Po přihlášení do operačního systému je domovský adresář nastaven jako pracovní.
  • Pracovní adresář (angl. working directory) je ten, ve kterém momentálně uživatel pracuje.
  • Rodičovský adresář (angl. parent directory) je o úroveň výše ve vztahu s kterýmkoliv adresářem

Soubory editovat

Obsahují vlastní data a programy, se kterými uživatel pracuje. Každému souboru přísluší tyto atributy:

Speciální soubory editovat

  • reprezentují I/O zařízení
  • jsou soustředěny v adresáři /dev
  • soubory znakových zařízení – čtou a zapisují po jednom znaku (sériový a paralelní port, USB, terminál)
  • soubory blokových zařízení – čtou a zapisují celý blok dat najednou (disk, disketa, CD, DVD)
  • další speciální soubory: socket (přímá dvousměrná komunikace mezi programy) a roura (trubka, angl. pipe, jednosměrná komunikace)

Názvy souborů a adresářů editovat

Při tvorbě názvů souborů a adresářů v Unixu je jediný zakázaný znak „/“ (které odděluje adresáře). Odlišují se zde velká a malá písmena. Názvy nemají strukturu – znak . (tečka) je stejný jako ostatní. Přípony se používají dle dohody, vůbec nebo násobné. Název „.“ označuje aktuální, „..“ nadřazený adresář a „~“ domovský adresář přihlášeného uživatele. Názvy začínající tečkou označují skrytý soubor nebo adresář.

Příklady přípon v Unixu
.c zdrojový kód Jazyce C
.txt (ASCII) text
.ps Postskript (formát pro text i obrázky)

Žurnálování editovat

V žurnálovém souborovém systému je přítomna speciální datová struktura (žurnál), do kterého se zapisují změny se soubory. Žurnálují se – metadata nebo metadata + data. Při změnách ve Filesystému je změna nejprve zapsána do žurnálu. Po provedení změny (data, metadata) je úspěch zapsán do žurnálu, poté je žurnál operace zrušen. Pokud dojde k neočekávané havárii je Filesystém opraven dle žurnálu.

Ext3 editovat

Operační systém Linux má soubor s názvem EXT (Extended file systém).

  • ext, ext2, ext3 (v současnosti), ext4 (stabilní verze od r.2008)
Systém souborů v Ext3:
boot SUPERBLOK i-uzly datové bloky SUPERBLOK

Superblok editovat

  • služební informace o svazku
  • velikost (skupiny)
  • příznak „čistoty“ (zda je odpojen korektně)
  • verze
  • počet i-nodu
  • velikost alokační jednotky

i-uzel (i-node) editovat

Základní jednotka, která nese metadata o souboru (přístupová práva, počet odkazů – hard links, vlastník + skupina, délka)

Související články editovat