aclคำถามนี้เป็นแบบที่ดีสำหรับลินุกซ์ เนื่องจากคุณไม่ได้ระบุระบบปฏิบัติการของคุณฉันจะถือว่า Linux เป็นดังนี้ นี่คือตัวอย่างเซสชัน
ฉันไม่รู้จักการaclสอนที่ดีจริงๆแต่คุณทำได้แย่กว่าhttp://www.vanemery.com/Linux/ACL/linux-acl.html
โปรดทราบว่าค่าเริ่มต้นaclจะทำงานเหมือน umask ในเครื่อง ตั้งแต่อย่างน้อยใน Linux, umasks ถูกนำไปใช้ทั่วโลกนี่เป็นวิธีเดียวที่ฉันรู้ว่าจะได้รับผลของ umask ในท้องถิ่น ด้วยเหตุผลบางอย่างนี้เป็นคุณสมบัติที่รู้จักกันเล็กน้อย สุทธิเป็นที่ทิ้งกระจุยกระจายกับคนถามเกี่ยวกับการแทนที่ umask ท้องถิ่น aclแต่เกือบจะดูเหมือนไม่มีใครคิดว่าการใช้
นอกจากนี้โปรดทราบว่าคุณต้องติดตั้งพาร์ติชันที่คุณกำลังทำงานด้วยaclการสนับสนุนเช่น
/dev/mapper/debian-acl /mnt/acl        ext3    defaults,acl        0       2
เซสชันดังต่อไปนี้:
/mnt/acl$ mkdir foo
/mnt/acl$ getfacl foo
# file: foo
# owner: faheem
# group: faheem
user::rwx
group::r-x
other::r-x
ตั้งกลุ่มของfooที่จะเป็นstaffและการตั้งค่า ACL ของผู้ใช้และกลุ่มของการfoorwx
/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
ตั้งค่า acls เริ่มต้นของผู้ใช้และกลุ่มrwxเป็นเช่นกัน fooนี้กำหนดสิทธิ์ที่ไฟล์และไดเรกทอรีสืบทอดมาจาก ดังนั้นไฟล์และไดเรกทอรีทั้งหมดที่สร้างขึ้นภายใต้ foo 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::---
ตอนนี้สร้างไฟล์บางอย่างในการfooเป็นผู้ใช้และfaheemjohn
/mnt/acl$ cd foo
/mnt/acl/foo$ touch bar
# switch to user john for this next command.
/mnt/acl/foo$ touch baz
รายการไฟล์ ขอให้สังเกตว่าทั้งไฟล์ที่เป็นของfaheemและไฟล์ที่เป็นเจ้าของโดยถูกสร้างขึ้นด้วยสิทธิ์ของกลุ่มjohnrw
/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