by Devin Yang

建立於: 5年前 ( 更新: 5年前 )

我想現在的Linux大多支援Access Control List (ACL)。在檔案系統ACL啟用的情況下,
我們可以設定額外的權限給不同的使用者或群組。
這讓我們更加自由的來設定不同使用者的檔案系統權限。

直接來看命令。
下方的u代表了設定share資料夾,給test的使用者有rwx權限。
setfacl -m u:test:rwx share/
換成g,則代表了,設定test的群組對share/資料夾有rwx權限。
setfacl -m g:test:rwx share/
如果要設定目錄下也含子目錄的所有檔案,參數是-R。(遞迴)
合起來輸入就是-Rm。

問題來了,如果這麼設定,全部的檔案都變成有執行的權限。所以如何設定
檔案是沒有x的權限,只有目錄才有x的執行權限(進入目錄的權限)。
非常簡單,我們可以用大寫的X搞定。
例如:
setfacl -Rm u:git:rwX /var/www
這樣就會有漂漂的顏色,而不是一片慘綠了。

另外提一下,我們用getfacl取得額外的檔案資訊。
例如:我用root設定了git使用者,如下權限。
setfacl -Rm u:git:rwX humanity-1.10.4/
使用git使用者查看

在上圖中,大家是否有注意到了,-rw-rw-r--+。在ls -l時,多了一個+
非常顯而易見,就代表了,這個檔案,有額外的ACL權限設定囉。

現在用getfacl images來看看images目錄的使用者(user)權限,是有執行權限的。

如果您喜歡這篇文章,請給我個Like吧? 

 

Tags: linux

Devin Yang

文章內容無法一一說明,如果您有什麼不了解處,歡迎提問哦:)

No Comment

Post your comment

需要登入才可留言!

類似的文章


linux

移除Ubuntu上舊版本用不到的Linux Kernel

這個頁面描述我如何移掉 ubuntu上佔空間的舊版本Linux Kernel。

linux, python, colab

如何從我們的Server透過ssh連線到colab?

介紹我寫的一支bash,用來透過ssh連線到colab vm內。 一行指令,搞定colab OpenSSH Server。

linux

公鑰驗證之多個ssh的組態檔

我們使用ssh公鑰驗證時,通常會在~/.ssh/config加入相關設定。 如果說有些是公司用的或是家裡用的,是否可以使用多個config呢? 其實可以的,我們能git透過Include載入公司共用,有版本控制的config。