Linux權限管理1——ACL權限

 Linux權限管理——ACL權限

我們已經知道Linux的文件有所有者,所屬組,其他人三種權限,但這是遠遠不夠的,比如說,有一個project,項目管理員將所有項目人員添加到該項目的所屬組中,分配權限770,有一天,臨時來了一個成員,該成員需要先進行學習,然後才能工作,這時我們需要對該成員對project分配讀和可執行的權限,不能將其他人權限設爲5,文件只有一個所屬組,所以對project分配兩個所屬組的方式不成立,顯然此時的權限管理方式無法滿足要求,這時候就用到ACL權限了,所謂的acl權限,可以簡單的理解爲爲某一用戶或某一組分配不屬於所有,所屬組,其他人的額外權限。


1)

acl權限是對文件系統的管理,但它需要文件所在的分區支持acl權限

#查看文件所在分區


dumpe2fs -h 分區

若分區不支持acl權限:

#臨時使分區支持acl權限,重新掛載分區支持acl權限 

mount -o remount,acl 分區

#永久生效,修改配置文件,重啓或重新掛載

vi /etc/fstab


mount -o remount /

注意:/etc/fstab文件是系統啓動時自動檢測掛載分區的識別文件,如果想讓系統啓動時自動掛載某一分區,可手動添加,注意添加格式

 

 

2) 

#設定acl權限

#setfacl 選項 文件名

#-m 設定acl權限

setfacl -m  u:用戶名:權限  文件

setfacl -m  g:組名:權限  文件

#查看acl權限

getfacle 文件名










#刪除acl權限

setfacl -b 文件名 刪除該文件下的所有acl權限

setfacl -x u:用戶名 文件名 刪除指定用戶的acl權限

setfacl -x g:組名 文件名 刪除指定組的acl權限


3

getfacl中我們看到有個mask類權限,稱之爲最大有效權限,就是說我們在給文件賦予acl權限時,最終得到的是賦予的權限與mask權限的“與運算”結果

我們可以修改mask的權限

修改mask

setfacl -m m:權限 文件名

通過對mask權限的設置,可以避免權限賦予過大的問題

4

遞歸acl權限和默認acl權限

遞歸針對已經存在的文件

該目錄下所有的文件都具有與目錄相同的acl權限(注意-R位置)

setfacl -m u:用戶名:權限 -R 目錄

setfacl -m g:組名:權限 -R 目錄

默認針對新添加的文件

該目錄下新添加的文件都具有與目錄相同的acl權限

setfacl -m d:u:用戶名:權限 目錄

setfacl -m d:g:組名:權限 目錄



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章