- POSIX是protable Operating System Interface的縮寫,含義是移植操作系統接口。POSIX ACL權限在linux的內核2.6版之後就正式支持了,一般的文件系統ext2,ext3,JFS等都支持POSIX ACL。
- POSIX ACL仍然使用傳統權限中的讀寫、執行作為管理的核心,不同的是可以為文件增加多個用戶或組的權限細則 。為文件增加acl權限可以使用setfacl命令,而getfacl命令是取得文件的posix ACL的權限清冊。
- ACL權限管理命令setfacl
- setfacl命令主要用於增加、刪除acl權限。與傳統文件權限管理的命令一樣,只有root用戶和文件屬主才能畢setfacl命令。
- 命令格式
- setfacl [option] 權限表達式 文件名
- 常用的option
- b:刪除所有擴展ACL權限
- k:刪除default的ACL權限
- d:設定default的ACL權限
- R:遞迴的設置目錄及目錄中的所有文件
- m:修改、增加已有的ACL權限
- 設定acl權限時的權限表達式與chmod的權限表達式是不同的。其ACL的權限表達式基本格式
- [對象類型]:[對象]:[權限列表]
- 對象類型:可以使用的對象類型有4種。
- u:使用者/用戶
- g:群組
- m:表示ACL權限的安全值
- o:其他用戶
- 對象:當然就是用戶或組的名稱
- 權限:以w,r,x的組合
- 如果一條指令中要使用多個權限表達式,可以使用","將這些權限表達式分隔開。
- 範例:
- setfacl -m u:canred:rw a.txt
- 設定用戶canred 可讀可寫 a.txt的文件
- getfacl指令用來查看acl權限。
- 使用getfacl命令查看文件的acl權限時,通常不需要使用任何選項,直接將要查看的文件作為其參數即可
- 範例:
- getfacl a.txt
- 文件系統可能default不支持acl,可以通過重新掛載的方式,讓這些文件系統支持acl,命令為mount -o remonut,acl /dev/sda3。
- ACL權限列表中還有一個特殊的條目,其對象類型為mask,其主要作用是限制ACL條目的最大權限,當設置的acl權限超過權限上限時,超過的權限將會被系統屏蔽
- setfacl -m m::r,g:admin:rwx aFolder
- 刪除acl權限
- setfacl -b aFolder
- 遞迴的增加ACL權限
- setfacl -Rm u:canred:rw,g:admin:rw test
- 預設ACL權限
- setfacl -dm u:canred:rw,g:admin:rw file
- 上面的命令為目錄設置了預設的acl權限,在目錄中建立的新文件將會自動繼承預設的acl權限。
- 刪除預設acl權限
- setfacl -k file
2013年3月23日 星期六
POSIX ACL權限系統及其管理命令
訂閱:
張貼留言 (Atom)
沒有留言:
張貼留言