本節我們學習關于Linux文件權限的知識:
一、文件與目錄權限的表示方法首先我們在查看Linux文件的詳細信息使用ls -l的時候,可以查看文件的名稱及各種屬性,屬性的第一個字符就代表了文件的類型。 我們在根用戶家目錄下創建了一個xiaoyu.txt的文本文件,查看其詳細的文件屬性時,第一個權限符号即為文件的類型,這裡-代表的是普通文件。
那麼文件的類型有哪些種呢?
1. 文件類型(七種類型)在初學階段我們遇到比較多的還是目錄文件d和普通文件-,在查看文件詳細屬性的時候,還有一大串rw-r--r--,它們又代表什麼意思呢?其實,這些rwx其實是不同用戶對文件所擁有的權限,那麼用戶對文件的權限有哪些呢?我們就來看看文件權限有哪些表示方法吧!
2. 文件權限的表示方法(1)字符權限的表示方法:
(2)數字權限的表示方法: 這些rwx其實是可以用阿拉伯數字替換的,其中:
(3)目錄權限的表示方法:
以上我們了解了這些字符所代表的文件權限,那麼我們該怎麼進行權限的修改呢?
二、文件權限的修改方法在Linux系統中通常使用chmod修改權限,我們可以用字符的方式進行修改,也可以用數字的方式進行修改。
1.chmod u x /tmp/xiaoyu
2.chmod 755 /tmp/xiaoyu
Linux中為了安全的管理文件,一個文件可以被它的主人(u)所使用,稱為屬主;
也可以被它主人同一組的人(g)使用,稱為屬組;
也可以被跟它主人不是同一組的人(o)使用,稱為其它用戶。
不同身份的人,對同一個文件有着不同的權限,有的人可以讀、有的人可以寫、有的人可以執行,那麼如何進行權限分配與修改呢?這就是我們這一節所要重點要講的内容。
Linux系統中的文件,我們要修改屬組、屬主通常使用命令 chown,而使用命令chgrp,可以單獨更改屬組,但是這個命令不常用。
我們首先在根目錄下創建一個test目錄,
1.mkdir /test
我們來查看一下該目錄的權限
1.ls -ld /test
屬性解析:
首先這是一個目錄文件,這裡我們可以看到root用戶有進入目錄查看目錄文件修改目錄文件的權限、同組用戶和其它用戶進入目錄并查看文件内容的權限。但是要注意root用戶是沒有權限限制的,即使這裡什麼權限都沒有标識,root用戶仍然可以讀取與修改。
1. 修改目錄的屬主這裡test目錄的屬主是root 用戶,我們把它的屬主改為user,可以使用命令chown <屬主> <目錄>
1.chown user1 /test
我們再次查看該目錄的詳細信息時,就會發現其屬主已經改為了user1用戶
2. 修改目錄的屬組
這裡我們test目錄的屬組是root組,我們将其屬組修改為group1,可以使用命令chown :<屬組> <目錄>
1.chown :group1 /test
我們再次查看該目錄的詳細信息時,其屬組信息已經改為了group1組
前面說了,我們修改屬組也可以使用命令chgrp <屬組> <目錄>也可以進行屬組的修改;
1.chgrp group2 /test
首先我們在/test目錄下創建一個afile文件,查看一下它的屬性
可以看出屬主是讀寫權限,屬組與其他用戶都隻有讀的權限。
(1)如果這時候我們想讓其屬主有執行的權限,可以使用命令
1.chmod u x /test/afile
注意:這裡u代表屬主、g代表屬組、o代表其他用戶、a代表全部用戶, 代表添加權限、-代表删除權限、=代表設置權限(表示無論我們之前有什麼權限,這裡可以直接設置成某權限)
這時我們發現afile文件的屬主多了執行權限。
(2)同理,我們若想讓屬組去掉讀權限,可以使用命令:
1.chomd g-r /test/afile
查看一下現在的afile文件權限信息:
屬組已經沒有了讀權限。
(3)如果我們想給其它用戶設置一個寫權限,可以使用命令:
1.chmod o=w /test/afile
現在查看一下afile文件的權限信息:
現在其它用戶對afile文件有了寫權限。
(4)如果要給所有的用戶讀權限,可以使用命令:
1.chmod a r /test/afile
現在查看一下afile文件的權限信息:
現在所有的用戶都有了讀權限。
以上,我們都講解的是字符方式修改權限,其實Linux系統同樣支持數字方式修改,我們隻需要了解一個等價代換關系即可: 讀權限是4、寫權限是2、執行權限是1,就可以用數字方式實現對文件權限修改。
4. 修改權限(數字方式)如果我們要給上面的afile文件設置權限為:屬主讀權限、屬組讀權限、其它用戶讀權限和寫權限;可以使用命令:
1.chmod 446 /test/afile
現在afile文件的權限信息:
現在我們已經發現文件的權限已經按照指定要求發生了改變。
三、特殊權限SUID 用于二進制可執行文件,執行命令時取得文件屬主權限,如/usr/bin/passwd 我們查看usr/bin/passwd文件的權限信息時:
我們發現文件屬主權限是本來是x的位置現在是s,意思是我們不管是root用戶還是普通用戶在執行這條命令的時候,它都會以文件的屬主root身份來進行一個操作。 Linux系統這樣設計的目的是為了什麼?目的是為了這樣普通用戶也能獲得修改自己的密碼權限。
好了,今天就說這麼多,下一節我們繼續講解Linux系統的網絡管理!
如果覺得文章還不錯的話,歡迎點贊關注一下呗~^-^
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!