Câu hỏi này là một phù hợp tốt cho linux acl
. Vì bạn không nêu hệ điều hành của mình, tôi sẽ giả sử Linux trong phần tiếp theo. Đây là một phiên ví dụ.
Tôi không biết về một acl
hướng dẫn thực sự tốt , nhưng bạn có thể làm tồi tệ hơn http://www.vanemery.com/Linux/ACL/linux-acl.html
Lưu ý rằng mặc định acl
hoạt động giống như một ô địa phương. Vì ít nhất là trong Linux, các nhiệm vụ được áp dụng trên toàn cầu, đây là cách duy nhất tôi biết để có được hiệu ứng của một địa phương. Đối với một số lý do này một tính năng ít được biết đến. Mạng lưới tràn ngập những người hỏi về một ghi đè ô địa phương, nhưng hầu như không ai nghĩ đến việc sử dụng acl
.
Cũng lưu ý rằng bạn cần phải gắn kết phân vùng bạn đang làm việc với acl
sự hỗ trợ, ví dụ.
/dev/mapper/debian-acl /mnt/acl ext3 defaults,acl 0 2
Phiên sau:
/mnt/acl$ mkdir foo
/mnt/acl$ getfacl foo
# file: foo
# owner: faheem
# group: faheem
user::rwx
group::r-x
other::r-x
Đặt nhóm foo
thành staff
và đặt acl của nhóm và người dùng foo
thành 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
Đặt acls mặc định của người dùng và nhóm rwx
là tốt. Điều này xác định các quyền mà các tập tin và thư mục kế thừa từ foo
. Vì vậy, tất cả các tệp và thư mục được tạo trong foo sẽ có quyền của nhóm 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::---
Bây giờ tạo một số tệp trong foo
như người dùng faheem
và john
.
/mnt/acl$ cd foo
/mnt/acl/foo$ touch bar
# switch to user john for this next command.
/mnt/acl/foo$ touch baz
Liệt kê các tập tin. Lưu ý rằng cả hai tệp thuộc sở hữu faheem
và các tệp thuộc sở hữu john
được tạo với quyền của nhóm 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