排查虚拟机的磁盘问题,下面3个命令基本上就可以解决大部分的问题了。
- du:disk usage,是通过搜索文件来计算每个文件的大小然后累加,du能看到的文件只是一些当前存在的,没有被删除的。他计算的大小就是当前他认为存在的所有文件大小的累加和。
- df:disk free,通过文件系统来快速获取空间大小的信息,当我们删除一个文件的时候,这个文件不是马上就在文件系统当中消失了,而是暂时消失了,当所有程序都不用时,才会根据OS的规则释放掉已经删除的文件,df记录的是通过文件系统获取到的文件的大小,他比du强的地方就是能够看到已经删除的文件,而且计算大小的时候,把这一部分的空间也加上了,更精确了。
- lsof:list open files,列出当前系统打开的文件,通过
lsof | grep delete
可以看到已经被删除但是仍然被应用程序占用的文件列表。
排查问题常用步骤:
(1)查看文件系统使用情况
df -h
(2)到使用较多的文件系统的挂在目录下,根据使用大小进行排序
du -h --max-depth=1 | sort -nr
关于du、df的详细使用,请参考:
https://blog.csdn.net/wisgood/article/details/17316663
关于linux文件系统、挂载相关的知识,请参考:
https://www.cnblogs.com/ljy2013/p/4620691.html