linux 關於文件和權限

前言

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

注意,對文件的權限進行操作時必須用root用戶進行的,如果不是root用戶則要使用sudo命令來獲取執行權!!!

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