首页 文章

fsync无法在ext3或ext4系统上运行

提问于
浏览
0

我尝试使用fsync尽快将一些文件写入SD卡 . 但是,在将文件物理写入SD卡之前,fsync实际上并未阻止 . 在数据实际上在SD卡上之前,似乎需要大约5-6秒 . 但是使用commit = 1或者sync选项安装文件系统(我试过ext3,ext4)似乎确实有效,数据在1秒内重启后是安全的 . 我的问题是,无论如何都要实现刷新而不采用分区范围的解决方案?我正在使用linux内核2.6.37 . 谢谢

1 回答

  • 0

    如果要确保内容写在SD卡上,则应在退出程序之前使用--flushbufs调用blockdev . 如果要对写入过程进行基准测试,可以在每次写入后调用它 .

    /sbin/blockdev --flushbufs $dev
    

相关问题