第 8章. 存取控制清單(ACLs)

檔案與目錄都含有關於檔案擁有者、檔案相關的群組以及系統上所有其他使用者等的權限 設定,然而這些權限設定仍然有其限制,例如無法為不同的使用者設定不同的權限設定, 因此便有人實作了 『存取控制清單』 (ACLs)。

Red Hat Enterprise Linux 3 的核心為 ext3 檔案系統與 NFS 匯出的檔案系統提供 ACL 支援,ACLs 也可使用在經由 samba 存取的 ext3 檔案系統上。

隨著核心的支援,仍需要 acl 套件才能實作 ACLs。 它含有使用 來新增、修改、移除以及擷取 ACL 資訊的工具程式。

cpmv 指令可以複製或移動任何與檔案以及 目錄相關的 ACLs。

8.1. 掛載檔案系統

在您於檔案或目錄使用 ACLs 之前,必須以含有 ACL 支援的選項來掛載檔案或目錄的 分割區,假如它是一個本機的 ext3 檔案系統,可以使用下列指令來掛載它:

mount -t ext3 -o acl <device-name> <partition>

例如:

mount -t ext3 -o acl /dev/hdb3 /work

或者,假如該分割區有列出在 /etc/fstab 檔案中,可以在該 分割區的紀錄項加上 acl 選項:

LABEL=/work      /work       ext3    acl        1 2

假如這個 ext3 檔案系統是透過 samba 存取的,而且已經啟用了 ACLs 的支援,由於 已經被編譯含有 --with-acl-support 選項,所以 ACLs 將可以被 辨識。 當您存取或掛載一個 samba 共享時,不需要任何特殊的旗號(flag)。

8.1.1. NFS

預設情況下,假如檔案系統被支援 ACLs 的一部 NFS 伺服器所匯出,而且 NFS 用戶端可以讀取 ACLs,用戶端 系統將可利用 ACLs。

當您設定伺服器時,如要停用 NFS 共享資源的 ACLs 特色,請在 /etc/exports 檔案中 加入 no_acl 選項。 如要在用戶端掛載時停用 NFS 共享的 ACLs 特色, 請使用命令列或 /etc/fstab 檔案以 no_acl 選項 來掛載它。