JFFS2 文件系统,存储使用与实际文件大小不一致
Posted
技术标签:
【中文标题】JFFS2 文件系统,存储使用与实际文件大小不一致【英文标题】:JFFS2 filesystem, storage usage inconsistent with real file size 【发布时间】:2015-07-25 01:49:36 【问题描述】:我用了一个spi-nor芯片,做了一个16M的分区作为JFFS2 fs。我发现一个奇怪的东西,我应该使用14M的存储,但是当我使用df查看时,它显示只有7M已经使用:
/ # df
Filesystem 1K-blocks Used Available Use% Mounted on
...
/dev/mtd7 16384 7488 8896 46% /data
...
在我将另一个 2M 文件复制到此分区后:
/tmp # ls -l
-rwxr-xr-x 1 0 0 Fri Jul 24 18:32:46 2015 2478144 asd
原来只多使用了 1M 的存储空间:
# df
Filesystem 1K-blocks Used Available Use% Mounted on
....
/dev/mtd1 16384 8744 7640 53% /tmp
....
有没有人也发现了这个问题?
谢谢,
【问题讨论】:
【参考方案1】:JFFS2 默认使用文件系统压缩,因此分区上使用的空间不会反映文件大小的总和,因为文件是即时压缩的。这意味着它们各自的文件大小将反映它们未压缩的大小,但总体卷使用量将反映它们的压缩大小。
来自JFFS2 on Wikipedia:
没有实用的方法来判断设备上剩余多少可用空间,因为这取决于额外数据的压缩程度和写入顺序。
【讨论】:
以上是关于JFFS2 文件系统,存储使用与实际文件大小不一致的主要内容,如果未能解决你的问题,请参考以下文章