UBIFS:不保存编辑的文件。如何将它们同步到NAND?

时间:2018-06-27 07:57:30

标签: shell filesystems page-caching fsync ubifs

我将UBIFS用于NAND上的rootfs。 当我使用nano命令编辑/etc/rc.local这样的文件并保存时, 当然,“ cat /etc/rc.local”显示已编辑的内容。 但是,在断开电源(没有重新引导或关闭电源命令)并再次供电后,/ etc / rc.local的内容变为空。

我发现写入的数据没有立即在UBIFS中写入NAND,也没有写入缓存。 (请参阅:http://www.linux-mtd.infradead.org/faq/ubifs.html#L_empty_file

我想在编辑后立即同步到NAND。 我发现的唯一解决方案是fsync,但是应该在C程序中调用它,并且它需要文件描述符。 Nano命令等不给我们文件描述符。所以我无法解决这个同步问题。

如何解决此不同步到NAND问题? 是否有任何要同步的命令? 如果要在UBIFS中编辑和保存文件,是否需要使用C程序编辑文件并使用fsync?

1 个答案:

答案 0 :(得分:2)

您可以使用“同步”命令。系统会将所有缓存刷新到磁盘。