ACL(Access Control List)、特殊權限

一、特殊權限

s:suid,set uid用戶在執行此程序時,其進程的屬主不再是發起者本人,而是此程序的屬主

s:屬主原有執行權限

S:屬主無執行權限

chmod u+|-s

chmod 4644


s:sgid,set gid 用戶在執行此程序時,其進程的屬主不再是運行者所屬的基本組,而是此程序的屬組

s:屬組原有執行權限

S:屬組無執行權限

chmod g+|-s

chmod 244


t:sticky,粘貼位,附加other的權限上

t:其它組原有執行權限

T:其它組無執行權限

chmod o+|-t

chmod 1644


ugt:

  000:0

  001:1

  010:2

  100:4

  011:3

  101:5

  110:6

  111:7


二、ACL

用戶訪問文件鑑權順序:

1、用戶是否爲文件屬主?

2、用戶是否有特定的訪問控制條目?

3、用戶是否屬於文件屬組?

4、用戶所屬的組是否有特定的訪問控制條目?

5、其它。


查看ACL:

getfacl /path/to/somewhere


設置ACL:

setfacl –m u:USERNAME:MODE /path/to/somewhere

setfacl –m g:GROUPNAME:MODE /path/to/somewhere

setfacl –R –m u:hadoop:rw /tmp/test #遞歸設置目錄ACL

233448378.jpg

擴展屬性(lsattr 查看擴展屬性):

設置ACL權限後,權限位後會有一個“+”號,如果SELinux啓用狀態下建立文件時會是“.”號,兩種情況同時存在時,只顯示“+”號。


這裏用戶組權限位的權限,並不是組權限,而是mask值。


取消設置ACL

setfacl –x u:USERNAME /path/to/somewhere

setfacl –x g:GROUPNAME /path/to/somewhere


額外掛載的文件系統默認不支持acl,如果要支持:

方法1:

mount -o acl DEVICE MOUNT_POINT

永久有效:需要編輯/etc/fstab,在掛載選項後附加acl選項;


方法2:(設定分區的默認掛載選項中有acl,則掛載時無須再指定acl;)

tune2fs -o acl PARTITION


取消此默認掛載選項:

tune2fs -o ^acl PARTITION

[root@server1 tmp]# tune2fs -o acl /dev/sdc1

tune2fs 1.41.12 (17-May-2010)

[root@server1 tmp]#

[root@server1 tmp]# tune2fs -l /dev/sdc1|grep "Default mount options"

Default mount options: acl


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