国产欧美日韩第一页|日本一二三不卡视频|在线精品小视频,亚洲第一免费播放区,metcn人体亚洲一区,亚洲精品午夜视频

Linux ACL基本概念及典型用法

2017-01-18 17:16:46 15892

ACL 是什么

ACL的全稱(chēng)是 Access Control List (訪(fǎng)問(wèn)控制列表) ,一個(gè)針對文件/目錄的訪(fǎng)問(wèn)控制列表。它在UGO權限管理的基礎上為文件系統提供一個(gè)額外的、更靈活的權限管理機制?它被設計為UNIX文件權限管理的一個(gè)補充。

ACL允許你給任何的用戶(hù)或用戶(hù)組設置任何文件/目錄的訪(fǎng)問(wèn)權限。

ACL有什么用

既然是作為UGO權限管理的補充,ACL自然要有UGO辦不到或者很難辦到的本事,例如:

1.可以針對用戶(hù)來(lái)設置權限

2.可以針對用戶(hù)組來(lái)設置權限

3.子文件/目錄繼承父目錄的權限

檢查是否支持ACL

ACL需要Linux內核和文件系統的配合才能工作,當前我們能見(jiàn)到的大多數Linux發(fā)行版本默認都是支持的。但最好還是能夠先檢查一下:

sudo tune2fs -l /dev/sda1 |grep ?Default mount options:”
Default mount options:                 user_xattr    acl

我們能夠看到默認情況下(Default mount options:)已經(jīng)加入 acl 支持了。

如何設置ACL

我們可以使用setfacl和getfacl命令來(lái)設置或觀(guān)察?件/目錄的acl權限。

setfacl

參數不多,直接列出來(lái)了:

setfacl [-bkRd] [{-m|-x} acl參數] 文件/目錄名
-m :配置后面的 acl 參數給文件/目錄使用,不可與 -x 合用;
-x :刪除后續的 acl 參數,不可與 -m 合用;
-b :移除所有的 ACL 配置參數;
-k :移除默認的 ACL 參數;
-R :遞歸配置 acl;
-d :配置“默認 acl 參數”,只對目錄有效,在該目錄新建的數據會(huì )引用此默認值;

getfacl

getfacl 文件/目錄名

實(shí)例

針對用戶(hù)來(lái)設置權限

先創(chuàng )建一個(gè)測試文件test,然后查看其默認?權限:

touch test
ll test
-rw-r--r--  1 root root        0 May 28 09:04 test
getfacl test
# file: test
# owner: root
# group: root
user::rw-
group::r--
other::r—

給apache用戶(hù)設置讀寫(xiě)執行test文件的權限:

setfacl –m u:apache:rwx test

查看test文件屬性的變化:

ll test
-rw-rwxr--+ 1 root root 0 May 28 09:04 test

權限部分多個(gè)了 “+”, 并且與原來(lái)(644)也不一樣了。

查看ACL權限的變化:

getfacl test
...
user:apache:rwx
...
mask::rwx
...

和設置前相比多了user:apache:rwx和 mask::rwx,此時(shí)用戶(hù)apache已經(jīng)擁有了讀寫(xiě)執行test文件的權限。

針對用戶(hù)組來(lái)設置權限

和針對用戶(hù)的設置幾乎一樣,只是把小寫(xiě)的u換成小寫(xiě)的g就行了。

子文件/目錄繼承父目錄的權限

這是一個(gè)很棒的例子,它能讓我們創(chuàng )建的子文件或者子文件夾繼承父文件夾的權限設置!

mkdir mydir
ll -d mydir
drwxr-xr-x 2 root root 4096 May 28 09:35 mydir
setfacl –m d:u:apache:rwx mydir

注意參數 d 在這里起到了決定性的作用。

查看下屬性的變化:

getfacl mydir
...
default:user::rwx
default:user:apache:rwx
default:group::r-x
default:mask::rwx
default:other::r-x

多了些 default開(kāi)頭的項,在mydir下創(chuàng )建一個(gè)新文件試試:

touch mydir/abc
getfacl mydir/abc
...
user:apache:rwx                 #effective:rw-
group::r-x                      #effective:r--
mask::rw-
...

OK, 看上去還不賴(lài),默認情況下apache用戶(hù)是可以對這個(gè)文件進(jìn)行讀寫(xiě)執行操作的。

這里只是簡(jiǎn)介的介紹了ACL的概念和一些典型的用法,更多的使用方式請參考幫助文檔。


提交成功!非常感謝您的反饋,我們會(huì )繼續努力做到更好!

這條文檔是否有幫助解決問(wèn)題?

非常抱歉未能幫助到您。為了給您提供更好的服務(wù),我們很需要您進(jìn)一步的反饋信息:

在文檔使用中是否遇到以下問(wèn)題:
-->