CentOS 7 使用 ACL 設置文件權限

Linux  系統標準的 ugo/rwx 集合並不容許爲不一樣的用戶配置不一樣的權限,因此 ACL 便被引入了進來,爲的是爲文件和目錄定義更加詳細的訪問權限,而不單單是這些特別指定的特定權限。less

ACL 能夠爲每一個用戶,每一個組或不在文件所屬組中的用戶配置相應的權限。ACL 可以使用 setfacl 來設置(和移除),可相應地使用 -m 或 -x 選項。測試

 

例如,建立一個名爲 aliyun 的組,並將用戶 uread 和 uwrite 加入該組:spa

groupadd aliyuncode

useradd -G aliyun -M uread -p ureadregexp

useradd -G aliyun -M uwrite -p uwriteblog

blob.png

 

 

在 /alidata 共有5個 txt 文件,只能 root 用戶進行修改,其餘用戶只讀。ip

blob.png

uread 用戶嘗試修改文件,提示沒有權限get

blob.png

 

 

使用 setfacl 修改權限,使 aliyun 組對 alidata 下 1.txt 文件可讀寫。string

 

1. 修改前先查看一下1.txt 文件權限it

getfacl /alidata/1.txt

blob.png

 

2. 使用以下指令進行配置:

setfacl -m g:aliyun:rw /alidata/1.txt

 

3. 修改後權限 aliyun 組對1.txt 文件有寫權限:

blob.png

 

4. 測試添加的權限,uread 和 uwrite 均可以讀寫 1.txt

blob.png

blob.png

 

5. 去掉 uread 的寫權限

setfacl -m u:uread:r /alidata/1.txt

blob.png

 

6. 測試 uread 已經不能修改文件了

blob.png

 

 

7. 去除權限 1.txt  的權限

setfacl -x u:uread /alidata/1.txt

blob.png

 

 

setfacl -x g:aliyun /alidata/1.txt

blob.png

相關文章
相關標籤/搜索