dumpe2fs [-bh]裝置檔名
-b:列出保留為壞軌的部分(一般用不到!)
-h:僅列出superblock的資料,不會列出其他的區段內容
利用dumpe2fs可以查詢到非常多的資訊,不過依內容分為上半部分是superblock內容,下半部分是每乙個block group的資訊。
從上面的**我們可以觀察到這個第乙個block為1,block大小為1024,詳細資訊就不再詳列。
block group的內容我們只看group0資訊
。group0所占用的block由1到8192號,superblock則在第1號的block塊內!
。檔案系統描述說明在2-3號block中
。block bitmap在260 ,inode bitmap則在276,inode table在292-544
linux系統下,每個檔案都會占用乙個inode,且可依據檔案的大小來分配多個block給檔案使用,目錄記錄內容是檔名,一般
檔案的才是實際記錄資料的,那麼目錄與ext2檔案系統如何記錄資料的呢?
與目錄樹的關係
linux系統下,每個文件(不管檔案還是目錄)都會占用乙個inode,而且依據檔案內容的大小分配多個block給該檔案使用它,
目錄的內容在記錄檔名,一班檔案才是是記錄資料內容的地方。
目錄當我們在linux下ext2檔案選系統建立乙個目錄時,ext2會分配乙個inode與至少乙個block給該目錄,其中
inode記錄給目錄的相關許可權於屬性,並可記錄分配到那塊block號碼,而block則是記錄在這個目錄下的檔名與該檔名占用的inode
號碼資料,也就是說目錄所占用的block內容記錄如下:
|inode number| 檔名 |
---------------------------------
| 654683 |mas.cfg |
| 324234 |dasd.sh |
---------------------------------
某一目錄內檔案所占用的inode的號碼時,可以使用ls -i這個命令,每個人選擇的專案和分割槽不同,
所以系統說顯示的結果也會是不同的。
檢視某一檔案的占用block的數量,可以使用ll -d /bin/to/some_file,檔案的大小幾乎都是block大小的整數倍。
檔案:當我們在linux下ext2檔案系統建立檔案,ext2會分配與相對檔案大小的block數量給檔案
目錄樹的讀取:
inode本身並不記錄檔名,檔名記錄在目錄的block中,因此,新增/刪除/更名與目錄的w許可權有關這一特點,
應為檔名記錄在目錄的block中,當我們讀取某乙個檔案是,就必須讀到正確的inode與block,然後才能找到讀取檔案的inode號碼
因此當我們讀取乙個檔案時,就必須經過目錄的inode與block,然後才能找到想要讀取的檔案的inode號,
最終讀到正確的檔案的資料。
由於目錄樹是由根目錄讀起開始,因此系統通過掛載的資訊可以找到掛載點的inode號碼(通常乙個filesystem的最頂層
inode號碼會有2開始),此時就能夠找到目錄的inode內容,並依據該inode讀取目錄的block內的檔案資料,在一層一層往下讀到找到正確的檔名。
例如讀取/etc/passwd這個檔案,系統經過多步奏是:
如圖:
1./的inode:
透過掛載點的資訊找到/dev/sda1的inode號碼為2的根目錄inode,且inode的許可權(rx)
2./的block:
經過上乙個步驟取得block的號碼,並找到該內容有/etc/目錄inode號碼651522
3.etc/的inode:
讀取651522號inode知道了我有r和x許可權,因此可以讀取etc/的block內容;
4.etc/的block:
經過上乙個步驟取得block號碼,並在block內容裡找到passwd檔案的inode號碼(667138)
5.paawd的inode:
讀取667138號inode,獲得我有r和x許可權,因此可以讀取passwd的block內容;
6.passwd的block:
最後將該block內容的資料讀出來。
filesystem 大小與磁碟讀取效能:
當乙個檔案系統的規劃的很大時,由於硬碟上面的資料總是來來去去,所以在整個檔案系統上面的檔案通常無法連續寫在一起(block號碼不會連續坐在一起),、
所以,而填入式的資料填入沒有使用的block當中,當檔案寫入的block真的分的很散,此時就會有所謂的檔案離散的問題發生。
雖然我們的ext2的inode已經將整個檔案所記錄的block號碼上了,所以資料可以一次讀取,
但如果檔案太過離散,確實會造成讀取效率低的問題。如果遇到這種問題,那麼將整個檔案系統內的資料全部複製出來,將filesystem重新格式化,在將資料寫入回去
、可以解決這一問題。
如果filesystem真的太大了,那麼當乙個檔案分別記錄在這個檔案系統的最前面與最後面block號碼中,
此時會造成硬碟的機械手臂移動幅度過
linux檔案系統 ext2檔案系統
如何快速高效的尋到在硬碟儲存的資料,於是檔案系統就誕生了。檔案系統是邏輯層面的,那麼檔案系統是如何管理 件層提供的磁碟空間的?現在,大部分檔案系統採用索引分配方案 優點 1.能夠保持好大部分檔案的區域性性 2.滿足檔案插入,刪除的高效 3.隨機讀寫不需要沿著指標前行 缺點1.會有較多的磁碟尋道次數 ...
ext2檔案系統
ext2磁碟結構 ext2分割槽和ext2分組的分布圖 下圖是借用其他部落格的 塊組中的每個塊包含的資訊 超級快 1個塊 描述該分割槽中的整個檔案系統的資訊,包括有多少個快組,每個快組有多少個塊,多少個索引節點等。組描述符塊 n塊 塊點陣圖 1塊 索引節點位圖 1塊 索引節點 n塊 資料塊 n塊 塊...
Ext2檔案系統
ext2檔案系統的總體布局,如下圖。1檔案系統的最小儲存單元是塊 block 塊的大小一般為512bytes,或者是它的整數倍,塊的大小是在格式化是所確定的。不能修改除非重新格式化。上圖中顯示了檔案系統的總體布局,由乙個boot block和對個block group組成,每個block group...