前言
linux是一個多用戶的操作系統,可見權限在linux中的重要性。
指令
1.查看文件相關信息
ls -l 文件名 查看文件的相關信息,如下圖
這裏查看了zip的相關信息
- rwxr-xr-x 這一串字符3個一組,代表文件的所屬主,所屬組,其他人這三種角色的權限,r讀,w寫,x執行.
- 權限字符前面的 ‘-’代表文件類型爲普通類型
- 緊跟權限的數字1,代表文件的硬連接數爲1
- 後面的兩個root分別代表文件的所屬主和所屬組
- 215840文件大小
- 最後修改時間
- 文件的全路徑名
查看目錄用 ls -ld 目錄名
2.更改文件的所屬主或所屬組
chown (-R這個-R可要可不要) 所屬主:所屬組 文件名
-R表示設置的所屬主遞歸該文件目錄下的所有子文件都有效
eg:
chown user1:group1 test
把test的所屬主變成user1,所屬組變成group1
chown -R user1:group1 test
同時將test下的所有文件的所屬主變成user1,組變成group1
若只變所屬主:group可以省略,如 chown user1 test
將test的所屬主變成user1
若只變所屬組,:不可省略,如 chown :group1 test
將test的所屬組變成group1
變換組也可以使用cherp命令,效果一樣 cherp group1 test
3.對文件的權限進行修改
我們知道一個文件的權限是由 rwxr-xr-x這一串字符組成的,修改文件權限的命令是chmod
首先是一種麻煩的記錄方法,我們不會用,我簡單講下,首先幾個字母代表的意思 (u屬主)(g屬組)(o其他人)(a所有人)(r讀權限)(w寫權限)(x執行權限),有了這些代表,我們就可以表示權限的修改了
- chmod u+r test ……..test的所屬主增加讀權限
- chmod g-r,g-x,o+r test ……….test的所屬組刪除讀與執行權限,其他用戶增加讀權限
- chmod ug=rw,o=r test …………..test的所屬主和所屬組委讀寫權限,其他爲讀權限
這樣表示肯定很複雜,所以我們用了另一種語法來表示,如 chmod 777 test ,這裏的777代表給所有用戶分配所有權限。那這個怎麼看呢。。我們來看看
首先,我們一個用戶的權限是這樣表示的 rwx r-x.即一個權限位就兩種狀態,有或者沒有,所以我們可以用二進制來表示,0代表沒有,1代表有,所以rwx就是111,而111用八進制來表示就是7,所以一個rwxrwxrwx即所有用戶所有權限的表示就是777,特別的記住就是r代表4,w代表2,x代表1,所以rwx就是7,這樣就會好記的多
現在比如我要分配一個文件屬主全權限,屬組和其他人只有讀寫和執行權限,寫法是rwx r-x r-x ,其中,rwx爲7,r-x爲5,所以八進制表示就是755
所以我們一般用八進制表示法來分配權限,如下
chmod 777 test爲所有人分配所有權限,對應rwx rwx rwx
chmod 751對應 rwx r-x –x