Tôi đang làm việc trong phòng thí nghiệm nơi chúng tôi đang chạy Linux (Debian và Ubuntu). Tên người dùng và tên nhóm được xử lý bởi NIS và yp. Chúng tôi có một số người dùng phổ biến mà mọi người đều có quyền truy cập vào đó chạy thử nghiệm và sau đó chúng tôi đều có người dùng riêng của mình ngoài ra còn có một nhóm chung mà tất cả chúng tôi đều là thành viên.Cách đặt umask rộng của hệ thống?
Làm thế nào tôi có thể thực hiện sao cho tất cả các tệp và thư mục trên ổ đĩa chia sẻ /home/
(NFS) được đọc/ghi (/ thực thi) bởi người dùng/nhóm? Về cơ bản những gì tôi muốn là
chmod -R 664 /home
chgrp -R commongroup /home
hoặc tương đương umask 0002
.
Nhưng việc chạy các lệnh trên chỉ sửa các tệp hiện tại trong các thư mục và umask chỉ hoạt động đối với người dùng đơn lẻ và phải được chạy mỗi lần người dùng đăng nhập tức là. trong tập tin .bashrc
(và điều này sẽ làm việc cho các chế độ thay đổi thông qua gnome?). Có một lệnh hoặc thiết lập rộng của hệ thống mà tôi có thể sử dụng để đảm bảo rằng nhóm commongroup của chúng tôi có quyền ghi vào các tệp phổ biến không?
tôi tin rằng bạn có thể sử dụng 'setfacl' đệ quy set (và duy trì) thiết lập quyền truy cập vào một thư mục. http://linuxcommand.org/man_pages/setfacl1.html – tMC
Bạn * không * muốn 'chmod -R 644/home': điều này sẽ loại bỏ bit eXecute khỏi các thư mục, khiến chúng không thể tìm kiếm được. – ephemient
Theo dõi nhận xét của tMC: Nếu bạn muốn điều này trên các thư mục cụ thể (và tùy chọn subdirs) và không ràng buộc nó với tất cả (!) Tập tin và thư mục thuộc về một người dùng cụ thể, sau đó sử dụng ACLs. Dưới đây là [câu trả lời hay] (http://stackoverflow.com/a/6550059/923794) cho một câu hỏi tương tự – cfi