Mac系统“磁盘空间充足却无法创建新文件”极可能是Inode耗尽所致,需用df -ih命令查看各挂载点IUse%列,若接近100%则无法新建文件,图形界面无法显示Inode信息。

Mac系统提示“磁盘空间充足却无法创建新文件”,极可能是Inode耗尽导致,尤其在日志目录、缓存文件夹或node_modules堆积大量小文件时。此时必须检查Inode使用率,而非仅看磁盘容量。
用终端命令df -ih直接查看所有挂载点的Inode使用情况
这一步操作起来很简单,直接在终端里敲一行命令就能获得全局视图。
打开“应用程序”→“实用工具”→“终端”→输入:df -ih → 回车。
输出表格中重点关注“IUse%”列:若某宗卷该值接近100%,哪怕“Avail”列显示还有几十GB空间,也无法新建任何文件或目录;常见高危路径包括/var/log、~/Library/Caches、~/Projects/*/node_modules。
注意:df -ih默认以人类可读单位(K/M/G)显示Inode总数与剩余数,比纯数字更直观;但不加-h参数也能查,只是数值会以千为单位显示,容易误判。
精准定位某个目录所在宗卷的Inode余量
当你怀疑特定项目目录(如iCloud Drive子文件夹或外置NTFS硬盘)触发了Inode瓶颈,需绕过df的全局汇总,直取该路径底层文件系统统计。
方法一:使用df命令指定路径
在终端中执行:df -ih /path/to/your/folder(将/path/to/your/folder替换为实际路径,例如df -ih ~/Library/Mobile\ Documents/com~apple~CloudDocs)→ 回车。
方法二:用statfs系统调用(适用于开发调试场景)
若需在脚本或Go程序中动态获取,可调用syscall.Statfs:传入任意路径(如"."),结构体statfs.Files和statfs.Ffree字段分别返回该路径所在文件系统的Inode总数与空闲数——这与df -i底层逻辑一致,但跳过了shell解析层。
【关键前提】路径必须存在且可访问,否则statfs会返回错误;对符号链接需确保目标路径有效,否则可能查到错误宗卷。
图形界面无法查看Inode,必须依赖终端
系统设置、关于本机、磁盘工具、访达状态栏——所有原生GUI工具均不提供Inode相关信息。它们只统计字节级空间,而Inode是元数据资源,由APFS或HFS+文件系统独立管理。
若你刚清空了大量小文件但仍无法创建新文件,不要反复刷新“储存空间”环形图;立刻打开终端执行df -ih,这是唯一能确认Inode是否恢复的手段。
这一步没有替代方案,图形界面确实做不到。


















