cannot create temp file for here-document: No space left on device

马谦马谦马谦 2020年3月27日22:23:38 发表评论
文章最后编辑于:2020-3-27 22:25:14

一、问题现象

调用命令的时候,出现报错:cannot create temp file for here-document: No space left on device

从错误的日志来看,应该是磁盘空间不足了。但是执行df -h看磁盘都是有剩余的:

cannot create temp file for here-document: No space left on device

上次遇到过一个类似的现象是,文件删除,但是容量没有归还。怀疑可能是同样的问题,但是执行lsof | grep delete看并没有被删除但没有归还空间的文件。

经过询问大佬后,说可能是inode节点满了导致的,于是执行df -i看了一下还真是:

cannot create temp file for here-document: No space left on device

可以看到,磁盘总共26w个inode节点全部使用完了。再通过find查找所有文件,确实是看到了26w个文件:

cannot create temp file for here-document: No space left on device

二、结论

经过下一步分析,发现是设备在进行profile抽样,大量的抽样文件打到了/var目录下,导致磁盘占满。

因此判断,问题原因是磁盘文件数量太多,占满了inode节点导致的。

本文共执行59次查询,耗时0.339秒!
马谦马谦马谦

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: