Řešení 1:
Ano, seznamy ACL to umí.
-
Ujistěte se, že váš souborový systém je připojen pomocí
acl. Chcete-li to zkontrolovat, zadejtemount. Měli byste vidětacluvedena mezi dalšími oprávněními, např./dev/sda1 on / type ext4 (rw,errors=remount-ro,acl)Pokud není připojen pomocí acl, otevřete
/etc/fstaba přidejteaclna seznam možností:# /etc/fstab: static file system information. # # <file system> <mount point> <type> <options> <dump> <pass> /dev/sda1 / ext3 noatime,errors=remount-ro,acl 0 1Nyní znovu připojte běžící souborový systém s novými možnostmi:
mount -v -o remount / -
Nainstalujte nástroje acl. Na ubuntu/debianu je to:
sudo apt-get install acl -
Vaši noví přátelé jsou
setfaclagetfacl. Použijtesetfaclzměnit výchozí acl pro adresář:setfacl -d -m o:r foo-dnastaví výchozí,-mupravuje acl ao:ruděluje „ostatním“ právo číst. Nastavení výchozího adresáře je zhruba ekvivalentní nastavení setgid adresáře, ale místo nově vytvořených souborů dědících skupinu zdědí acl. Setgid a acl mohou být společně výkonné, protože můžete skupině udělit výchozí oprávnění a získat nově vytvořené soubory tak, aby patřily do této skupiny, pro efektivní umask pro jednotlivé adresáře. -
Zkontrolujte svou práci:
ls -lby nyní měl ukazovat navíc "+" označující přítomnost acl kromě standardních oprávnění k souboru.% ls -la foo/ drwxr--r--+Podrobné informace o acl můžete získat pomocí
getfacl.% getfacl foo # file: foo # owner: you # group: you user::rwx group::r-- other::r-- default:user::rwx default:group::--- default:other::r--
Řešení 2:
Můžete také vynutit umask pro adresář nastavením vlastnosti ACL masky takto:
setfacl -d -m mask:07 .