用 df -i 检查 inode 占用
磁盘明明还有空间却报“没有空间”?多半是 inode 被海量小文件耗尽了。
执行 df -i,哪个文件系统的 IUse% 接近 100%,说明问题出在 inode 而不是字节数。
01命令
命令
$ df -i02作用说明
每个文件、符号链接和目录都要占用一个 inode,而 inode 表在格式化时就已固定。inode 耗尽后写入同样报 'No space left on device',哪怕 df -h 显示还有几十 GB 空闲。df -i 按挂载点列出已用/空闲 inode,常见元凶是邮件队列、构建缓存、会话目录和堆满小文件的备份目录。
03风险
!注意: ext4 的 inode 表无法在线扩容,只能删掉足够多的小文件(find . -xdev -type f | wc -l 可帮助定位小文件聚集处)或迁移到别处。注意区分 df 输出里的字节使用率 Use% 和这里的 IUse%。
04撤销
✓无需撤销——该命令不会改变持久状态。
05来源
- df(1) — Arch Manual Pages依据: Same coreutils page: --inodes reports inode usage per filesystem instead of block usage.
- df(1) — Debian bookworm依据: Documents -i, --inodes: list inode information instead of block usage, with IUsed/IFree/IUse% columns.
最后验证: 2026-09-19 · 分类: 文件与文件夹