我试图在ext2文件系统中找到已删除的inode。这就是我正在采用的方法。但是我觉得我做错了。
我首先要在超级块的开头查找1024个字节
我知道块大小为1024字节,因此组描述符表从偏移量2048开始。
组描述符表为每个块组都有一个组描述符,对吗?因此,我计算了组描述符或块组的数量:每个组的总inode / inodes。这给我值8,这意味着我的块组描述符表中有8个组描述符。
我阅读了所有8个组描述符的first_inode_table字段。组描述符的长度为32个字节
所以这就是我感到困惑的地方。第一个组描述符的索引节点表给我260。那么这是否意味着我要访问260 * blocksize来访问第一个块组的索引节点表?
到达那里后,我正在阅读dtime字段-告诉我们上次删除的时间。如果大于0,则表示它已被删除。
因此,我还有一个困惑,就是据说inode表的前11个条目是保留的。因此,只要我遍历inode表的所有inode条目就不会有问题吧?
我的方法正确吗?如果发现错误,请向我指出正确的方向。
推理是正确的。错误是由于另一个问题。
@Catie如果您解决了此问题,则应该自己添加答案,还是直接删除问题。:-)
—
约翰·帕克
请自己添加答案!
—
kalaracey 2011年
问题已经回答,因为这是另一个已解决的问题。不再有问题,Catie回来的可能性很小,所以请帮助解决这个悬而未决的问题……
—
Tamara Wijsman