Linux 磁盘空间与目录大小:df、du
Linux 系统用久了,最常见的问题之一就是磁盘空间不足。你需要知道两个问题:
- 哪个文件系统快满了?
- 哪个目录占用了空间?
df:查看文件系统空间
查看磁盘空间:
df -h
输出类似:
Filesystem Size Used Avail Use% Mounted on
/dev/sda2 50G 31G 17G 66% /
tmpfs 1.9G 2.0M 1.9G 1% /run
-h 表示 human-readable,会用 K、M、G 显示容量。
你重点关注:
Filesystem:文件系统或设备。Size:总容量。Used:已用空间。Avail:可用空间。Use%:使用率。Mounted on:挂载点。
如果 / 使用率接近 100%,系统可能无法写日志、安装软件,甚至服务启动失败。
du:查看目录大小
查看当前目录下各文件和子目录大小:
du -h
只看总大小:
du -sh .
查看当前目录下一层内容大小:
du -h --max-depth=1
按大小排序:
du -h --max-depth=1 2>/dev/null | sort -h
找出大文件
在当前目录下查找大于 100 MB 的文件:
find . -type f -size +100M
如果要显示大小:
find . -type f -size +100M -exec ls -lh {} \;
这里的 {} 是 find 找到的文件,\; 表示这一段命令结束。你不需要马上记住所有细节,先知道它能把匹配结果交给 ls -lh 查看。