一、在/testdir/dir裏創建的新文件自動屬於g1組,組g2的成員如:alice能對這些新文件有讀寫權限,組g3的成員如:tom只能對新文件有讀權限,其它用戶(不屬於g1,g2,g3)不能訪問這個文件夾。
步驟:
1、首先在testdir目錄下創建一個dir目錄,同時創建組g1、g2、g3和用戶alice、tom,在創建的時候就爲兩個用戶設定組
2、在上張圖片最後的chmod g+s dir
命令是設定目錄的SGID權限,這樣在dir目錄下創建的新文件的組就和dir目錄的組相同了
之後我們chgrp g1 dir
命令是將dir的組設定爲g1
之後再對組g2和g3進行權限的設定:
setfacl -R -m g:g2:rw- dir :-R起到的作用是遞歸,就是在目錄中創建的新文件同樣適用這條命令,該命令的意思是對於g2組中的用戶可以執行讀寫操作,但不能執行
setfacl -R -m g:g3:r-- dir :命令是對於組g3中的用戶,可以對目錄中的文件進行讀操作,但不能寫和執行
setfacl -m g:g2:rwx dir :使g2組中的用戶可以對該目錄進行訪問
setfacl -m g:g3:r-x dir :使g3組中的用戶可以對該目錄進行訪問
同時使用chmod 660 dir
對dir目錄進行改變權限,使其他用戶不能進行訪問該目錄
3、在目錄中創建新文件
4、我們可以切換到alice用戶下,使用getfacl dir
查看權限
5、進入目錄中查看alice用戶對於文件的權限,可以看到是不能夠進行執行,可以讀寫操作
6、進入到tom用戶下查看權限
7、tom用戶不能夠寫和執行,試驗一下,“顯示權限不夠”,所以我們成功了
二、備份/testdir/dir裏所有文件的ACL權限到/root/acl.txt中,清除/testdir/dir中所有ACL權限,最後還原ACL權限
1、要備份所有文件的acl權限到acl.txt文件中,命令:getfacl -R dir > acl.txt
然後我們可以看一下文件中的內容
2、我們刪除所有文件中的配置,命令:setfacl -R -b dir/
,然後再看一下目錄中文件的acl權限發現沒有了
3、然後我們恢復,命令:setfacl --restore acl.txt
然後再看一下目錄中文件的acl權限,發現現在我們又可以看到了