013 df命令
命令说明
df(disk free)用于查看文件系统(磁盘分区)的总容量、已用空间、可用空间及挂载点,是排查磁盘满问题的第一条命令。
语法
df [选项]... [文件]...
常用参数
| 参数 | 说明 |
|---|---|
| -h | 以人类可读单位(K/M/G/T)显示,最常用 |
| -H | 以 1000 进制(而非 1024)显示 |
| -a | 显示所有文件系统,包括大小为 0 的 |
| -i | 显示 inode 使用情况而非空间大小 |
| -T | 同时显示文件系统类型(ext4、xfs、tmpfs 等) |
| -x 类型 | 排除某类文件系统,如 -x tmpfs |
| --total | 在末尾显示总计 |
使用示例
$ df -h
以易读方式查看所有分区使用情况
$ df -Th
同时显示文件系统类型
$ df -i
查看 inode 使用率(小文件过多时会耗尽)
$ df -h /data
查看 /data 所在分区的使用情况
$ df -x tmpfs -x devtmpfs
排除临时文件系统,只看真实磁盘
实用技巧
- df 显示的是分区整体占用;du 显示的是目录占用。两者不一致时,多半是有已删除但被进程占用的文件。
- 磁盘 100% 但 du 统计远小于此:用 lsof | grep deleted 找出被占用的已删文件并重启相关服务。
- inode 用尽(df -i 显示 100%)同样会导致无法创建文件,即使磁盘空间充足;常见于大量小文件场景。
- 配合 grep 只看某分区:df -h | grep -E "Filesystem|/dev/sda"。