導航:首頁 > 程序命令 > setfacl命令

setfacl命令

發布時間:2025-01-31 21:31:10

1. Linux常用命令之--ACL(getfacl,setfacl)

ACL可以為某個文件單獨設置該文件具體的某用戶或組的許可權,不走三類許可權位
默認 ACL 許可權的作用是:如果給父目錄設定了默認 ACL 許可權,那麼父目錄中所有新建的子文件都會繼承父目錄的 ACL 許可權。但是要加 -R
※ACL許可權更高,會先查看ACL再看傳統的許可權。如果沒有ACL才會走三類許可權位
※如果一個用戶在ACL的user中一個許可權,他所在的ACL的group中是另外一個許可權,會按照user許可權來

• getfacl <文件名>
獲取文件的訪問控制信息
• setfacl設置文件的acl
-m修改文件的acl
-x取消用戶或組對文件的許可權
語法:
• setfacl –m u:用戶名:許可權 <文件名> 設置某用戶名的訪問許可權
• setfacl –m g:組名:許可權 <文件名> 設置某個組的訪問許可權

例1: 想要實現這個↓需求
user1:rwx,user2:rw-,user3:r-x,user4:r--,user5:--x,user6:-w-,
傳統許可權無法滿足上述要求,這時就可以用↓命令進行許可權添加

建一個名字為1的文件,查看文件1的許可權↓

設置許可權

修改後看文件1的許可權↓

例2:

有組A(groupA)和組B(groupB)兩個組,文件1所屬於A組,如果通過三類許可權位設置文件許可權,其他用戶沒有任何許可權,而B組為其他用戶,因此無法對文件1進行任何操作。這時可以通過ACL給組B設置許可權:
setfacl -m g:groupB:r 1 B組里的所有成員就有讀許可權了

• setfacl –x u:用戶名 <文件名> //取消某用戶的訪問許可權
• setfacl –x g:組名 <文件名> //取消某個組的訪問許可權
❉↑這時是將這個user或group的ACL整個刪除,如果只是想刪除某一個許可權,還是需要setfacl -m來進行重新設置

例3:

setfacl -m d:u:qin:rwx /caiwubu
d:default,即將caiwubu這個文件夾的許可權對qin開放rwx許可權,getfacl /caiwubu的時候會發現有一條default:user:qin:rwx。即在/caiwubu文件夾里 新建 的文件夾以及文件對qin的許可權都為rwx,但是之前已經存在的文件及文件夾的許可權在修改ACL許可權之前是什麼現在還是什麼
setfacl -x u:qin /caiwubu/zhangben 取消qin這個用戶對該文件的acl許可權
取消qin這個用戶對該文件的acl許可權
❀如果這個文件給兩個及兩個以上的用戶設定了ACL,取消其中一個用戶的許可權可以用這個命令。但是如果這個文件只給一個用戶設定了ACL且想刪除ACL,或者想把該文件里所有的ACL許可權都刪除的話,需要用↓的命令
setfacl -b /caiwubu/zhangben

關於許可權列的.和+:
ls -lZ :
drwxrwxrwt. root root system_u:object_r:tmp_t:s0 tmp
dr-xr-xr-x root root system_u:object_r:boot_t:s0 boot
drwxrwxr-x+ root root unconfined_u:object_r:admin_home_t:s0 DCGH-DIR
Linux許可權列的點不是無意義字元
・在開啟SELinux的情況下創建的目錄和文件有這個點,許可權列有這個點說明該目錄或文件設置了SELinux相關的許可權①
・在禁用SELinux許可權之後,在之前開啟SELinux許可權時創建的文件或目錄保持原來的許可權不便,許可權列的點依然顯示,而新創建的目錄或文件在許可權列無這個點顯示②
・許可權列中最後一個位置如果是加號,說明這個目錄或文件已經設置了ACL許可權相關的內容。如果加號存在,則已經有點的目錄或文件中的點的顯示會被覆蓋,但原來的SELinux屬性保持不變

2. 9.9 Linux ACL許可權設置(setfacl和getfacl)

Linux ACL許可權設置主要通過setfacl和getfacl命令進行。getfacl命令用於查看文件或目錄的ACL許可權信息,setfacl命令用於設定或修改許可權。它們在文件和目錄許可權管理中扮演重要角色。

使用setfacl命令可以給用戶或群組添加ACL許可權,通過命令格式了解其具體操作。例如,添加用戶st的r-x許可權。

在實際應用中,ACL許可權可以針對特定用戶或群組進行精細化控制,無需為特定用戶設定身份信息。同時,通過默認ACL許可權功能,可以在創建文件或目錄時自動繼承父目錄的許可權設置,提高管理效率。默認ACL許可權只適用於目錄,遞歸ACL許可權則對目錄下的所有子文件和子目錄生效。

通過setfacl命令,可以靈活地設定、修改或刪除ACL許可權。如刪除指定用戶的許可權,刪除所有與特定文件或目錄相關的ACL許可權。這些操作直接通過命令即可實現,無需額外步驟。

總之,Linux ACL許可權設置通過setfacl和getfacl命令提供了靈活且強大的許可權管理能力。這些命令支持添加、修改、刪除各種ACL許可權,滿足不同的許可權需求,提高系統安全性與管理效率。

閱讀全文

與setfacl命令相關的資料

熱點內容
python中判斷數據類型 瀏覽:560
pythondjango留言板 瀏覽:86
視頻演算法技術 瀏覽:174
阿里雲伺服器組策略 瀏覽:519
linux埠大全 瀏覽:934
加密區的箍筋數 瀏覽:540
單片機for語句延時 瀏覽:652
java初級程序員的出路 瀏覽:71
哪個app軟體看幽默猜生肖 瀏覽:495
日照加密人字形網帶 瀏覽:710
python下如何執行shell 瀏覽:62
文件夾多個文件一起列印 瀏覽:529
怎麼將下載好的視頻解壓 瀏覽:266
電信電視app哪個好 瀏覽:691
業主信息加密處理公示 瀏覽:286
命令與征服現代地圖 瀏覽:315
拼圖軟體不壓縮圖片 瀏覽:825
為什麼使用雲伺服器地址 瀏覽:409
如何用python爬蟲搶票 瀏覽:946
中國氣候指標源碼 瀏覽:970