Linux檔案許可權(一)
1.幾個基本概念
檔案擁有者
因為Linux是多人多工的系統,所以對不同使用者的隱私管理就顯得至關重要了,舉個栗子,王家有仨兄弟,大毛、二毛和三毛,他們有一個共同的家,但是每個人有每個人的屋子,那麼對他們各自的房間來說就是這間房子的擁有者(owner)
群組
繼續使用王家三兄弟的栗子,王家的房子有一個客廳,這個地方是大毛二毛還有三毛都可以在這玩的,大毛可以看電視,二毛可以。。啊,扯遠了,客廳相當於一個資源,那麼王家的所有成員組成了王家這一個群組(group)
其他
王家三兄弟在開心的玩著,這時候隔壁狗剩來串門,但是他沒有王家的鑰匙,需要有人開門才能進到王家,這時候狗剩就相當於其他人(other)的角色
神仙
在Linux中有一個角色不在五行內超出三界中,具有巨大的權利,那就是root,可以對任何檔案進行操作,慎用。。。
與使用者群組相關的檔案
預設情況下,系統上的賬號與一般身份的使用者,還有root的相關資訊會存放在/etc/passwd檔案下; 個人的密碼會記錄在/etc/shadow檔案中; Linux中所有的組名都會記錄在/etc/group檔案中,以上三個檔案不要刪除
檔案許可權
說完上面的幾個概念再來理解檔案許可權應該會相對容易些,當在控制檯使用 ls -al命令時,會列出這個目錄下所有的檔案(包括隱藏檔案),以我的為例,使用後會有這些檔案被列出來(檔案較多,沒有全部列出來) 下面拿出其中的一條記錄解釋一下每個位置分別代表什麼意思
位置 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
---|---|---|---|---|---|---|---|---|---|---|
對應值 | d | rwx | r-x | r-x | 3 | root | root | 4096 | 11月7 16:44 | builds |
釋義 | 檔案型別 | owner許可權 | group許可權 | other許可權 | 連結 | 檔案所屬使用者 | 檔案所屬組 | 檔案大小 | 檔案最後修改時間 | 目錄或檔名稱 |
在下面對這些不同的位置一一詳細介紹下: 位置1: 字元所代表的檔案型別 【d】表示一個目錄,比如builds就是一個目錄 【-】表示一個檔案,比如上邊那個大圖中的.bash_logout就是一個檔案 【l】表示一個連結 【b】表示裝置檔案裡面可供儲存的介面裝置 【c】表示裝置檔案裡面的串列埠裝置(比如滑鼠鍵盤等) 位置2:
更改檔案許可權
介紹完上面的一些基本概念之後,下面來說一下更改檔案許可權/檔案所有者的幾個命令,涉及檔案許可權的命令主要有以下幾個:
- chgrp:更改檔案所屬組
- chown:更改檔案所有者
- chmod:更改檔案許可權 下面一一介紹一下
1.chgrp
- 命令格式:chgrp [-R] 組名 檔案或目錄 **注:**引數-R的作用是進行遞迴的持續變更,即如果需要變更目錄,那麼新增改引數之後,會連同該目錄下的所有檔案或目錄一同變更
- 命令例項: before after 執行後,將builds目錄的所屬組由原來的users更改為root 注意 如果更改的所屬組組名不在/etc/group中,那麼執行該命令時會報錯 當嘗試更改為tester時,會因為檔案/etc/group中不存在該組名報錯
2.chown
- 命令格式:chown [-R] 所有者名稱 檔案或目錄 或者 chown [-R] 所有者名稱:組名 檔案或目錄 [-R]引數的作用同上 使用與上一命令並無區別,不在此贅述了,但有一點需要注意,如果所設定的所有者在/etc/passwd檔案中不存在的話會報錯
chmod
這一命令用來更改所有者、組以及其他人的許可權,有兩種方式可以操作,下面就具體展開說一下 方式一: 符號方式改變許可權 首先來看下面的表格 下面還是用builds目錄實際操作一下,比如需要將目錄builds的許可權設定為rwxrwxr-x,那麼可以這樣操作 chmod g+w builds 命令,會在使用者組許可權上新增寫許可權,也可以直接進行使用"="進行設定,比如將許可權設定成為rwxr-xr–,可以使用下面的命令 chmod g=rx,o-x builds,如果為所有的身份都加上可執行許可權,那麼就可以這樣設定chmod a+x builds 方式二: 數字方式 前面已經說到Linux在檔案許可權中,三個身份都有三個代表不同許可權的字元r/w/x,因為這三個字元是固定的,所以可以用數字來代表,所以不同字元對應的數字也是固定的,他們的對應關係如下: r——4 w——2 x——1 這樣假如上面的目錄builds目前的許可權為rwxr-xr–,那麼這三個身份所對應的數值為 owner——4 + 2 + 1 = 7(也就是說如果某一身份具有所有的許可權,那麼對應的數值應該為7) group——4 + 1 = 5 other——4 瞭解了對應關係,之後來看一下怎麼通過數值修改許可權
- 命令格式:chmod [-R] xyz 檔案或者目錄
- 命令例項: before after Tips:如果檔案或者目錄不想被其他人看到,可以將其他人的許可權設定成0或者- - -
在下一個小節中會說一下許可權對檔案或者目錄的作用
不足之處還望指正