搜尋此網誌
ACL
這裡是紀錄如何在檔案與目錄上面設定ACL的權限
今天在/tmp底下新增一個f1的檔案內容為jackie
[root@Vserver ~]# echo 'jackie' >> /tmp/f1
[root@Vserver ~]# ll /tmp/f1
-rw-r--r--. 1 root root 7 Nov 24 04:21 /tmp/f1
這邊可以看到,對student這個帳號來說是沒辦法將資料寫進f1的
實際操作一次
[root@localhost ~]# su - student -c 'echo 'append' >> /tmp/f1'
-bash: /tmp/f1: Permission denied
[root@localhost ~]# setfacl -m u:student:rw /tmp/f1
設定student帳號有讀寫的權限
[root@localhost ~]# getfacl /tmp/f1
getfacl: Removing leading '/' from absolute path names
# file: tmp/f1
# owner: root
# group: root
user::rw-
user:student:rw-
group::r--
mask::rw-
other::r--
[root@localhost ~]# su - student -c 'echo 'append' >> /tmp/f1'
[root@localhost ~]# cat /tmp/f1
jackie
append
另外有個mask::rw <--這邊解釋為最低底線,假設我們把這行改成只有r的權限,這樣student帳號就算有rw權限也會變成只有r的權限
[root@localhost ~]# setfacl -m mask::r /tmp/f1
[root@localhost ~]# getfacl /tmp/f1
getfacl: Removing leading '/' from absolute path names
# file: tmp/f1
# owner: root
# group: root
user::rw-
user:student:rw- #effective:r--
group::r--
mask::r--
other::r--
這邊可以看到user:student:rw 旁邊多了一行#effective:r--
再來就是Default ACL 語法為 setfacl -m d:u:student:rw /acltest
這樣這個目錄底下之後新增的檔案,都會套用,就不用每個檔案設定了
------------------------------------------------------------------------------------------------------------------
先分割一個磁碟區,假設這邊分割出來是 /dev/sda6
tune2fs -l /dev/sda6 | grep --color -i 'mount'
可以找到default mount 的選項
tune2fs -o user_xattr,acl /dev/sda6 即可設定完成
可以man tune2fs