linux中將檔案可訪問的有三種身份,分別為owner,group,others。
檔案所有者(owner) 和 其他人(others) 顧名思義很簡單。群組(group)最有用的功能是用於團隊開發資源,乙個群組有多個成員,乙個成員可以屬於多個群組。比較特殊的是 root 使用者,root使用者可以管理系統中的任何檔案。
使用者和群組的記錄檔案:
先列出乙個檔案
[root@centos764 ~]# ls -l learn.txt
-rw-r--r--. 1 root root 0 9月 8 14:09 learn.txt
[1 ][2 ][3 ][4 ][5 ][6 ][7 ]
[許可權 ][鏈結][擁有者][群組 ][檔案容量][修改日期 ][檔名 ]
第一欄代表檔案的型別和許可權(permission): **
含義d代表為目錄
-代表為檔案,此例中為[-],所以learn.txt是檔案
l代表為鏈結檔(link file)
b代表裝備檔案裡面可供儲存的介面裝置(u盤等)
c代表裝置檔案裡面的串列埠裝置,例如鍵盤、滑鼠
第二欄表示有多少檔名鏈結到此節點(i-node)
每個檔案都會將他的許可權與屬性記錄到檔案系統的i-node中,在目錄樹的檔案系統中用檔名來記錄檔案,每乙個檔名會鏈結到乙個i-node中。這個屬性記錄的是有多少個不同的檔名鏈結到相同的i-node號碼(即乙份檔案有多少個檔名)。
第三欄代表檔案的所有者(owner)
在此例中,learn.txt檔案的擁有者為root
第四欄代表檔案所屬的群組(group)
在此例中,learn.txt檔案所屬群組為root
第五欄代表檔案大小
單位預設為bytes,learn.txt是乙個空檔案
第六欄代表檔案的建立日期或最近的修改日期
如果想要顯示完整的時間,使用ls -l --full-time
命令,此例中若要顯示完整時間執行命令ls -l --full-time learn.txt
。
第七欄代表檔名稱
比較特殊的如果檔名稱已『 . 』開頭,則該檔案為隱藏檔案。用ls -al
可以顯示隱藏檔案,比如 .bashrc 就是乙個隱藏檔案。
常見的改變檔案屬性與許可權的命令如下,其中修改檔案所屬群組、所有者,通常是root使用者操作的
修改檔案所屬群組,chmod
命令格式
[root@centos764 ~]# chgrp [-r] newgroup dirname/filename
選項與引數:
-r: 進行遞迴(recursive)的持續變更,亦即連同次目錄下的所有檔案、目錄 都更新成為這個群組之意。常常用在變更某一目錄內所有的檔案之情況。
注意的是 newgroup 是/etc/group中存在的群組。
範例:
[root@centos764 ~]# ls -l learn.txt
-rw-r--r--. 1 root root 0
9月 8
14:09 learn.txt
[root@centos764 ~]# chgrp admin learn.txt
[root@centos764 ~]# ls -l learn.txt
-rw-r--r--. 1 root admin 0
9月 8
14:09 learn.txt
修改檔案擁有者,chown
命令格式
[root@centos764 ~]#chown [-r] newowner dirname/filename
[root@centos764 ~]#chown [-r] newowner:newgroup dirname/filename
選項與引數:
-r: 進行遞迴(recursive)的持續變更,亦即連同次目錄下的所有檔案都變更
chown 命令可以順便修改檔案/目錄的組名。
修改許可權,chmod
修改許可權有兩種方式,分別是數字、符號:
採用數字模式修改許可權
許可權與數字對照表:
字元數字r4
w2x1
命令格式:
[root@centos764 ~]# chmod [-r] xyz filename/dirname
選項與引數:
xyz : 就是剛剛提到的數字型別的許可權屬性,為 rwx 屬性數值的相加。
-r: 進行遞迴(recursive)的持續變更,亦即連同次目錄下的所有檔案都會變更
範例,將learn.txt 許可權修改為 owner:rwx,group:rwx,others:rw-
rwx = 4 + 2 + 1 = 7, rw- = 4 + 2 = 6,則執行命令chmod 776 learn.txt
採用字元模式修改許可權
命令格式:
chmod [-r] [ugoa] [+-=] [rwx] filename/dirname
u 代表owner, g 代表group,o 代表others,a 代表all,即a = u + g + o
+ 代表加入,-代表去除,=代表設定
範例:將learn.txt許可權設定為 ower:rw-,group:r–,others:—。
答:chmod u=rw,g=r,o=- learn.txt
將learn.txt的owner新增x許可權,group去掉r許可權,others新增r許可權
答:chmod u+x,g-r,o+r learn.txt
對一般檔案而言 rwx 主要針對檔案內容來設計許可權;對於目錄來說 rwx 主要針對目錄內檔名列表來設計許可權
許可權對檔案的重要性
許可權對檔案作用如下:
x(execute):該檔案可以被系統執行的許可權
與windows不同,在linux中檔案是否可以被執行與拓展名無關,在linux中拓展名僅起作標識的作用,檔案是否能被執行與是否具有 x 許可權有關。
對於檔案的 rwx 僅與檔案的內容的有關,與檔名的存在沒有關係,因此控制檔案是否能夠被刪除的是目錄許可權
許可權對目錄的重要性
檔案是存放實際資料的地方,目錄的主要內容記錄檔名列表。
對於目錄來說:
x(access directory):使用者能否進入該目錄成為工作目錄。
檔案種類
目錄(directory):目錄,第乙個屬性為[d]
鏈結檔(link file):相當於windows系統中的快捷方式,第乙個屬性為[l]
裝置與裝置檔案(device):與系統周邊及儲存相關的檔案,通常在/dev這個目錄下,通常分為兩種:
資料介面檔案(sockets):第乙個屬性為[s],通常在網路上進行資料承接,通常在/run或/tmp目錄中
資料輸送檔案(fifo,pipe):fifo是一種特殊的檔案型別,主要目的在解決多個程式同事訪問乙個檔案所造成的錯誤問題。fifo是first-in-first-out的縮寫。第乙個屬性為[p]
linux 檔案拓展名
乙個linux檔案能不能被執行與拓展名無關,僅與檔案的屬性有關。我們通常通過拓展名來了解檔案作用
fhs(filesystem hierarchy standard)的主要目的是讓使用者了解到已安裝的軟體通常在哪個目錄下。
fhs定義出三層目錄中放什麼資料,分別為:
目錄樹的特性:
個人**中原文 linux 的檔案許可權與目錄配置
Linux檔案許可權與目錄配置
使用者組概念 假如主機有兩個團體,第乙個團體名為projecta,裡面有class1,class2,class3 第二個團體名為projecb,裡面有class4,class5,class6.這兩個團體之間有競爭性質,卻要交同乙份報告。每組成員之間必須能夠互相修改對方的資料,但是其他組的成員則不能看...
Linux 目錄配置與檔案許可權
linux是目前應用最廣泛的伺服器作業系統,基於unix,開源免費,由於系統的穩定性和安全性,市場占有率很高,幾乎成為程式 執行的最佳系統環境。etc etcetera 存放系統配置檔案 bin binaries 存放二進位制可執行檔案 sbin super user binaries 存放二進位制...
Linux檔案許可權與目錄配置
使用者組概念 假如主機有兩個團體,第乙個團體名為projecta,裡面有class1,class2,class3 第二個團體名為projecb,裡面有class4,class5,class6.這兩個團體之間有競爭性質,卻要交同乙份報告。每組成員之間必須能夠互相修改對方的資料,但是其他組的成員則不能看...