我曾经用它df -h
来显示我的磁盘使用情况:
Filesystem Size Used Avail Use% Mounted on
/dev/sda2 558G 249G 308G 45% /
udev 10M 0 10M 0% /dev
tmpfs 6.3G 8.8M 6.3G 1% /run
tmpfs 16G 0 16G 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 16G 0 16G 0% /sys/fs/cgroup
tmpfs 16G 20K 16G 1% /tmp
/dev/sda1 511M 180K 511M 1% /boot/efi
tmpfs 3.2G 0 3.2G 0% /run/user/0
然后我使用并在的主目录ncdu
中发现了一些大文件。我删除了这些文件并重新启动了机器以删除所有打开的文件句柄,但磁盘空间并没有清理干净。root
/root/
为什么df
不更新/为什么这里不考虑根主目录?还有其他目录没有被考虑吗?
感谢您的帮助。
编辑:机器正在使用btrfs
,但不幸的是我不知道设置细节,也许这也很重要。
我尝试了以下方法来重现该问题:1. df -h 检查 / 的使用情况 2. du -sh /root 查看文件夹大小 3. 在 /root 中创建大文件 4. du -sh /root 显示更大的文件夹大小 5. df -h 没有显示
我不明白发生了什么事:(
亲切的问候
答案1
一种可能性是,您删除的文件/root
实际上硬链接到文件系统上其他位置的文件。因此,您删除了 inode,但文件可能在文件系统上其他位置仍有活动的 inode。