Chmod spusťte samostatně pro soubory a adresáře
Pokud jste uživatelem Linuxu, pravděpodobně jste slyšeli o konzolové aplikaci chmod. Je to užitečný nástroj, který umožňuje měnit oprávnění systému souborů pomocí terminálové relace nebo emulátoru terminálu. Když jej spustíte, změní oprávnění, která zadáte pro soubory a adresáře, najednou. Možná však budete muset změnit oprávnění k souboru odděleně od oprávnění k adresáři a naopak. Zde je návod, jak to lze provést.
Existuje několik způsobů, jak to udělat, ale můj oblíbený a nejspolehlivější způsob, jak to udělat, je kombinovat chmod s xrags a nalézt nástroje. Následující příkaz změní oprávnění pouze pro soubory.
najít /cestu/k/umístění -type f -print0|xargs -0 chmod 644
Zde nalézt příkaz vypíše všechny soubory v zadaném umístění. Přepínač -type f mu říká, aby vypsal pouze soubory a vyloučil adresáře. Přepínač -print0 umožňuje zpracovat názvy souborů tak, aby názvy souborů nebo adresářů obsahující mezery nebo nové řádky byly správně zpracovány.
Podobný vhodný příkaz lze použít i pro adresáře. Jediná část, kterou musíte změnit, je -type f na -type d:
najít /cestu/k/umístění -type d -print0 |xargs -0 chmod 755
Tip: Pomocí tohoto triku můžete ušetřit čas a méně psát.
- Nejprve použijte oprávnění systému souborů na soubory a složky spuštěním chmod v rekurzivním režimu:
chmod -R 644 /cesta/k/umístění
Použije oprávnění rw-r-r na všechny soubory a složky v zadaném umístění.
- Dále spusťte příkaz pouze pro adresáře:
najít /cestu/k/umístění -type d -print0 |xargs -0 chmod 755
A je to.