SSD 显示的容量无效

SSD 显示的容量无效

我在运行 Debian 5.0 的 Linux 机器上安装了 80GB Intel X25-M SSD 驱动器。SSD 上的文件系统是 ext4。我使用该驱动器没有遇到任何问题,并且已经使用它很长时间了,既用作交换文件存储,也用作存储一些需要随机访问的大型数据库文件的地方。

然而,我注意到这个奇怪尺寸的读数ls

> ls -lh /ssd
total 34G
-rwx------ 1 root root 23G 2010-12-11 18:00 file1.dat
-rwx------ 1 root root 22G 2010-12-11 18:00 file2.dat

出于安全原因,我在这里更改了文件的名称,但除此之外,这正是ls输出的内容。显然,总大小读数是不正确的。

以下是相应的输出df

> df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/sda1              74G   35G   36G  50% /ssd

尽管读数不正确,但驱动器似乎工作正常,诊断实用程序也没有发现驱动器存在任何问题。这是某种已知的错误ext4,还是更有可能是驱动器存在物理故障?

答案1

很可能都不是。ls 显示的大小是文件的长度,但是大多数现代文件系统都支持“稀疏文件”,其中空块实际上不会写入磁盘。尝试运行 du -h /ssd/* 并查看它报告的文件大小。'du' 将显示实际使用的磁盘量,这应该非常接近(不包括文件系统开销和保留块)'df' 报告的磁盘量。

答案2

来自 Google 搜索的第二个结果:稀疏文件,详细解释了这一点。

相关内容