2013-05-05 71 views
1

我正在閱讀關於EXT2文件系統的問題,並且有很多問題。關於EXT2文件系統的多個問題

主要依靠以下資源:
http://e2fsprogs.sourceforge.net/ext2intro.html
http://www.virtualblueness.net/Ext2fs-overview/Ext2fs-overview-0.1.html#toc7
http://www.nongnu.org/ext2-doc/ext2.html
http://www.tldp.org/LDP/tlk/fs/filesystem.html

  1. 塊組具有以下結構:|Super Block(backup)|Group Descriptors(backups)|Block Bitmap|Inode Bitmap|Inode Table|Data Blocks|(如在第一鏈路所描述的)是否意味着索引節點不能要求比Data Block中提供的數據更多的數據?
  2. 做了Super Block(backup)Group Descriptors(backups)在Block Group的運營期間得到更新嗎? http://www.virtualblueness.net/Ext2fs-overview/Ext2fs-overview-0.1-7.html注意到

每個塊組包含組描述符的整個表中 其第二塊,超級塊之後。(???)但是,內核實際只使用第一個 副本(在組0中)。其他副本爲 用於備份目的,如果主副本受損 可用。

如果你已經看過的Group Descriptor源它沒有entire table of group descriptors的第一句話是試圖暗示。(也許我錯過了)?

整個備份系統沒有任何意義。正確的備份必須保持所有的副本,我不明白這是怎麼發生的。
3. Inode Table的用途是什麼?
4. Directories如何創建子目錄?目錄表中的每個條目都指向Inode Table中的條目。

謝謝! (我可能還有其他問題。)

+0

嗨,我只是想知道如果你爲你解答第二個問題。具體而言,當一個組描述符更改時將會更新多少組描述符表副本? – fengye87 2015-12-15 08:59:03

回答

2

有兩種類型的塊組的:備份類型,和正常類型

備份類型:包含超級塊和塊組描述符表PLUS一切正常型 (下面)。

正常類型:塊位圖,Inode位圖,Inode表和數據塊。

備份塊組是組0和1,並且是3,5權力所有組,和7

每個塊組描述符表包含幾個塊組描述符。每個塊組有一個塊組描述符。所以,如果有450個塊組,則將有450個塊組描述符,在一個塊組描述符中彼此緊挨在一起

inode表的目的是創建幾個可供文件系統稍後使用的空閒inode。在創建ext2/3文件系統後,您不能創建新的inode。創建文件系統時,它是一個固定數字集。

這是如何創建一個目錄:選擇一個空閒的inode,並選擇該目錄以保存目錄信息。接下來,選擇一個空閒數據塊來保存目錄條目信息。即使是一個空目錄,也包含數據塊中的兩個目錄條目;它自己的目錄的目錄條目,以及其父目錄的目錄條目。所以,對於一個新的目錄,將會挑選一個inode,並且將挑選一個數據塊來保存前兩個目錄條目。隨着新文件或目錄的創建,更多的目錄條目將被添加到其數據塊中。

0

Unix兼容的文件系統需要有inodes,這是這種文件系統的核心。

回想一下,Unix文件系統可能會通過link(2)系統調用添加硬鏈接。某些文件可以有多個名稱,所有這些名稱都是等效的。 即使所有文件的名稱後來都是unlink(2) -ed,文件仍然存在於磁盤上。特別是,這是製作臨時文件的方法。

所以其實的inode是真正的文件(文件系統)和目錄條目包含他們(關聯索引節點號在磁盤上)。

實際上,Ext2已過時,已演變爲Ext4。閱讀這兩個維基百科頁面。