To pytanie jest dobre dla Linuksa acl. Ponieważ nie podajesz swojego systemu operacyjnego, zakładam, że Linux jest następujący. Oto przykładowa sesja.
Nie znam naprawdę dobrego aclsamouczka, ale możesz zrobić gorzej niż http://www.vanemery.com/Linux/ACL/linux-acl.html
Zauważ, że domyślny aclzachowuje się jak lokalny umask. Ponieważ przynajmniej w Linuksie umasks są stosowane globalnie, jest to jedyny znany mi sposób uzyskania efektu lokalnego umask. Z jakiegoś powodu jest to mało znana funkcja. Sieć jest zaśmiecona ludźmi pytającymi o lokalne obejście umask, ale prawie nikt nie myśli o użyciu acl.
Pamiętaj również, że musisz zamontować partycję, w której pracujesz, z aclobsługą, np.
/dev/mapper/debian-acl /mnt/acl ext3 defaults,acl 0 2
Sesja następuje:
/mnt/acl$ mkdir foo
/mnt/acl$ getfacl foo
# file: foo
# owner: faheem
# group: faheem
user::rwx
group::r-x
other::r-x
Ustaw grupę fooby staffi ustaw acl grupy i użytkownika foona rwx.
/mnt/acl$ chgrp staff foo
/mnt/acl$ setfacl -R -m u::rwx,g::rwx foo
/mnt/acl$ getfacl foo
# file: foo
# owner: faheem
# group: staff
user::rwx
group::rwx
other::r-x
Ustaw także domyślne wartości acls użytkownika i grupy rwx. Określa uprawnienia, które dziedziczą pliki i katalogi foo. Tak więc wszystkie pliki i katalogi utworzone w systemie foo będą miały uprawnienia grupowe rw.
/mnt/acl$ setfacl -d --set u::rwx,g::rwx,o::- foo
/mnt/acl$ getfacl foo
# file: foo
# owner: faheem
# group: staff
user::rwx
group::rwx
other::r-x
default:user::rwx
default:group::rwx
default:other::---
Teraz utwórz niektóre pliki foojako użytkownicy faheemi john.
/mnt/acl$ cd foo
/mnt/acl/foo$ touch bar
# switch to user john for this next command.
/mnt/acl/foo$ touch baz
Lista plików. Zauważ, że zarówno pliki będące własnością, jak faheemi pliki będące własnością, johnsą tworzone z uprawnieniami grupowymi rw.
/mnt/acl/foo$ ls -la
total 3
drwxrwxr-x+ 2 faheem staff 1024 May 9 01:22 .
drwxr-xr-x 4 faheem faheem 1024 May 9 01:20 ..
-rw-rw---- 1 faheem faheem 0 May 9 01:20 bar
-rw-rw---- 1 john john 0 May 9 01:22 baz