我尝试在USB记忆棒上复制一些文件夹和文件,并在完成所有操作后立即将USB记忆棒移除。实现是这样的:
mkdir
fsync
fsync
复制完最后一个文件后,我取下USB记忆棒(~500ms - 1s)。但有时缺少整个文件夹结构。为了避免这种情况,我在复制最后一个文件后在每个目录描述符上再次使用fsync
。这次所有文件和文件夹都出现在USB记忆棒上,但有时我在文件夹结构中有垃圾或USB记忆棒已损坏。 USB记忆棒文件系统是vfat。有关如何正确保存数据的任何想法?
答案 0 :(得分:3)
在卸下设备之前卸下设备。对于像VFAT这样的非日志文件系统,无法保证文件系统在安装时在磁盘上处于一致状态。