1

我用了一个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
....

有没有人也发现了这个问题?

谢谢,

4

1 回答 1

2

JFFS2 默认使用文件系统压缩,因此分区上使用的空间不会反映文件大小的总和,因为文件是即时压缩的。这意味着它们各自的文件大小将反映它们未压缩的大小,但总体卷使用量将反映它们的压缩大小。

来自维基百科上的 JFFS2

没有实用的方法来判断设备上剩余多少可用空间,因为这取决于附加数据的压缩程度和写入顺序。

于 2015-07-25T03:28:21.153 回答