当 df 显示 60% 的可用空间时,出现“写入错误:设备上没有剩余空间”?

mic*_*ael 6 disk-space-utilization df

过去几周,我在一个小型 unix 服务器(它没有所有标准 unix 命令,只有 BusyBox 包中包含的基本命令)中发生了这种情况,我正在配置该服务器来备份文件。

如果我们检查服务器的可用空间,它会显示:

 Filesystem             |   Size  |    Used | Available | Use%| Mounted on
 /dev/hdc2              | 678.4G  |  416.6G |   261.8G  | 61% | /tmp/mnt/D
 /dev/sda1              |  96.1G  |   36.0G |    55.2G  | 40% | /tmp/mnt/USB/USB_C
Run Code Online (Sandbox Code Playgroud)

现在,我尝试将 700MB 文件复制到 USB_C 或将 90GB 文件复制到/tmp/mnt/D我可以看到有足够可用空间的位置,但是,我不断收到以下错误:

cp: Write Error: No space left on device
Run Code Online (Sandbox Code Playgroud)

知道问题是什么以及如何解决吗?

如前所述,这是一个小型 unix 服务器,只有最少的 unix 命令,因此其他帖子中提到的大多数命令不适用于此机器。因此,我可能需要知道我可以在这个特定系统中尝试什么的人的帮助来给我们一些线索......

JDS*_*JDS 3

我的直觉反应是inodes

检查你的索引节点。这些是文件系统的隐藏部分,用于保存有关文件的元数据。

df -i
Run Code Online (Sandbox Code Playgroud)

我怀疑你可能有很多很多小文件。如果是这种情况,请注意每个文件都需要一个索引节点,您可以在用完实际存储空间之前用完索引节点。