Viac na
Ako rekurzívne chmodovať všetky adresáre okrem súborov?
Ako chmod 755 všetky adresáre, ale žiadny súbor (rekurzívne) ?
A naopak, ako chmodovať len súbory (rekurzívne), ale žiadny adresár ?
582
3
Rekurzívne udelenie oprávnení adresárom na čítanie&spustenie:
Rekurzívne udelenie oprávnení na čítanie súborov:
Alebo, ak je potrebné spracovať veľa objektov:
Alebo na zníženie množenia
chmod
:Častým dôvodom takéhoto postupu je nastavenie adresárov na 755, ale súborov na 644. V tomto prípade existuje o niečo rýchlejší spôsob ako nikov príklad
find
:Význam:
-R
= rekurzívne;u+rwX
= Používatelia môžu čítať, zapisovať a vykonávať;go+rX
= skupina a ostatní môžu čítať a vykonávať;go-w
= skupina a ostatní nemôžu zapisovaťDôležité je poznamenať, že veľké písmená
X
sa správajú inak ako malé písmenáx
. V manuáli môžeme čítať:Inými slovami, chmod u+X na súbore nenastaví bit execute; a g+X ho nastaví len vtedy, ak už je'nastavený pre používateľa.
Ak sa chcete uistiť, že súbory sú nastavené na 644 a v ceste sú súbory s príznakom execute, musíte najprv odstrániť príznak execute. Príznak +X neodstráni príznak execute zo súborov, ktoré ho už majú.
Príklad:
Aktualizácia: zdá sa, že to zlyháva, pretože prvá zmena (ugo-x) spôsobí, že adresár je nevykonateľný, takže všetky súbory pod ním sa nezmenia.