Permissions

Linux 中的跨組文件權限

  • November 1, 2011

我有 2 個使用者:Alice 和 Bob 以及 2 個組:管理和人員。Alice 有主要組管理,次要組人員和 Alice。Bob 有主要組 Personnel 和次要組 Bob。

現在他們都需要對 /var/svn/new-project/ 中的本地 Subversion 儲存庫進行讀/寫訪問。問題是當 Alice 送出到儲存庫時,Bob 不能再送出了,因為他不在管理組中,這是 Alice 的主要組。

**我的問題:**如何在不弄亂權限的情況下啟用對儲存庫的讀取和寫入,同時將它們保存在單獨的主組中,而不將 repo dir 更改為 777,並且不執行每分鐘修復權限的 cronjob?

您可能希望在目錄上啟用 setgid 位並將目錄的組設置為公共組(在本例中為 Personnel)。目錄上的 setuid/setgid 強制在其下創建的文件被賦予該目錄的所有者/組。

使用 ACL(訪問控制列表)。文件在這裡:http ://docs.redhat.com/docs/en-US/Red_Hat_Enterprise_Linux/6/html/Storage_Administration_Guide/ch-acls.html

您的設置範例:

setfacl --recursive -m u:Alice:rwx /var/svn/new-project/
setfacl --recursive -m u:Bob:rwx /var/svn/new-project/ 

引用自:https://serverfault.com/questions/326712