首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ext2“镜像”文件vs真实的ext2设备

ext2“镜像”文件vs真实的ext2设备
EN

Stack Overflow用户
提问于 2011-03-08 23:04:33
回答 1查看 1.4K关注 0票数 0

我的任务是为windows编写一个能够读取ext2分区的读取器程序。

在我的测试中,我使用了一个格式化为ext2的驱动器和一个使用mkfs创建的文件(一个在linux下挂载和工作良好的文件)。

由于某些原因,当我从驱动器(真正的)读取超级数据块时,我获得了所有正确的元数据(即数据块大小、索引节点计数等)。但是对文件执行完全相同的操作会返回错误的结果(这是没有意义的)。

这两个有区别吗?

我使用.\X:打开驱动器,并使用mkfs创建文件。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-03-08 23:33:51

分区上的ext2和文件中的存储应该没有任何区别(确实没有,我刚刚检查过了);但是,如果ext2安装在裸盘上(例如,/dev/sda而不是/dev/sda1),那么主超级块的偏移量是2048而不是1024。这是为了容纳MBR和其他垃圾。(我刚才在文档中找不到它,但这是我遇到的东西。)然而,安装到一个空驱动器上有点不寻常,所以我怀疑这是你的问题。

几年前,我编写了一些ext2实用程序,在开始手工编写之后,我改用Ted T‘o( ext2文件系统创建者)的e2fsprogs,它附带了头/库等,以便以更灵活、更可靠的方式完成所有这些工作。

您可能还想在文件/分区中检查幻数0xEF53的偏移量0x438,如果不存在,则认为它不是ext2/3文件系统,然后再引入整个超级块,这只是作为一种理智检查。

这里有一些可能会有帮助的文档:http://www.nongnu.org/ext2-doc/ext2.html

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5234213

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档