我将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?
答案 0 :(得分:2)
您可以使用“同步”命令。系统会将所有缓存刷新到磁盘。