Linux 學習 檔案系統

2021-08-07 04:52:55 字數 2668 閱讀 9603

左圖中的橢圓代表磁碟的乙個碟片,右圖為碟片的放大圖,盤面上面的一道同心圓表示乙個磁柱,磁柱是有許多扇區組成的,扇區是最小的物理儲存單元。多個磁柱構成乙個分割槽即分割槽。乙個磁碟的第乙個扇區是非常重要的,一般記錄了整個磁碟的分割方式即分割槽表。該分割槽表一般為64bytes,僅能夠記錄

4個分割槽(分為主分割槽和擴充套件分割槽),其中擴充套件分割槽可以繼續分割出邏輯分割槽,而邏輯分割槽的個數依據系統而來。

將磁碟分好區後,並不能直接利用磁碟的空間,而是需要將磁碟對應的分割槽或分割槽格式化為檔案系統後,才能夠被作業系統利用。一般的,乙個分割槽對應乙個檔案系統。

linux系統中,檔案系統將檔案的屬性和資料分開放,檔案的屬性存放在

inode

裡面,具體的檔案內容則存放到

block

裡面。對於目錄而言,

inode

存放目錄的屬性,而目錄下面的檔案或者子目錄存放到對應的

block

裡面。另外,

linux

系統為了管理這些

inode

和data block

增加了乙個

super block

區塊。每乙個檔案都會對應乙個

inode

,乙個或者多個

data block。

磁碟被格式化後,inode和

data block

就已經被確定下了。往往乙個

100g

左右的檔案系統格式化後得到的

inode

和data block

的數量非常驚人,因此

linux

將這些inode

和datablock

進行分組管理。每乙個組內具有

superblock

、inode

和data block

,而且在檔案系統的最前面預留乙個扇區用來安裝引導程式。

inode主要用來存放檔案的屬性和許可權等。每乙個

inode

大小固定為

128bytes

,每乙個檔案都會占用乙個

inode

。而inode

在記錄block

位置是需要消耗掉

4byte

,因此最多乙個

inode

可以存放

128/4=32

個block

的位置。但這是在不儲存檔案的餓屬性的許可權的情況下計算而來的。實際檔案的大小往往比較大,如果

inode

直接記錄

block

並且block

直接用來存放資料時,這時檔案系統能夠儲存的檔案大小將會非常受限。因此

linux

採用12

個直接block、1

個間接、

1個雙間接、乙個三間接。間接表示

inode

存放的block

不用來存放資料而是下一級

block

的位置。

另外,乙個檔案系統中需要管理的inode節點數目非常龐大,為了能夠更加有效地管理,

linux

系統將其進行分組

block group

,每乙個都相當於乙個小的檔案系統:同時具有

superblock

、inode

、datablock

以及檔案系統描述等資訊。

data block是用來存放資料的,其有1k、

2k和4k的區別。乙個

data block

只能存放乙個檔案的資料,因此較大的

data block

容易造成

data block

填充不滿從而導致磁碟利用率不高。而較小的

data block

又難以管理,因此需要結合實際

linux

主機的用途設定

data block

大小。suoperblock主要用來記錄整個檔案系統的

inode

、datablock

的使用情況。

檔案系統描述說明,用來規定每組block group的劃分情況。

區塊bitmap,該結構主要用來表述哪些

data block

是已經被使用了的,哪些是可以後期繼續使用的。

類似block bitmap。

與一般檔案相比較,目錄主要記錄目錄下面的檔名,而檔案才實際存放資料內容。因此對於目錄而言,分配至少乙個datablock用來存放檔名。

每乙個目錄對應有自己的block,並且目錄下的檔名存放到該

block

中,因此我們要讀取目錄下的檔案時,需要先找到該目錄的

inode

和block

,然後再

block

中找到對應的檔名,然後找到對應檔名的

inode

節點,然後找到資料

datablock

,最後從中將資料讀取出來。

linux學習 檔案系統

1.inode 記錄檔案屬性 2.block 記錄檔案內容 3.superblock 記錄filesystem整體資訊 block,inode總量,大小等 1 block bitmap 記錄哪些block為被使用 2 inode bitmap 記錄未被使用的inode號 為每個檔案至少分配乙個ino...

linux學習 檔案系統 的理解

1.nfs根檔案系統 2.usr sbin cp 許可權不足 不知道為什麼 3.檔案系統生成兩種 一種是用於放在本地在板子上除錯的,是打包之後的結果,ubifs格式,就是直接訪問就可以使用了。類似於遠端記憶體訪問。另一種是用於公升級用的,就是檔案型別的,直接按照linux 裡的打包方式打包即可,公升...

Bada學習 檔案系統

每個bada應用都會在終端檔案系統中分配乙個私有的儲存區域,即該應用的根目錄 以下為檔案系統的訪問規則 應用只能訪問下表列出的字首開頭的路徑 table bada path prefix and access permissions path prefix namespace permissions...