it-swarm-eu.dev

Jak nastavit výchozí oprávnění souborů pro všechny složky / soubory v adresáři?

Chci nastavit složku tak, aby cokoli vytvořené v ní (adresáře, soubory) zdědělo výchozí oprávnění a skupinu.

Umožňuje skupině nazvat „média“. A také složky/soubory vytvořené v adresáři by měly mít automaticky g + rw.

274
Chris

Našel jsem to: Použít výchozí oprávnění

Z článku:

chmod g+s <directory>  //set gid 
setfacl -d -m g::rwx /<directory>  //set group to rwx default 
setfacl -d -m o::rx /<directory>   //set other

Dále můžeme ověřit:

getfacl /<directory>

Výstup:

# file: ../<directory>/
# owner: <user>
# group: media
# flags: -s-
user::rwx
group::rwx
other::r-x
default:user::rwx
default:group::rwx
default:other::r-x
288
Chris

Toto je doplněk k Chrisově odpovědi, je založen na mých zkušenostech s mojí soupravou Arch Linux.

Použití výchozího přepínače (-d) a změny přepínače (-m) pouze změní výchozí oprávnění, ale stávající zůstanou nedotčena:

setfacl -d -m g::rwx /<directory>

Pokud chcete změnit celou strukturu oprávnění složky včetně těch stávajících (budete muset udělat další řádek a učinit z něj rekurzivní -R:

setfacl -R -m g::rwx /<directory>

např.

setfacl -R -m g::rwx /home/limited.users/<directory> // gives group read,write,exec permissions for currently existing files and folders, recursively
setfacl -R -m o::x /home/limited.users/<directory> //revokes read and write permission for everyone else in existing folder and subfolders 
setfacl -R -d -m g::rwx /home/limited.users/<directory> // gives group rwx permissions by default, recursively
setfacl -R -d -m o::--- /home/limited.users/<directory> //revokes read, write and execute permissions for everyone else. 

( KREDIT označit komentář v komentářích pro syntax řádku odvolání všech oprávnění)

29
thebunnyrules

Přidejte sebe/přihlášeného uživatele do skupiny www-data, takže můžeme pracovat se soubory vytvořenými serverem www-data

Sudo usermod -a -G www-data $USER

Je třeba restartovat/znovu přihlásit, aby se nová přidaná skupina projevila

cd /var/www

Přidejte data www jako člen skupiny ve složce html a váš uživatel jako vlastník, takže je vlastníme stejně jako člen skupiny

Sudo chown -R $USER:www-data html

Vložte své uživatelské jméno místo USER

Nastavte čtení, zápis, provádění oprávnění podle potřeby, (ugo) u = user, g = group, o = others

Sudo chmod 750 html

Nastavit GID html, nyní nově vytvořené soubory v html zdědí vlastnická oprávnění:

Sudo chmod g+s html

Tím se vytvoří výchozí pravidla pro nově vytvořené soubory/adresáře v adresáři html a podadresářích.

Sudo setfacl -R -d -m u::rwX -m g::rX -m o::000 html

Pokud je nainstalován, proveďte SELinux, ignorujte kontextový požadavek na data www, který umožňuje povolení zápisu

Sudo setsebool -P httpd_unified 1

seznam adresářů pro zobrazení nových použitých oprávnění

ls -ld html

Vrací to

drwxrwsr-x+   3 html www-data

Koncové znaménko + znamená, že ACL, seznam řízení přístupu, je nastaven v adresáři.

Reference : Odkaz na fórum

1
Bsienn