首頁  >  文章  >  運維  >  linux ACL有什麼用

linux ACL有什麼用

青灯夜游
青灯夜游原創
2023-02-27 17:38:322405瀏覽

ACL是指存取控制列表,是指一個針對檔案/目錄的存取控制列表,ACL用來設定使用者針對檔案的權限。 ACL的作用:1、可以針對使用者來設定權限;2、可以針對使用者群組來設定權限;3、子檔案/目錄繼承父目錄的權限。

linux ACL有什麼用

本教學操作環境:linux7.3系統、Dell G3電腦。

ACL 是什麼


ACL的全名是Access Control List (存取控制清單) ,一個針對檔案/目錄的訪問控制列表。它在UGO權限管理的基礎上為檔案系統提供一個額外的、更靈活的權限管理機制。它被設計為UNIX檔案權限管理的一個補充。

ACL允許你為任何的使用者或使用者群組設定任何檔案/目錄的存取權限。

在 Linux 系統中, ACL 可實現對單一使用者設定存取檔案的權限。也可以這麼說,設定檔案的存取權限,除了用傳統方式(3 種身分搭配 3 種權限),還可以使用 ACL 來設定。

ACL有什麼用

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

  • 可以針對使用者來設定權限

  • 可以針對使用者群組來設定權限

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

檢查是否支援ACL

ACL需要Linux核心和檔案系統的配合才能運作,目前我們能見到的大多數Linux發行版本預設都是支援的。但最好還是能夠先檢查一下:

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

我們能夠看到預設情況下(Default mount options:)已經加入 acl 支援了。

ACL針對普通檔案的設定:


#setfacl指令(set設置,f檔案file,acl存取控制清單)

新增檔案的ACL

setfacl -m u:zx:--- 1243.txt (zx用户对1243.txt文件没有任何权限)
setfacl -m g:zx:--- 1243.txt (zx组对1243.txt文件没有任何权限)

-m參數表示modify修改,u表示針對user用戶設置,zx用戶名稱,---表示設定的權限訊息

查看檔案的ACL權限

getfacl 1243.txt  (查看文件的ACL权限信息)

linux ACL有什麼用

linux ACL有什麼用

刪除檔案的ACL權限

setfacl -x u:zx  1243.txt

在設定了ACL權限後,透過查看檔案資訊可以看到檔案權限資訊列有個「 」號

linux ACL有什麼用

 移除檔案的ACL權限資訊:

setfacl -b 1243.txt  (移除1342.txt的ACL權限資訊)

linux ACL有什麼用

ACL針對目錄檔案的設定


#對目錄檔案設定ACL,是為了對目錄檔案裡面,建立的檔案進行權限控制.

mask:表示使用者的最大權限範圍

setfacl -m d:u:zx:r-- 123

d:default(設定預設)

用root在根目錄下建立123/bbb目錄檔案並設定使用者zx有讀行權限:

linux ACL有什麼用

linux ACL有什麼用

# 可以看到後續的新123檔案都繼承了先前的bbbACL權限設定zx只有讀取權限

linux ACL有什麼用

相關推薦:《Linux影片教學

以上是linux ACL有什麼用的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn