Linux中權限控制ACL命令


很多小伙伴覺得,Linux的權限管理命令不就是chown和chmod命令嗎,什么時候有了ACL了?

什么是ACL
ACL是訪問控制列表(Access Control List)的縮寫,主要的目的是在提供傳統的owner,group,others的read,write,execute權限之外的部分細節權限設定。ACL可以針對單一使用者,單一文件或目錄來進行r,w,x的權限規范,設想場景:如果想讓A用戶訪問只有B權限的用戶目錄,使用chmod或者chown非常麻煩,但對於這樣特殊狀況ACL就非常合適。

ACL的命令
setfacl命令是用來在命令行里設置ACL的,getfacl主要用來查看ACL的設置。

#setfacl主要參數
-m :設定后續的acl參數給檔案使用,不可與-x合用;# mask:有效權限 -x :刪除后續的acl參數,不可與-m合用; -b :移除『所有的』ACL設定參數; -k :移除『預設的』ACL參數,關於所謂的『預設』參數於后續范例中介紹; -R :遞回設定ACL,亦即包括次目錄都會被設定起來; -d :設定『預設ACL參數』的意思!只對目錄有效,在該目錄新建的資料會引用此預設值#為目錄添加默認的ACL權限,此目錄下創建目錄和文件都會繼承此權限信息!

實例說明
setfacl

#設定fsdeploy對webservice有rwx權限
setfacl -m u:fsdeploy:rwx /home/webservice

#設定fsdeploy對testdirectory目錄下所有文件有RWX權限
setfacl -R -m u:fsdeploy:rwx /home/webservice

#去掉fsdeploy對webservice的x權限
setfacl -x u:fsdeploy /home/webservice   

#去掉所有ACL權限
setfacl -b

#為webservice目錄添加默認的ACL權限,此目錄下創建目錄和文件,fsdeploy都有rwx權限
setfacl -d -m u:fsdeploy:rwx /home/webservice

getfacl


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM