linux – 使SD卡防止腐败

前端之家收集整理的这篇文章主要介绍了linux – 使SD卡防止腐败前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我的嵌入式 linux设备使用SD卡来保存某些诊断数据,这对内部闪存来说太多了.

问题是如果设备意外关闭,卡上的文件系统(FAT32)已损坏.

没有办法防止意外断电或用户将其关闭,并且该设备应该相对免维护.更糟糕的是,数据是连续写入的,因此损坏是非常频繁的,并且Linux在检测到有故障的FS时会以静默方式重新读取它.

您建议采取哪些方法来缓解这种情况?将在启动时自动运行fsck.vfat吗?

更多信息:

>该卡不被用户视为可移动.它被认为是内部磁盘.存储在其上的任何数据都可以通过网络或USB驱动器下载,系统会自动清除最旧的条目.这意味着它不需要在普通PC中可读.
>系统目前支持FAT,yaffs和jffs2.将其他文件系统添加到内核是可能的,但如果存在其他途径,我们首先会更喜欢它们.
>即使在几分钟内也可以根据需要暂停写入而不会丢失数据.
>部分数据丢失或轻微腐败是可以接受的.完全停止记录不是.
>大多数时候,断电事件完全不可预测.
>系统在ARM9,200MHZ,64MB RAM,32M​​B内部闪存上运行,并占用大部分cpu功率作为其主要角色.在考虑花哨的资源密集型解决方案时考虑到这一点.

解决方法

您可以使用block2mtd驱动程序来使用您在其他地方用于SD卡的事务性jffs2或yaffs(2)文件系统,这将解决您在断电时数据丢失或文件系统损坏的问题.

但是,这样做可能会引发其他问题.由于SD卡可能有自己的磨损均衡和扇区重新映射的机制,这些可能会干扰jffs2和yaffs的实现方式,从而降低SD卡的使用寿命或性能.如果这不是问题,那么值得尝试.

原文链接:https://www.f2er.com/linux/402327.html

猜你在找的Linux相关文章