文件權限在Linux的學習中是一個比較重要的部分。文件的權限分為”r”、”w”、”x”,三個權限。本次報告将圍繞這三個權限來闡述三個權限的具體功能。
在開始闡述之前,先進行一個實驗。以這個實驗來具體展示三個權限的具體作用。
先用root身份登錄系統,然後在/tmp目錄下建立一個testing目錄。更改該目錄的權限為744且目錄的擁有者為root。再在目錄下建立一個空文件testing。
可以看出,現在的testing目錄和目錄下的testing文件都是屬于root且權限分别為744和600。這樣的權限規定,一般的用戶對于testing目錄隻具有”r”權限,不具有其他權限。
然後切換到一般用戶,在一般用戶的狀态下,執行查詢文件及目錄命令。
同樣的,訪問testing目錄也被告知無權限訪問。這樣可以看出,”r”權限并不能賦予一般用戶訪問的權限。但是”r”權限是“讀取”,為什麼不能“讀取”這個目錄呢?
在Linux中,三種權限的解釋分别如下:
r(Read,讀取):對文件而言,具有讀取文件内容的權限;對目錄來說,具有浏覽目錄的權
w(Write,寫入):對文件而言,具有新增、修改文件内容的權限;對目錄來說,具有删除、移動目錄内文件的權限。
x(eXecute,執行):對文件而言,具有執行文件的權限;對目錄了來說該用戶具有進入目錄的權限。
在Linux中”r”權限對于一個目錄來說,僅代表這這個用戶可以讀取器目錄結構列表,簡單點說就是可以浏覽當前目錄。因為我們在實驗的過程中當前的目錄是/tmp所以我們可以查閱到/tmp目錄下有的文件。但是要進入下一個目錄即/tmp/testing中,用戶需要的不是”r”權限,而是”x”權限。
read為讀權限,而excute為執行權限。讀權限意味着該文件僅能被讀取,而不能執行,也就是說,僅能寫入内存,而不能建立進程。而exucute則不管該文件是否為可執行文件,都有創建進程的權限,當然它本身有沒有這個能力就不在考慮範圍之内了。
對于”x”權限來說,隻要這個文件具有了”x”權限,就代表着這個文件可以被寫入内存并且建立相關的進程。但是”r”權限卻不同,對于隻擁有”r”權限的文件或者目錄來說,用戶隻能将其讀入内存并且顯示出來,并不能對這個文件或者目錄進行相關的操作。cd這個命令就是基于”x”命令,而不是”r”命令。實驗中,ls無法顯示testing目錄及其目錄下文件的權限就是因為沒有了”x”權限。
“w”權限很好解釋但是非常的強大。對于擁有了這個權限的用戶來說,它就代表着用戶可以進行更改目錄結構列表的權限、新建新的文件與目錄、删除已存在的文件與目錄(無論該文件的其他權限如何)、重命名和轉移該文件和目錄。相比較于”r”權限的隻能讀取并且展示來說,”w”就可以更改你所想更改的一切東西。
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!