Linux文件屬性及權限


原創作品,轉載請注明出處:https://www.cnblogs.com/shrimp-can/p/10039288.html

在Linux中,一個十分重要的內容就是文件權限。

一、文件存取訪問身份

Linux的優秀之處在於她的多用戶多任務環境,為了方便文件的管理,有三種文件存取訪問身份,分別是:用戶、用戶組、其他

 

二、文件屬性

我們在用ls列舉出當前工作目錄下的文件時,顯示的只是文件或目錄名,要想顯示屬性,使用ls -l,要列舉出隱藏文件,使用ls -al。

下圖是我列舉出的桌面下的部分文件及其屬性的顯示。

第一列為10個字符,代表這個文件的類型和權限。在下面會重點介紹。

第二列是一個數字,表示有多少文件名鏈接到此節點。(Linux的目錄樹是使用文件名來記錄的)

第三列表示這個文件的所有者賬號。

第四列表示這個文件的所屬組賬號。

第五列的數字代表這個文件的大小,單位是Byte。

第六列是這個文件的創建日期或者最近修改日期。

最后列是文件名,如果文件名前多個‘.’,代表這個文件是隱藏文件。

 

三、文件屬性的更改

1.改變文件所有者chown

chown [-R] 賬號名稱 文件或目錄

要更改目錄下所有子目錄或文件的所有者,加上-R參數,代表進行遞歸更改。

例1:將install.log文件的所有者改為bin

chown bin install.log

2.改變文件所屬用戶組chgrp

chgrp [-R] 用戶組 文件或目錄

要更改目錄下所有子目錄或文件的所有者,加上-R參數,代表進行遞歸更改。

注意:用戶組的名字必須要存於/etc/group中,不然不能更改成功

例2:將文件install.log的所屬用戶組改為users

chgrp users install.log

3.文件屬性需要修改的常見場景

我們復制文件時,如使用cp

cp 源文件 目標文件

復制后的目標文件與源文件會具有相同的屬性和權限,如將文件傳給bin,若文件中對其他人只有讀的權限,那么bin就不能對文件進行修改等操作,因此需要修改文件所有者和用戶組

 

四、文件權限

在Linux中,用戶對文件有三種訪問權限:read、write、excute

在文件屬性中,第一列代表文件類型和權限。其中,第一個字符代表文件的類型,Linux中的文件類型表示后面會介紹。接下來的字符中,每3個為一組

第一組為文件所有者的權限,第二組為所屬用戶組權限,第三組為其他人的權限。

1.文件權限含義

文件權限三個為一組,均為“rwx”三個參數的組合

r:read代表可讀

w:write代表可寫

x:execute代表可執行

這個三個權限的位置不會發生改變,如果沒有該權限,就用-替代。

例3:-rwxr-xr--

-:表示文件類型,-表示這是一個文件

rwx:所有者的權限,可讀、可寫、可執行

r-x:所屬用戶組的權限,可讀、可執行

r--:其他用戶的權限,可讀

2.文件權限的數字表示

三個權限的位置不會改變,可以使用數字來代表各個權限

r:4

w:2

x:1

每種身份的權限為這三個權限的和

例4:-rwxr-xr--

所有者權限為:4+2+1=7

用戶組權限為:4+1=5

其他人的權限為:4

所以該文件權限為754

3.文件權限的修改chmod

1.數字類型的修改

chmod [-R] number 文件或目錄

-R:進行遞歸修改,連同子目錄下的所有文件都會更改

例5:將.bashrc這個文件的權限改為-rw-r--r--

chmod 644 ./bashrc

2.字符類型的修改

有user、group、others三種身份,用u、g、o來代表,a代表全部的身份

chmod

u

g

o

a

+

-

=

r

w

x

文件或目錄

 

 

 

 

 

例6:設置文件./bashrc的權限為-rwxr-xr-x

chmod u=rwx,go=rx ./bashrc

例7:增加./bashrc這個文件的每個人均可寫入的權限

chmod a+w ./bshrc

例8:去掉./bashrc這個文件的每個人均可寫入的權限

chmod a-w ./bashrc

4.目錄與文件的權限意義

1 文件的權限意義

r:可讀取文件的內容

w:可以編輯、增加或修改文件的內容

注意:不能刪除該文件

x:該文件有被系統執行的權限

在Windows下一個文件是否具有執行能力是通過擴展名來判斷的,如.exe, .bat, .com等,Linux下是由是否具有x權限來決定的,與文件名沒有絕對關系

2 目錄的權限意義

r:可以讀取目錄結果列表,即可以查詢該目錄下的文件名數據,利用ls將該目錄的內容列表顯示出來

w:可以更改目錄結果列表包括:

a:信件文件與目錄

b:刪除以及存在的文件與目錄(不管該文件的權限為何)

c:將以存在的文件或目錄重命名

d:轉移目錄內的文件、目錄位置

x:用戶可以進入該目錄成為工作目錄

例9:有個目錄權限如下:drwxr--r--,系統有個賬號叫vbird,但是這個賬號並沒有支持用戶組,請問vbird對這個目錄有何權限,是否可切換到此目錄中

vbird對此目錄只有r權限,因為沒有x權限,所以不能切換到此目錄內

例10:有個賬號dmtsai,他的主文件夾在/home/dmtsai,dmt對此目錄有rwx權限,若此目錄下有個the_root.data的文件,權限為:-rwx------,dmtsai對此文件的權限是什么,可否刪除此文件

dmtsai對此文件來說是others身份,沒有任何權限。這個文件在他的主文件夾下,他對主文件夾有rwx的權限,所以他可以刪除此文件

五、文件種類以及其屬性表示

-:一般文件

d:目錄文件

l:鏈接文件

b:塊設備文件,即一些存儲數據以提供系統隨機訪問的接口設備,如硬盤、軟盤等

c:字符設備文件,即一些串行端口的接口設備,如鼠標、鍵盤等

s:套接字,數據接口文件,通常被用在網絡上的數據傳輸

p:FIFO文件

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM