鳥哥的Linux私房菜(四)——Linux的文件權限

        Linux最優秀的地方之一,就在於它的多用戶、多任務環境。每個用戶都有自己較爲保密的文件數據,爲此文件的權限管理就變得很重要。Linux一般將文件可存取訪問的身份分爲:owner、group、others,文件權限分爲:read、write、execute.


一、用戶與用戶組

      “用戶與用戶組”的功能是爲linux多用戶、多任務的環境提供健全又好用的安全防護。

1、文件所有者(owner)

       在Linux系統中常常會有很多人同時使用同一臺主機進行工作。爲了考慮每個人的隱私權以及每個人喜好的工作環境,文件所有者這個角色就顯得特別重要。owner通常爲文件的創建者,文件相當於自己的“私人空間”,可以把文件設置成只有owner可查看與修改這個文件的內容,其他用戶無法知道該文件的內容

2、用戶組(group)

       多個用戶加入一個團隊成爲用戶組。用戶組最有用的功能之一就是用於團隊的合作開發,同組的用戶可以修改公共的文件數據,其他組的組員不能看到本組的文件內容。可以通過文件權限設置限制非團隊組員閱覽文件內容,同組團隊用戶可修改自己創建的文件數據。同時,若有隱私文件也可以設置同組成員看不到。注:每個賬號可以有多個用戶組的支持,即同一用戶可以加入多個用戶組

3、其他人(other)

     不是文件所有者也不屬於文件的用戶組,就是其他人。

4、超級用戶(root)

     root是系統中唯一的超級用戶,具有系統中所有的權限。如啓動或停止一個進程,ADSL撥號,刪除或增加用戶,增加或者禁用硬件等等。注意:建議初學者不要輕易使用root權限,容易因錯誤操作導致系統癱瘓。

二、用戶與用戶組記錄的文件

       在Linux的系統中,默認情況下所有系統上的賬號(包括一般身份用戶和root用戶的相關信息)都記錄在/etc/passwd文件內密碼信息記錄在/etc/shadow文件內,所有的組名記錄在/etc/group文件內。所以不能隨意刪除這三個文件。

三、文件屬性

對於上圖的七列信息,我們將依次進行詳細的講解。(月、日和具體時間看成一列)

       第一列包含10個字符,代表文件的類型和權限第一個字符代表文件類型(具體參考上一篇博客),接下來的字符每3個一組,共有三組,均爲“rwx”參數的組合。其中r代表可讀,w代表可寫,x代表可執行,三個權限的位置固定,若沒有相應權限會用“-”表示。比如文件SSD的第一列爲[-rw-rw-r--],說明SSD是一個目錄文件,owner的權限是可讀可寫,所屬用戶組的權限是可讀可寫,其他人只有可讀權限。

  • 第一組爲“文件所有者權限”
  • 第二組爲“同用戶組的權限”
  • 第三組爲“其他非本用戶組的權限”

       第二列表示連接到該文件節點的個數。在Linux系統中,每個文件名都會連接到一個i-node,該屬性記錄的就是有多少不同的文件名連接到相同的一個i-node。

       第三列表示文件所有者的名稱

       第四列表示文件所屬用戶組的名稱

       第五列表示文件容量的大小,默認單位是B

       第六列表示文件創建時間或者最近修改的時間(包含三列,分別代表月/日/具體時間)

       第七列表示文件名

四、如何改變文件屬性和權限

  • chmod:改變文件的權限
  • chown:改變文件所有者
  • chgrp:改變文件所屬用戶組
  •  

1、chmod的用法

作用:修改文件權限,方法有兩種:分別可以使用數字或者符號來進行文件權限的設置。

  • 數字類型改變文件權限

       r=4,w=2,x=1

       每種身份(owner、group、other)分別用字母u、g、o表示,其權限需要各自的[rwx]對應分數累加。比如文件SSD的第一列爲[-rw-rw-r--],其對應權限的數字表示如下:

u=rw-=4+2+0=6,g=rw-=4+2+0=6,o=r--=4+0+0=4,故該文件權限的數字表示爲664。

格式:chmod  [-R]  xyz  文件或者目錄

參數:

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

        xyz:數字類型的權限屬性,爲rwx相應屬性的數值相加。

舉例:

  • 符號類型改變文件權限

chmod

u(文件所有者)

g(所屬組)

o(其他人)

a(所有用戶)

+(增加權限)

-(減去權限)

=(設置權限)

r(可讀權限)

w(可寫權限)

x(可執行權限)

 

文件或者目錄

舉例:

2、chown的用法

作用:change owner 改變文件所有者,需注意的是,用戶必須是已經存在於系統的賬號(在/etc/passwd文件中有記錄的用戶)。

格式:chown [-R] 賬號名稱  文件或者目錄

參數:

         -R:同上

3、chgrp的用法

作用:change  group  改變用戶組。

格式:chgrp  [-R]  dirname/filename

參數:

         -R:同上

舉例:

注意,要被改變的組名必須存在於/etc/group文件內,否則會顯示錯誤。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章