linux ACL有什么用

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視頻教程

以上就是

? 版權聲明
THE END
喜歡就支持一下吧
點贊10 分享