我使用UBIFS作为NAND上的rootfs。当然,当我用nano命令编辑/etc/rc.local这样的文件并保存它时,"cat /etc/rc.local“显示了编辑的内容。但是,在删除电源(没有重新启动或断电命令)并再次提供电源后,/etc/rc.local的内容变为空。
我发现,在UBIFS中,写的数据不是直接写入NAND,而是写到缓存中。(参见:file)
编辑后,我想直接同步到NAND。我找到的唯一解决方案是fsync,但这应该在C程序中调用,它需要文件描述器。Nano命令等不给我们文件描述器。所以我不能解决这个同步问题。
我如何解决这个不同步的NAND问题?有什么命令要同步吗?如果我想编辑和保存UBIFS中的文件,我必须用C程序编辑文件并使用fsync吗?
发布于 2018-06-27 08:01:10
您可以使用“同步”命令。系统将把所有的缓存刷新到磁盘上。
https://stackoverflow.com/questions/51057479
复制相似问题