直接运行df -i可查看所有挂载点inode使用率,重点关注iused、ifree、iuse%和mounted on四列,iuse%达100%即inode耗尽,此时即使磁盘空间充足也无法创建文件。

直接运行 df -i 就能看到所有挂载点的 inode 使用率。
看懂 df -i 的输出重点
执行后关注四列:IUsed(已用 inode 数)、IFree(空闲 inode 数)、IUse%(使用百分比)、Mounted on(挂载点)。只要 IUse% 达到或接近 100%,就说明该挂载点 inode 耗尽——哪怕磁盘空间还很充裕,也无法新建文件。
- 别只查
df -i /,要运行完整命令df -i,因为 /var、/home、/tmp 等常是独立挂载点,各自有独立的 inode 池 - 忽略 tmpfs、devtmpfs、/proc、/sys 这类虚拟文件系统,它们的高 IUse% 属正常现象,不反映真实磁盘 inode 状态
- 某些精简系统(如 Alpine 或旧版容器)可能不显示 IUse% 列,此时可用
stat -f /查看 Inodes: 和 Inodes Free: 字段,手动计算使用率
快速定位问题挂载点
重点关注业务数据所在的分区,比如:
根据 package.json 中的 engines 字段自动检测 Node.js 版本需求,未安装 nvm 时自动安装并切换至对应版本。支持 Windows、macOS、Linux。适用于 Node.js 项目开发、版本切换和环境配置。
-
/var:日志、容器镜像层、邮件队列易堆积小文件 -
/tmp和/var/tmp:临时解压、缓存残留多见 -
/home:用户生成的缓存、.cache、.local/share 下的小文件
对某个路径单独检查,例如 df -i /var/log,它会自动归到 /var 所在的真实挂载点,不是查目录本身。
确认是否真被 inode 卡住
当遇到 No space left on device 错误时:
- 先跑
df -h看磁盘空间是否充足 - 再跑
df -i看对应挂载点的 IUse% 是否 ≥95% - 若前者有空间、后者接近 100%,基本可断定是 inode 耗尽
避免常见误判
不要用 ls -a | wc -l 统计大目录,文件数超几万就容易内存溢出或卡死;也不要被 ls /proc | wc -l 的巨大数字误导——/proc 是虚拟文件系统,不消耗磁盘 inode。










