了解ext2 FileSystem [关闭]


8

我试图在ext2文件系统中找到已删除的inode。这就是我正在采用的方法。但是我觉得我做错了。

  1. 我首先要在超级块的开头查找1024个字节

  2. 我知道块大小为1024字节,因此组描述符表从偏移量2048开始。

  3. 组描述符表为每个块组都有一个组描述符,对吗?因此,我计算了组描述符或块组的数量:每个组的总inode / inodes。这给我值8,这意味着我的块组描述符表中有8个组描述符。

  4. 我阅读了所有8个组描述符的first_inode_table字段。组描述符的长度为32个字节

    所以这就是我感到困惑的地方。第一个组描述符的索引节点表给我260。那么这是否意味着我要访问260 * blocksize来访问第一个块组的索引节点表?

  5. 到达那里后,我正在阅读dtime字段-告诉我们上次删除的时间。如果大于0,则表示它已被删除。

    因此,我还有一个困惑,就是据说inode表的前11个条目是保留的。因此,只要我遍历inode表的所有inode条目就不会有问题吧?

我的方法正确吗?如果发现错误,请向我指出正确的方向。


推理是正确的。错误是由于另一个问题。

4
@Catie如果您解决了此问题,则应该自己添加答案,还是直接删除问题。:-)
约翰·帕克

1
请自己添加答案!
kalaracey 2011年

1
问题已经回答,因为这是另一个已解决的问题。不再有问题,Catie回来的可能性很小,所以请帮助解决这个悬而未决的问题……
Tamara Wijsman
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.