Přeskočit na obsah

Chmod

Z Wikipedie, otevřené encyklopedie

Zbytečné použití šablony {{Název}} Příkaz chmod slouží v systému Unix ke změně přistupových práv souboru. Změnit práva souboru může pouze jeho vlastník nebo root. Měnit majitele, popřípadě skupinu může pak pouze root.

Práva se udávají číslem v oktalové (osmičkové) soustavě, tj. absolutním zápisem nebo pomocí tzv. symbolického zápisu.

Absolutní zápis

Nejčastěji se zapisuje jako třímístné číslo, kdy první číslice udává práva vlastníka, druhá práva skupiny a třetí pak práva ostatním.

Přehled práv nám dává následující tabulka:

hodnota právo
0 ---
1 --x
2 -w-
3 -wx
4 r--
5 r-x
6 rw-
7 rwx

Z tabulky vyplívá, že pokud se určité právo vyskytuje, vypíše se jako binární jednička, nepřítomnost práva symbolizuje binární nula.

U tohoto zápisu nemůžeme nic přidat nebo ubrat, ale jen přiřadit všechna práva najednou.

Výsledek pak může vypadat takto: chmod 721 soubor.txt (majitel může číst, zapisovat i spouštět, skupina má povolení pouze k zápisu a ostatní jen ke spuštění souboru soubor.txt)

Symbolický zápis

Tento zápis má na rozdíl od absolutního zápisu tři operátory, a to:

  • WHO - komu práva měníme: u (User - uživatel), g (Group - skupina),o (Others - ostatní), a (All - všem)
  • OP - co s právy děláme: + (přidání), - (odebrání), = (přiřazení)
  • PERM - jaká práva měníme: r (Read - čtení), w (Write - zápis), x (eXecute - spuštění), X (eXecute - pouze pro adresář nebo pokud je již práva x nastaveno pro některou kategorii - spuštění), s (Setuid, Setgid), t (sTicky)

Výsledkem pak může být například: chmod g-r soubor.txt (skupině odebírám právo na čtení souboru soubor.txt)

Související články