Linux是個多用戶、多任務的系統,因此常常會有多人同時使用這臺主機進行工作的情況,爲了考慮每個人的隱私,就有了用戶和用戶組的概念,這是相當重要的。所有的用戶組名字都在/etc/group這個文件中,所有的用戶都在/etc/passwd這個文件中
1、Linux文件屬性
在dev目錄下面輸入ls -l命令,就會出現以下內容,那麼分別代表什麼意思呢,我們現在就來分析一下
第一列:文件權限
第二列:連接數,如果是目錄的話連接數可能有多個,如果是文件,連接數則爲1
第三列:文件所有者
第四列:文件所屬用戶組
第五列:文件大小
第六列:文件最後修改時間
第七列:文件名
然後分析一下第一列文件權限,文件權限這一列共有十個字符,把這十個字符分成四組:0 123 456 789
首先看一下第一組,第一組是第一個字符代表了文件類型:
-:代表是一個文件
d:代表是一個目錄
l:代表是一個連接文件
c:代表是一個串行端口設備,例如鼠標、鍵盤(一次性讀取設備)
b:代表是可供存儲的藉口設備
接下來以三個爲一組,爲rwx三個參數的組合,其中r
(read)代表可讀,可以讀取此文件的實際內容,如讀取文本文件的文字內容等;
w(write)代表可寫,可以編輯、新增、修改該文件的內容,但並不具備刪除該文件本身的權限,rwx都是對於文件的內容而言,與文件的存在沒有關係;
e(execute)代表可執行;
如果沒有權限,就會出現減號(-);
第二組代表文件所有者的權限
第三組代表同羣組的權限
第四組代表非本羣組的權限
2、如何改變文件屬性和權限
chgrp:改變文件所屬用戶組
chown:改變文件所有者
chmod:改變文件的權限
改變用戶組:
改變文件所有者:
改變權限:
Linux有三種權限,r\w\x,分別代表可讀、可寫、可執行,我們可以使用數字來代表各個權限,各權限的數字對照表如下:
r:4
w:2
x:1
-:0
每種身份(owner,group,others)各自的權限(r,w,x)數字都是累加的,例如當text.txt權限爲【-rwxrwx---】時
owner=rwx=4+2+1=7
group=rwx=4+2+1=7
others=---=0+0+0=0
我們要把text.txt的權限改成【-rwxrwxrwx】可以使用如下命令:
chmod 777 text.txt
我們知道有owner,group,others三種身份,那麼我們可以使用u,g,o來代表三種身份,此外a代表all,也就是所有身份,命令就可以這樣寫
chmod (u/g/o/a)(+/-/=)(r/w/x)
比如要把text.txt設置成【-rwxr-xr--】這樣的權限,可以使用chmod u=rwx,g=rx,o=r text.txt
如果要爲每個人加入可執行的權限,可以使用chmod a+x text.txt,很方便
3、目錄與文件的權限意義
同文件一樣,目錄的權限也分爲三種:r(可讀),w(可寫),x(可執行)
r:具有讀取目錄結構列表的權限,可以使用ls這個命令將該目錄的內容列表顯示出來
w:可寫入的權限對於目錄來說是很強大的,意味着你可以改變目錄結構列表,也就是可以新建新的文件或目錄,可以刪除已經存在的文件和目錄(不論這個文件的權限),將已經存在的文件或目錄重命名,轉移該目錄內的文件、目錄位置。
x:可執行權限對於目錄來說可能會令人費解,目錄總不能執行吧,確實,目錄是不可以執行的,其實x代表的是用戶能否進入該目錄
大概的目錄權限概念就是這樣