我正在阅读有关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
|Super Block(backup)|Group Descriptors(backups)|Block Bitmap|Inode Bitmap|Inode Table|Data Blocks|
(如第一个链接中所述)这是否意味着inode不能声称数据多于Data Block
中可用的数据? Super Block(backup)
和Group Descriptors(backups)
是否会更新? http://www.virtualblueness.net/Ext2fs-overview/Ext2fs-overview-0.1-7.html注意到每个块组包含整个组描述符表 它的第二个块,就在超级块之后。(???)但是,只有第一块 内核实际使用了copy(在组0中)。其他副本是 用于备份目的,如果主副本获得可以使用 损坏。
如果您查看了Group Descriptor
的来源,则第一句话试图表示没有 entire table of group descriptors
。(也许我错过了它)?
整个备份系统没有任何意义。正确的备份必须保留在所有副本中,我不知道这是怎么发生的
3. Inode Table
的目的是什么?
4. Directories
如何创建子目录?目录表中的每个条目都指向Inode Table
中的条目。
谢谢! (我可能还有其他问题。)
答案 0 :(得分:2)
有两种类型的区块组:备用类型,普通类型:
备份类型:包含超级块和块组描述符表PLUS 普通类型(下面)中的所有内容。
普通类型:块位图,Inode位图,Inode表和数据块。
备份块组是0和1组,以及3,5和7的所有组。
每个块组描述符表包含几个块组描述符。每个块组有一个块组描述符。因此,如果有450个块组,那么将有450个块组描述符,在一个块组描述符 TABLE 中彼此相邻。
inode表的目的是创建几个可供文件系统稍后使用的免费inode。创建ext2 / 3文件系统后,无法创建新的inode。它是创建文件系统时设置的FIXED编号。
这是创建目录的方式:选择一个免费的inode,并选择它来保存目录信息。接下来,挑选空闲数据块以保存目录条目信息。即使是空目录也包含数据块中的两个目录条目;它自己的目录的目录条目,以及其父目录的目录条目。因此,对于新目录,将选择一个inode,并选择一个数据块来保存前两个目录条目。在创建新文件或目录时,会将更多目录条目添加到其数据块中。
答案 1 :(得分:0)