Bash 檔案系統

2021-10-08 14:25:44 字數 1969 閱讀 9598

擴充套件檔案系統,使用虛擬目錄來操作硬體裝置,在物理裝置上按定長的塊來儲存資料。

採用名為索引節點的系統來存放虛擬目錄中所儲存檔案的資訊。

索引節點系統在每個物理裝置中建立乙個單獨的表(稱為索引節點表)來儲存這些檔案的資訊。

儲存在虛擬目錄中的每乙個檔案在索引節點表中都有乙個條目。

linux通過唯一的數值(稱作索引節點號)來引用索引節點表中的每個索引節點,這個值是建立檔案時由檔案系統分配的。

檔案系統通過索引節點號而不是檔案全名及路徑來標識檔案。

擴充套件了索引節點表的格式來儲存系統上每個檔案的更多資訊。

它為檔案新增了建立時間值、修改時間值和最後訪問時間值。

允許最大檔案大小增加到了32tb改變了檔案在資料塊中儲存的方式。

ext檔案系統容易造成資料塊的碎片化。

而ext2檔案系統在儲存檔案時通過按組分配磁碟塊來減輕碎片化。

通過將資料塊分組,檔案系統在讀取檔案時不需要為了資料塊查詢整個物理裝置。

ext2檔案系統由於容易在系統崩潰或斷電時損壞而臭名昭著。

即使檔案資料正常儲存到了物理裝置上,如果索引節點表記錄沒完成更新的話, ext2檔案系統甚至都不知道那個檔案存在。

先將檔案的更改寫入到臨時檔案(稱作日誌, journal)中。

在資料成功寫到儲存裝置和索引節點表之後,再刪除對應的日誌條目。

資料模式日誌方法是目前為止最安全的資料保護方法,但同時也是最慢的。

所有寫到儲存裝置上的資料都必須寫兩次:

第一次寫入日誌,

第二次寫入真正的儲存裝置。

這樣會導致效能很差,尤其是對要做大量資料寫入的系統而言。

增加了日誌檔案,將準備寫入儲存裝置的資料先記入日誌。

預設情況下, ext3檔案系統用有序模式的日誌功能——只將索引節點資訊寫入日誌檔案,直到資料塊都被成功寫入儲存裝置才刪除。

缺點:無法恢復誤刪的檔案,沒有任何內建的資料壓縮功能。也不支援加密檔案。

支援資料壓縮和加密,還支援區段的特性。

區段在儲存裝置上按塊分配空間,但在索引節點表中只儲存起始塊的位置。

由於無需列出所有用來儲存檔案中資料的資料塊,它可以在索引節點表中節省一些空間。

ext4還引入了塊預分配技術( block preallocation)。

如果你想在儲存裝置上給乙個你知道要變大的檔案預留空間,

ext4檔案系統可以為檔案分配所有需要用到的塊,而不僅僅是那些現在已經用到的塊。

ext4檔案系統用0填滿預留的資料塊,不會將它們分配給其他檔案。

2.尾部壓縮,將乙個檔案的資料填進另乙個檔案的資料塊中的空白空間。

有序日誌方法。

基於區段的檔案分配,為每個寫入儲存裝置的檔案分配一組塊,減少儲存裝置上的碎片。

會寫模式。
寫時複製(cow)技術。

cow利用快照兼顧了安全性和效能。

如果要修改資料,會使用轉殖或可寫快照。

修改過的資料並不會直接覆蓋當前資料,

而是被放入檔案系統中的另乙個位置上。

即便是資料修改已經完成,之前的舊資料也不會被重寫。

fdisk工具用來幫助管理安裝在系統上的任何儲存裝置上的分割槽。

要啟動fdisk命令,你必須指定要分割槽的儲存裝置的裝置名,另外還得有超級使用者許可權。

通過邏輯卷管理,可以將未使用分割槽分配到已有捲組。
1.

檔案系統 why檔案系統

為什麼需要檔案系統,可否由作業系統直接寫裸裝置?裸裝置是一種沒有經過格式化的磁碟或分割槽,即讓作業系統直接管理操作磁碟設定,進行資料讀寫等。通過檔案系統的方式組織磁碟儲存和資料管理有很多好處,比如 1.資料讀取 管理等操作變得簡單便捷 檔案系統給使用者提供了乙個簡單的操作介面,只需簡單的操作就能實現...

Linux根檔案系統和目錄結構及bash特性2

linux系統上的檔案型別 常規檔案,即f d directory,目錄檔案 b block device,塊裝置檔案,支援以 block 為單位進行隨機訪問 c character device,字元裝置檔案,支援以 character 為單位進行線性訪問 major number 主裝置號,用於...

檔案系統 檔案系統的架構

vfs是具體檔案系統的抽象,依靠超級塊 inode dentry以及檔案這些結構來發揮作用,檔案系統的架構就體現在這些結構的使用方式中。1 超級塊作用分析 1 2 所有的dentry都指向乙個dentry hashtable dentry hashtable是乙個樹組,每乙個樹組成員都是hash鍊錶...