Filesystems USB上的Ext2文件系统

Filesystems USB上的Ext2文件系统,filesystems,usb,ext2,Filesystems,Usb,Ext2,我正在使用osdevwiki作为编写操作系统的资源。到目前为止,我已经有了一个2阶段的引导加载程序,带有一个非常小的32位保护模式内核 然而,对于引导加载程序,我一直在向特定的扇区写入数据,并从特定的扇区读取数据,我决定以“正确的方式”进行操作,并使用文件系统,因此我选择了ext2文件系统,因为wiki上有文档。所以我用ext2格式化了我的闪存驱动器,在ubuntu11.10上使用gparted,抓起lde(linux光盘编辑器),用我的闪存驱动器运行它 问题是,我没有看到ext2页面上描述的表

我正在使用osdevwiki作为编写操作系统的资源。到目前为止,我已经有了一个2阶段的引导加载程序,带有一个非常小的32位保护模式内核

然而,对于引导加载程序,我一直在向特定的扇区写入数据,并从特定的扇区读取数据,我决定以“正确的方式”进行操作,并使用文件系统,因此我选择了ext2文件系统,因为wiki上有文档。所以我用ext2格式化了我的闪存驱动器,在ubuntu11.10上使用gparted,抓起lde(linux光盘编辑器),用我的闪存驱动器运行它

问题是,我没有看到ext2页面上描述的表,我查看了字节1024(0x400)以及其他地方,似乎找不到该表。我回到gparted,它仍然是格式化的。而且,lde会说“无法识别的文件系统”,即使我指定它是ext2。闪存驱动器是否未使用标准的ext2文件系统,文件系统是否已更改得与页面上描述的相似,或者我只是找不到正确的位置

链接:

Ext2-


OsDev维基-

如评论中所述,我已经回答了我的问题。我的问题不是格式化我的闪存驱动器,或者闪存驱动器的使用方式,或者任何其他技术问题。问题是,当我使用光盘编辑器时,我告诉它读取驱动器本身(
/dev/sdb
),我需要使用分区(
/dev/sdb1
)。当我查看分区时,我查看了0x400(超级块的开始),超级块确实在它应该在的地方。我还将superblock和其他几个块/索引节点与硬盘上的块/索引节点进行了比较,格式与预期相同,但数据不同。

如评论中所述,我已经回答了我的问题。我的问题不是格式化我的闪存驱动器,或者闪存驱动器的使用方式,或者任何其他技术问题。问题是,当我使用光盘编辑器时,我告诉它读取驱动器本身(
/dev/sdb
),我需要使用分区(
/dev/sdb1
)。当我查看分区时,我查看了0x400(超级块的开始),超级块确实在它应该在的地方。我还将superblock和其他几个块/索引节点与硬盘上的块/索引节点进行了比较,其格式与预期的相同,但数据不同。

我听说一些便宜的闪存驱动器将FAT文件系统中的“私有”空间用于其内部使用,因此无法可靠地处理使用其他文件系统的问题。但我希望这些设备不再上市,因为它们听起来很可怕。关于你的文件系统,
debugfs(8)
怎么说?上面写着:打开文件系统时超级块中有一个糟糕的魔法数字,它们听起来确实很可怕,希望这不是问题所在。大多数棍棒都是未经分区使用的;我不知道如果对它们进行分区,不同的工具将如何处理它们,但请确保您始终使用
/dev/sdX
/dev/sdX1
。我一直在使用/dev/sdb,我会尝试使用/dev/sdb1。这就是问题所在。我需要使用/dev/sdb1我听说一些便宜的闪存驱动器使用FAT文件系统中的“私有”空间供自己内部使用,因此无法可靠地使用其他文件系统。但我希望这些设备不再上市,因为它们听起来很可怕。关于你的文件系统,
debugfs(8)
怎么说?上面写着:打开文件系统时超级块中有一个糟糕的魔法数字,它们听起来确实很可怕,希望这不是问题所在。大多数棍棒都是未经分区使用的;我不知道如果对它们进行分区,不同的工具将如何处理它们,但请确保您始终使用
/dev/sdX
/dev/sdX1
。我一直在使用/dev/sdb,我会尝试使用/dev/sdb1。这就是问题所在。我需要使用/dev/sdb1