磁盘已满,但无法找到大文件或文件夹
Ubuntu服务器告诉我,我使用了所有磁盘:
Usage of /: 95.5% of 118.12GB
我试着找到大文件夹和文件,运行ncdu:
ncdu 1.8 ~ Use the arrow keys to navigate, press ? for help --- / ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ 5.5GiB [##########] /root 2.3GiB [#### ] /var 628.6MiB [# ] /usr 209.9MiB [ ] /lib 28.2MiB [ ] /boot 8.6MiB [ ] /bin 7.7MiB [ ] /sbin 6.6MiB [ ] /etc 208.0KiB [ ] /run 112.0KiB [ ] /tmp 48.0KiB [ ] /opt e 16.0KiB [ ] /lost+found 8.0KiB [ ] /dev 8.0KiB [ ] /media 4.0KiB [ ] /lib64 e 4.0KiB [ ] /srv e 4.0KiB [ ] /selinux e 4.0KiB [ ] /mnt e 4.0KiB [ ] /home 0.0 B [ ] /proc 0.0 B [ ] /sys @ 0.0 B [ ] initrd.img @ 0.0 B [ ] vmlinuz
根据ncdu
我使用大约10 GiB
的128 GiB
– 大约10 %
。 矛盾。
如何在不重启的情况下清理我的ubutntu server
?
我认为ncdu
谎言并使用其他应用程序来查找大文件和文件夹。 所有这些都显示与ncdu
相同的结果。
并且df -h
命令显示磁盘已满。
# df -h Filesystem Size Used Avail Use% Mounted on /dev/xvda 119G 113G 0 100% / udev 2.0G 8.0K 2.0G 1% /dev tmpfs 788M 212K 788M 1% /run none 5.0M 0 5.0M 0% /run/lock none 2.0G 0 2.0G 0% /run/shm
更新
sudo du -sch /*
结果:
/# sudo du -sch /* 8.7M /bin 29M /boot 8.0K /dev 6.6M /etc 4.0K /home 0 /initrd.img 210M /lib 4.0K /lib64 16K /lost+found 8.0K /media 4.0K /mnt 48K /opt du: cannot access `/proc/4470/task/4470/fd/4': No such file or directory du: cannot access `/proc/4470/task/4470/fdinfo/4': No such file or directory du: cannot access `/proc/4470/fd/4': No such file or directory du: cannot access `/proc/4470/fdinfo/4': No such file or directory 0 /proc 5.0G /root 212K /run 7.8M /sbin 4.0K /selinux 4.0K /srv 0 /sys 112K /tmp 629M /usr 2.3G /var 0 /vmlinuz 8.1G total
像往常一样8.1G
。 但我看到cannot access
行,可能因为它们而有问题。
然后我检查了/
最大的文件夹。 它是/root
:
/# sudo du -sch /root/* 96K /root/Downloads 2.5G /root/Dropbox 36K /root/nohup.out 4.0K /root/npm-debug.log 4.0K /root/readonly 980K /root/redis-2.6.16.tar.gz 228M /root/tmp 2.7G total
我在实验室机器上遇到了同样的问题并使用了这个命令
du -sch .[!.]* * |sort -h
我能够找到隐藏的文件,比如他们尚未删除的用户垃圾箱内部。
相信我最初找到这个答案的地方。
以下命令将显示/ home目录的磁盘利用率,其中–max-depth = 1
user@linux:~$ sudo du -h -d 1 /
检查进程仍处于打开状态的已删除文件:
sudo lsof | grep deleted | less
那将显示pid和文件描述符。 我在服务器上遇到了这个确切的问题,在ncdu
没有任何东西,但磁盘已经填满了。 事实certificate,它是一个夜间进程,将文件移动到已安装的samba共享,偶尔也没有正确关闭文件句柄。
如果您发现已删除的文件并想要清理它们,那么重新启动可能是最容易的,如果这是可以接受的。 或者你可以尝试杀死这个过程。 或者如果您确定它们没有被使用,您可以手动将它们归零,如下所示:
> /proc/14487/fd/12
请务必检查磁盘安装。 我在这里看到的解决方案都没有一个可以识别被放置在其上的文件夹占用的空间。
我们有同样的问题,结果是docker图像,存储在var / lib / docker下
ncdu没有列出这些,因为它们对用户不可见。 即使在sudo下运行ncdu也无济于事。
此命令清除所有现有的docker镜像……
docker rmi $(docker images -a -q)
- 应该有多少个Nginx进程?
- 如何通过ssh连接到Ubuntu 16.04服务器后在新终端中运行脚本(.sh)文件?
- Ubuntu服务器12.0.4 x86未检测到virtualbox 4.3上的网络适配器
- vsftpd:530登录不正确
- 如何在Hyper-V虚拟机中修复失败的grub-pc软件包安装?
- 安装ubuntu-desktop后,ubuntu 12.04服务器上没有GUI
- 在16.04服务器上安装bugzilla:TEST-WARNING无法找到’httpd’进程的GID
- 双引导 – 安装Ubuntu桌面后,Grub2未检测到Ubuntu Server(10.4,64位)(12.04)
- 如何自动下载Ubuntu Server备份?