一、问题现象
调用命令的时候,出现报错:cannot create temp file for here-document: No space left on device
从错误的日志来看,应该是磁盘空间不足了。但是执行df -h
看磁盘都是有剩余的:
上次遇到过一个类似的现象是,文件删除,但是容量没有归还。怀疑可能是同样的问题,但是执行lsof | grep delete
看并没有被删除但没有归还空间的文件。
经过询问大佬后,说可能是inode节点满了导致的,于是执行df -i
看了一下还真是:
可以看到,磁盘总共26w个inode节点全部使用完了。再通过find查找所有文件,确实是看到了26w个文件:
二、结论
经过下一步分析,发现是设备在进行profile抽样,大量的抽样文件打到了/var目录下,导致磁盘占满。
因此判断,问题原因是磁盘文件数量太多,占满了inode节点导致的。
评论