Data loss in embedded file system UBIFS after shutdown of system

轉載自 https://stackoverflow.com/questions/34409726/data-loss-in-embedded-file-system-ubifs-after-shutdown-of-system

 

 

Q:

Whenever I run my application on UBIFS file system and do a write operation on any file(provided file has proper read and write modes),immediately after power off and on, I see that the content written to the file is missing.The size of the file is zero.The same thing if performed on JFFS2 file system does not pose this issue.I have tried using sync command but still rarely this problem exists.

For example:

I need to write some data in a file called myfile and during run time i open this and write some data as "Hi..Hello.."(if i open the file and check after write operation,data is written properly), then after shutdown/restart, i find that the content "Hi..Hello.." is not there and size of the file is zero bytes.

Note : Problem occurs only after shutdown or restart of the system.

 

UBIFS does less frequent sync. So if file is important call , In user application you must call fsync(). I suggest you to perform one of the following to prevent data loss in UBIFS:

  • After critical writes call fsync()
  • Open files with O_SYNC flag
  • Mount ubifs with -o sync (write buffers are bypassed )

Why is my file empty after an unclean reboot?

Few notes with regards to synchronization

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值