Có vẻ như bạn đang mô tả chức năng bit setgid trong đó khi một thư mục được thiết lập, sẽ buộc bất kỳ tệp mới nào được tạo trong đó phải đặt nhóm của chúng vào cùng một nhóm được đặt trên thư mục mẹ.
Thí dụ
$ whoami
saml
$ groups
saml wheel wireshark
thiết lập một thư mục với perms + quyền sở hữu
$ sudo mkdir --mode=u+rwx,g+rs,g-w,o-rwx somedir
$ sudo chown saml.apache somedir
$ ll -d somedir/
drwxr-s---. 2 saml apache 4096 Feb 17 20:10 somedir/
chạm vào một tập tin như saml trong thư mục này
$ whoami
saml
$ touch somedir/afile
$ ll somedir/afile
-rw-rw-r--. 1 saml apache 0 Feb 17 20:11 somedir/afile
Điều này sẽ cung cấp cho bạn khoảng những gì nó nghe như bạn muốn. Nếu bạn thực sự muốn chính xác những gì bạn đã mô tả, tôi nghĩ bạn sẽ cần phải sử dụng chức năng Danh sách điều khiển truy cập để có được điều đó (ACL).
Nếu bạn muốn có thêm một chút quyền kiểm soát đối với các quyền trên các tệp được tạo trong thư mục somedir
, bạn có thể thêm quy tắc ACL sau để đặt các quyền mặc định như vậy.
trước
$ ll -d somedir
drwxr-s---. 2 saml apache 4096 Feb 17 20:46 somedir
đặt quyền
$ sudo setfacl -Rdm g:apache:rx somedir
$ ll -d somedir/
drwxr-s---+ 2 saml apache 4096 Feb 17 20:46 somedir/
Lưu ý +
ở cuối, điều đó có nghĩa là thư mục này có ACL được áp dụng cho nó.
$ getfacl somedir
# file: somedir
# owner: saml
# group: apache
# flags: -s-
user::rwx
group::r-x
other::---
default:user::rwx
default:group::r-x
default:group:apache:r-x
default:mask::r-x
default:other::---
sau
$ touch somedir/afile
$ ll somedir/afile
-rw-r-----+ 1 saml apache 0 Feb 17 21:27 somedir/afile
$
$ getfacl somedir/afile
# file: somedir/afile
# owner: saml
# group: apache
user::rw-
group::r-x #effective:r--
group:apache:r-x #effective:r--
mask::r--
other::---
Lưu ý với các quyền mặc định ( setfacl -Rdm
) được đặt để các quyền là ( r-x
) theo mặc định ( g:apache:rx
). Điều này buộc bất kỳ tập tin mới chỉ r
kích hoạt bit của họ .