Systémy souborů

Základní unixový systém souborů

Jméno souboru a adresáře

Adresáře

Reprezentace souboru na disku

Odkaz

Symbolické okdazy

Formát i-uzlu

na disku

paměťová kopie obsahuje navíc

Superblok

Ext2, ext3 a ext4 pro linux

Ext4

Speciální soubory

FIFO - pojmenovaná roura

Typický adresářový strom

Přístupová práva

V i-uzlu pro vyhodnocení přístupových práv jsou:

Ve výpisu ls -l
-rw-r--r-- 1 piti piti 6555 Apr 5 15:09 assignment.adoc
vlastník (označuje se jako u jako 'user') - Vlastníkem je ten, jehož UID j zapsáno v i-uzlu. (první trojice zleva) Smí práva měnit.
skupina (označuje se g jako 'group')
ostatní (označuje se o jako 'others') - Touto kategorií určujeme, co s tímto objektem mohou provádět ostatní.
Přístupová práva se vyhodnucují v pořadí ugo - ale platí pouze první trojice, do které patříme. \

Pro soubor se operace defunují následovně:
r - Soubor je povoleno číst.
w - Do souboru je povoleno zapisovat.
x - Soubor je povoleno spustit

Pro adresář mají operace tyto významy:
r - Adresář je povoleno vypsat; nikoli však zpřístupnit soubory v něm odkazované.
w - Do adresáře je povoleno zapisovat; tj. lze výtvářet a rušit soubory (smazání pevného odkazu).
x - Do adresáře je možné vstoupit; tj. adresář může být argumentem příkazu cd a lze zpřístupnit i-uzly souborů, na které se adresář odkazuje.

Problém u adresářu typu /tmp
drwxrwxrwt 18 root root 4096 Apr 8 07:21 /tmp/
Pro tyto adresáře se zavádí tzv. sticky bit - t
Soubor v takto označeném adresáři nepovoluji se smazat nikomu jinému než vlastníkovi souboru nebo vlastníkovi adresáře.
t - je pod ním malé x
T - není pod ním malé x

Soubor běží pod UID toho, kdo jej spustil.
Chci, aby soubor běžel pod UID vlastník souboru bez ohledu na to, kdo jej spustil: Set User ID (SUID) bit rwsr-xr-x
Totéž pro skupinu: použiji Set Group ID (SGID) bit rwxr-sr-x (U adresáře znamená, že nový soubor bude mít implicitně skupiny daného adresáře)

Přístupová práva jsou uložena ve 12 bitech:

bitypopis
4000SUID
2000SGID
1000sticky bit
0400r pro vlastníka
0200w pro vlastníka
0100x pro vlastníka
0070rwx pro skupinu vlastníků
0007rwx pro ostatní

Všechny kombinace jsou možné, ale né však významné.

Příkaz umask

umask 022
touch soubor (rw-r--r--)
mkdir adresar (drwxr-xr-x)

Příkaz chmod

Příkazy přístupových práv