Linux 上缺少磁盘空间

Linux 上缺少磁盘空间

我有一个 Ubuntu 盒子,有 30GB 的磁盘空间几乎被填满:

df -h

Filesystem      Size  Used Avail Use% Mounted on 
/dev/vda1        30G  28G     0  100% /

但是当我使用以下命令检查所有根文件夹的大小时

sudo du -sh /foldername

我总共只得到了 17.2GB

lib/        6.7G
usr/        4.8G
home/       2.0G
var/        1.3G
boot/       1.1G
swapfile    1.1G
root/       125M
sbin/       12M
bin/        11M
etc/        8M
run/        420K
lost+found/ 16K
media/      8.8K
dev/        4K
lib64/      4K
mnt/        4K
srv/        4K
opt/        4K
tmp/        4K
sys/        0
proc/       0

这里有什么可疑之处吗?大约有 11 GB 下落不明。丢失的 11G 在哪里?

答案1

根据 Server Fault 社区的建议,我检查了我的块大小:

stat --printf='%s' -f .

4096 是“正常”值

然后我检查了有多少已删除的文件仍被进程保持打开状态:

lsof | grep -c DEL

报告称有 143 个文件可能占了所有丢失的空间,但我认为这不太可能

然后我重启了我的电脑,然后瞧!我所有的磁盘空间都恢复了:

df -h
Filesystem      Size  Used Avail Use% Mounted on
udev            487M  4.0K  487M   1% /dev
tmpfs           100M  388K  100M   1% /run
/dev/vda1        30G   17G   12G  61% /

反射

重启后我恢复了这么多磁盘空间,这意味着卷的块大小不是罪魁祸首。因此,仍然不能 100% 确定是什么导致了差异,但很高兴我的空间又回来了!

答案2

我认为您可能有一些大的隐藏文件,只有使用该标志才会显示-a

du -ha /foldername | sort -hr

上述命令将输出所有文件(包括隐藏文件)的大小,并且排序将按大小排序,以便您识别它们。

相关内容