Linux 檔案權限
在深入了解之前,先來理解一下檔案權限的基本資訊。 【推薦:Linux影片教學】
首先建立一個資訊的檔案
>$ touch new_file >$ ll new_file >$ -rw-r--r-- 1 root root 0 4月 23 22:59 new_file
檔案new_file
擁有下面三組權限:
#rw- : 檔案的屬主,登陸使用者的權限r w 分別是讀寫
r-- : 檔案屬主的所屬群組的權限r 讀
r--: 其他使用者的權限r 讀
當然還有一個x 可執行權限這裡沒有,可以透過chmod 指令來增加。這個後面再說。我們先來說說檔案權限的由來,touch 指令之後的預設權限是如何來的。要知道首先要知道有 umask 的存在。透過 umask 指令可以獲得預設值。這個值很有用。
>$ umask >$ 0022 // 这是我机器上面的值
要了解這個 umask 的是如何運作的,首先要理解一下八進位模式的安全性設定。八進位模式的安全設定先取得這三個 rwx 權限的值,然後將其轉換為三位二進位值,用一個八進位值來表示。在這個二進位表示中,每個位置代表一個二進位位元。例如唯一讀取權限 r-- 轉換成二進位就是 100, 那麼代表的八進位就是 4。
如下表表示的這樣:
當了解對應權限以及八進位值之後,看看上面的 new_file 擁有權限是 644。那麼這裡有點困惑了,這個數值是如何得來的呢。 umask 的 0022 有什麼意義呢?其實這個值只是個掩碼。
他會屏蔽掉不像授予該安全等級的權限。對檔案來說,全權限是 666,減去 umask 的值就是新建立檔案的權限。 644 正是我們所期望的那樣,預設屏蔽了檔案所屬群組和其他使用者 w 權限。這裡說明一下資料夾的全權限是 777。如果你想屏蔽更多的權限,可以修改 umask 的值。
>$ umask 026
以上是詳解 Linux 檔案權限的詳細內容。更多資訊請關注PHP中文網其他相關文章!