linux inode已满解决方法

作者:Administrator 发布时间: 2025-10-01 阅读量:4

查看磁盘空间:

4c53afa8-3b41-4e71-bd66-e1a2837e32e1.png

空间剩余14G,可以排除空间已满的情况。导致文件生成失败还有另一个原因,就是文件索引节点inode已满。

264794a1-793e-4016-abe8-fc914e3e9c4a.png

inodes 占用100%,果然是这个问题。

解决方法:

1)查看到底哪个目录下面的文件最多

find / -xdev -printf '%h\n' | sort | uniq -c | sort -k 1 -n

最终发现/app目录最多。然后又进一步确定是/app/2022-06-08/ 目录下面有上百万个文件,随机查看一个文件,内容只有5行。

2)使用xargs命令来删除数量比较多的日志文件,释放inode

查找发现/app/2022-06-08/ 目录下有很多 xxx.log 日志文件。

ls -lt /app/2022-06-08/ | wc -l
4011517

进入/app/2022-06-08/ 目录,执行find -exec命令

sudo find /app/2022-06-08/ -type f -exec rm {} \;
或
sudo find /app/2022-06-08/ -type f -| xargs rm;

3)遍历寻找0字节的文件,并删除

除了/app 日志文件外,0字节的文件也会占用inode,应该也释放。

sudo find /home -type f -size 0 -exec rm {} \;

4)查看inode变化

删除后,inode 的使用量减少为19%,可以正常使用了。

ef19aae2-b9ef-44cd-8d3d-0cc8877d7d24.png