Přístupová práva k souborům
Návody pro C4
Přístupová práva (alternativně se můžete setkat s termíny: atributy souboru, mód souboru) umožňují nastavit omezení pro přístup k souborům a adresářům pro systémové uživatele v operačním systému GNU/Linux. V textu se nebudeme podrobně zabývat významem přístupových práv, zaměříme se na vysvětlení, jak přístupová práva zapisovat. Zapisují se v osmičkové (oktalové) soustavě (tj. číslice mohou nabývat hodnot od 0 do 7) pomocí 3 nebo 4 číslic. Alternativně se používá symbolický zápis v podobě 9 nebo 10 znaků. Každý soubor má svého vlastníka (systémový uživatel) a skupinu (skupina systémových uživatelů). Přístupová práva se nastavují pro tři třídy uživatelů, a sice:
- pro vlastníka
- pro skupinu (vztahuje se na systémové uživatele, kteří jsou ve skupině)
- pro ostatní (platí pro ostatní uživatele, kteří soubor nevlastní ani nejsou ve skupině)
Základní práva jsou právo čtení, právo zápisu a právo spuštění (v případě, že soubor je adresář, má právo spuštění význam práva vstupu do adresáře).
- právo čtení má hodnotu 4, symbolickým zápisem r
- právo zápisu má hodnotu 2, symbolickým zápisem w
- právo spuštění má hodnotu 1, symbolickým zápisem x
Základní práva můžeme libovolně kombinovat. Součtem hodnot příslušných oprávnění vznikne výsledná hodnota oprávnění. Např. právo čtení + zápisu má hodnotu 6 (4 + 2). Způsob symbolického zápisu a přehled všech možných kombinací je uveden v následující tabulce.
Hodnota | Symbolický zápis | Význam |
---|---|---|
0 | --- | žádné oprávnění |
1 | --x | právo spuštění |
2 | -w- | právo zápisu |
3 | -wx | právo zápisu, právo spuštění |
4 | r-- | právo čtení |
5 | r-x | právo čtení, právo spuštění |
6 | rw- | právo čtení, právo zápisu |
7 | rwx | právo čtení, právo zápisu, právo spuštění |
Výsledná přístupová práva pro soubor se zapisují v pořadí: práva pro vlastníka, práva pro skupinu a práva pro ostatní. Např. přístupová práva 640 (symbolickým zápisem rw-r-----) mají význam: právo čtení + zápisu (6, rw-) pro vlastníka, právo čtení (4, r--) pro skupinu a žádné právo (0, ---) pro ostatní.
Na začátek symbolického zápisu přístupových práv se může přidat znak, který charakterizuje typ souboru. V prostředí hostingového serveru se setkáte s těmito typy souborů:
- standardní soubor - v symbolickém zápisu - (pomlčka)
- adresář - v symbolickém zápisu d (d je z anglického slova directory)
Přítupová práva pro adresář jsou např. tvaru drwxr-xr-x, pro standardní soubor např. -rw-r--r--. Přehled nejčastěji používaných přístupových práv je uveden níže.
Hodnota | Symbolický zápis | Význam |
---|---|---|
755 | drwxr-xr-x | Vlastník: čtení, zápis, spuštění Skupina: čtení, spuštění Ostatní: čtení, spuštění |
555 | dr-xr-xr-x | Vlastník: čtení, spuštění Skupina: čtení, spuštění Ostatní: čtení, spuštění |
644 | -rw-r--r-- | Vlastník: čtení, zápis Skupina: čtení Ostatní: čtení |
444 | -r--r--r-- | Vlastník: čtení Skupina: čtení Ostatní: čtení |
Dodatečná práva
Souborům lze nastavit další práva: Set User ID, Set Group ID a Sticky bit.
Právo | Hodnota | Symbolický zápis |
---|---|---|
Set User ID | 4 | s pokud vlastník má právo x, S pokud vlastník nemá právo x |
Set Group ID | 2 | s pokud skupina má právo x, S pokud skupina nemá právo x |
Sticky bit | 1 | t pokud ostatní mají právo x, T pokud ostatní nemají právo x |
Dodatečná práva lze libovolně kombinovat, součtem příslušných hodnot dostaneme výslednou hodnotu dodatečných oprávnění. Tuto číslici zapisujeme před třemi číslicemi, které reprezentují přístupová práva souboru. Pro adresář se standardními právy 755, který má dále dodatečná práva Set Group ID a Sticky bit, je výsledná hodnota práv 3755, kde 3 je součet 2 (Set Group ID) + 1 (Sticky bit). Přístupová práva k uvedenému adresáři by v symbolickém zápisu byla tvaru drwxr-sr-t (znaky pro dodatečná oprávnění píšeme na místech pro znaky x podle výše uvedené tabulky).
Významem dodatečných práv se zabývat nebudeme. Uživatel webhostingových služeb se maximálně může setkat s právem Set Group ID na adresářích. Z hlediska uživatele nemá toto právo žádný vliv. Jestli má adresář nastavena práva drwxr-xr-x nebo drwxr-sr-x, vyjde úplně nastejno. Někteří FTP klienti ani neumožňují dodatečná práva nastavovat.
Standardní přístupová práva
Adresáře mají standardně nastavena práva drwxr-xr-x (755) nebo drwxr-sr-x (2755), soubory mají standardně práva -rw-r--r-- (644). Někteří uživatelé hostingových služeb přenastavují práva na adresářích na drwxrwxrwx (777) a práva na souborech na -rwxrwxrwx (777). Domnívají se, že je to nutné kvůli uploadu souborů nebo vytváření souborů v PHP skriptech. Hostingové služby Webhosting C4 jsou nastaveny tak, že kvůli uploadu souborů ani vytváření souborů (nebo adresářů) v PHP není nutné práva přenastavovat. Jestli má soubor (nebo adresář) nastavena standardní práva a nebo práva 777, není v tom z hlediska funkčnosti žádný rozdíl. Případné přenastavení na 777 je proto zbytečné.
FTP klienti
Při nastavování práv v FTP klientovi se můžete setkat s řadou alternativních názvů pro vlastníka, skupinu a ostatní.
Název | Alternativní názvy |
---|---|
vlastník | uživatel, owner, user |
skupina | group |
ostatní | svět, jiné, other, others, world |
K dispozici je návod na přenastavení přístupových práv v programu Total Commander.
PHP
Nastavení přístupových práv k souboru je možné provést i v programovacím jazyku PHP pomocí funkce chmod(). Je ale třeba dát si pozor, aby parametr s hodnotou přístupových práv byl korektně zadán v oktalové (osmičkové) soustavě. Doporučujeme přečíst návod PHP - chmod.
Související odkazy
- http://cs.wikipedia.org/wiki/Přístupová_práva_v_Unixu - podrobný popis problematiky přístupových práv
Diskuzní fórum pro článek Přístupová práva k souborům
Nové diskuzní téma můžete založit v sekci FTP klienti.
Změny a kontroly
K dispozici je kompletní přehled všech změn a kontrol v tomto návodu.
Přístupová práva k souborům
Publikace: | 16.5.2009 |
Přehled změn a kontrol |
Diskuzní fórum
- Webové aplikace
- Tvorba web stránek
- PHP, MySQL