姬長信(Redy)

linux – 我应该在嵌入式系统上使用ext3吗?


我们有许多嵌入式系统需要对文件系统进行r / w访问,该文件系统驻留在具有块设备仿真的闪存存储器上.我们最古老的平台运行在紧凑型闪存上,这些系统已经使用了3年以上,在启动过程中没有运行单个fsck,到目前为止我们没有归因于文件系统或CF的故障.

在我们的最新平台上,我们使用USB闪存进行初始生产,现在正在迁移到磁盘模块以进行硬件存储.前段时间我们在USB存储器上运行的很多设备上遇到了一些文件系统问题,所以我启用了e2fsck以查看是否有帮助.事实证明,我们收到了一批不良闪存,因此一旦被更换,问题就会消失.我已经禁用了e2fsck,因为我们没有迹象表明它使系统更加可靠,而且从历史上看,我们没有它就没事了.

现在我们已经开始使用Disk-on-Module单元,我已经开始再次看到文件系统错误.突然,系统无法读取/写入某些文件,如果我尝试从紧急控制台访问该文件,我只会收到“输入/输出错误”.我再次启用了e2fsck并且所有文件都已更正.

O’Reilly的“构建嵌入式Linux系统”建议在ext2文件系统上运行e2fsck但是没有提到它与ext3有关,所以我对是否应该启用它有点困惑.

在嵌入式系统上运行fsck有什么需要?我们正在考虑将二进制文件放在ar / o分区上,只考虑在同一个闪存设备上的ar / w分区上必须修改的文件,以便fsck永远不会意外删除重要的系统二进制文件,是否有人对这种设置有任何经验(好坏)?