導航:首頁 > 程序命令 > 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命令相關的資料

熱點內容
ug如何啟動伺服器 瀏覽:444
csgo防抖動命令 瀏覽:960
如何弄到手機app頁面的源碼 瀏覽:441
androidwindows7破解版 瀏覽:363
解壓視頻動畫怎麼拍 瀏覽:748
連漲啟動源碼 瀏覽:163
小奔運動app網路異常怎麼回事 瀏覽:449
php開啟壓縮 瀏覽:305
伺服器主機如何設置啟動 瀏覽:284
linux配置網路命令 瀏覽:776
一張照片怎麼製作視頻app 瀏覽:910
pythonweb和php 瀏覽:978
電腦伺服器地址ip地址 瀏覽:823
對矩陣壓縮是為了 瀏覽:912
setfacl命令 瀏覽:175
linux子系統中斷 瀏覽:342
linux查看進程ps 瀏覽:226
知識庫系統php 瀏覽:625
小波變換壓縮圖像python 瀏覽:153
阿里巴巴程序員怎麼月入百萬 瀏覽:175