首頁 > 軟體

Linux檔案目錄和許可權命令

2020-06-16 16:56:59

前言:

Linux一般將檔案可存取的身份分為三個類別,分別是 owner/group/others,根據許可權劃分,每個目錄都可以擁有相對身份的-rwx[可讀可寫可執行]

使用者與群組:

Owner :檔案擁有者,如jane擁有此檔案所屬權,可對該檔案進行相應許可權操作。

Group  :檔案擁有組,如一個project組中,有三個人people1,people2, people3,而該檔案被project組所擁有,則組內的三個成員就可以對檔案進行相應許可權操作。

Other  :其他所有者,即除去owner和group的可執行的操作

Linux檔案屬性

使用ls -al可檢視當前目錄下的檔案(-a顯示隱藏檔案,以.開頭的檔案)

 

根據空格符劃分:[ 許可權 ][連結][擁有者][群組][檔案大小][ 修改日期 ] [ 檔名 ]

1)      [許可權]:由十位字元組成,代表這個檔案的型別與許可權

第一個字元代表這個檔案是目錄、檔案或連結檔案等等

目錄

  • 當為[ d ]則是目錄,例如上表檔名為“.config”的那一行;
  • 當為[ - ]則是檔案,例如上表檔名為“esd_auth”那一行;
  • 若是[ l ]則表示為連結檔案(link file);
  • 若是[ b ]則表示為裝置檔案裡面的可供儲存的周邊裝置(可隨機存取裝置);
  • 若是[ c ]則表示為裝置檔案裡面的序列埠裝置,例如鍵盤、滑鼠(一次性讀取裝置)。

  接下來的字元中,以三個為一組,且均為“rwx” 的三個引數的組合。

  • [ r ]代表可讀(read)
  • [ w ]代表可寫(write)
  • [ x ]代表可執行(execute)。
  • 這三個許可權的位置不會改變,如果沒有許可權,就會出現減號[ - ]
  • 查閱時可將型別與資料劃分開: [-][rwx][r-x][r--]è1 234 567 890

1 :代表這個檔名為目錄或檔案

234:擁有者的許可權

567:同群組使用者許可權

2)      [連結]:表示有多少檔名連結到此節點(i-node)

每個檔案都會將他的許可權與屬性記錄到檔案系統的i-node中,我們使用的目錄樹卻是使用檔名來記錄,因此每個檔名就會連結到一個i-node,這個屬性記錄的,就是有多少不同的檔名連結到相同的一個i-node號碼。

3)      [擁有者]:表示這個檔案(或目錄)的“擁有者帳號”

4)      [群組]:表示這個檔案的所屬群組

5)      [檔案大小]:檔案的容量大小,預設單位為Bytes

6)      [ 修改日期 ]:檔案的建立日期或者是最近的修改日期

7)      [ 檔名 ]:檔案的檔名

改變檔案屬性與許可權

1)      chgrp :改變檔案所屬群組(change group):被改變的群組名稱必須要

在/etc/group檔案記憶體在才行,否則就會顯示錯誤

2)      chown :改變檔案擁有者(change owner): 使用者必須是已經存在系統中的帳號,也就是在/etc/passwd 這個檔案中有紀錄的使用者名稱才能改變

chown [-R] 帳號名稱 檔案或目錄

chown [-R] 帳號名稱:群組名稱 檔案或目錄(可連同變更檔案的所屬組)

-R : 進行遞回(recursive)的持續變更,連同次目錄下的所有檔案都變更

 

3)      chmod :改變檔案的許可權, SUID, SGID, SBIT等等的特性

分別可以使用數位或者是符號來進行許可權的變更。

許可權分數對照:r:4  w:2  x:1

a)      chmod [-R] xyz 檔案或目錄

xyz :數位型別的許可權屬性,為 rwx 屬性數值的相加。

b)      chmod | u g o a | +(加入) -(除去) =(設定) | r w x | 檔案或目錄

user、group 、others三種身份,藉由u, g, o來代。此外, a 則代表 all 即全部的身份

檔案預設許可權:umask

umask 就是指定 “目前使用者在建立檔案或目錄時候的許可權預設值”

1)      umask  0022  :與一般許可權相關的是後3位數位,第1位是特殊許可權用的

2)      umask –S  u=rwx,g=rx,o=rx

3)      umask 的分數指的是“該預設值需要減掉的許可權”

 

如圖所示,git使用者預設umask值為0002 即對所屬者全部擁有,所屬組全部擁有,其他使用者不擁有許可權值2,即w,所以我們新建的test目錄許可權為drwxrwxr-x

Linux檔案種類與擴充套件名

純文字檔案(ASCII):可以直接讀到的資料,cat指令可檢視該檔案

二進位制檔案(binary :一般計算機系統的可執行檔案

資料格式檔案(data):特定格式的檔案可以被稱為資料檔案,last可檢視該檔案,使用cat會出現亂碼

目錄(directory)

連結檔案(link)

裝置與裝置檔案(device):與系統周邊及儲存等相關的一些檔案,通常在/dev目錄下

²  區塊(block)裝置檔案:一些儲存資料, 以提供系統隨機存取的周邊裝置,如硬碟與軟碟等[b]

²  字元(character)裝置檔案:一些序列埠的周邊裝置, 例如鍵盤、滑鼠等[c]

資料介面檔案(sockets): 通常被用在網路上的資料傳輸

資料輸送檔(FIFO, pipe): FIFO也是一種特殊的檔案型別,解決多個程式同時存取一個檔案所造成的錯誤問題。

Linux副檔名

.sh : 指令碼或批次檔 (scripts)

Z, .tar, .tar,.gz, .zip, *.tgz: 經過打包的壓縮檔案,因壓縮方式不同,字尾也不同

.html, .php:網頁相關檔案

Linux目錄設定的依據—FHS(Filesystem Hierarchy Standard)

FHS主要功能:規範每個特定的目錄下應該要放置什麼樣子的資料

FHS下目錄的四種互動形態

1)    可分享的:可以分享給其他系統掛載使用的目錄

2)    不可分享的:一些隱私資料

3)    不變的:不會經常變動的資料

4)    可變的:經常改變的資料

l  FHS針對目錄樹架構定義的三層目錄

1)    三個目錄的定義:

2)    /(root, 根目錄):與開機系統有關;

3)    /usr (unix software resource):與軟體安裝/執行有關;

4)    /var (variable):與系統執行過程有關。

 

/etc----組態檔

/bin----重要執行檔案

/dev----所需要的裝置檔案

/lib----執行檔案所需要的函數庫與核心所需的模組

/sbin----重要的系統執行檔案

本文永久更新連結地址http://www.linuxidc.com/Linux/2018-01/150300.htm


IT145.com E-mail:sddin#qq.com