彻底解决Linux索引节点(inode)用满导致故障的方法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了彻底解决Linux索引节点(inode)用满导致故障的方法相关的知识,希望对你有一定的参考价值。

登录到服务器上df -i
一看/路径下96%而数据目录/data下才用了30%故初步判断生成的数据量正常可能是一些系统产生的文件把根路径占满了

于是乎在执行以下命令查看根路径下各个文件夹的文件数


    for i in /*; do echo $i; find $i |wc -l|sort -nr; done   

数文件数超过10W的有两个/data我们的数据分区确认数据量正常和/var

/data 13W+文件

/var下70W+文件

楼主linux水平有限于是把/var下的目录一个个的执行了上面的命令



    for i in /var/cache; do echo $i; find $i |wc -l|sort -nr; done   
    for i in /var/db; do echo $i; find $i |wc -l|sort -nr; done   
    ........  

重点来了当执行到下面的时候


    for i in /var/spool/; do echo $i; find $i |wc -l|sort -nr; done   

文件夹里有70W+文件

于是重复上述步骤终于找到了罪魁祸首



    for i in /var/spool/postfix/maildrop/; do echo $i; find $i |wc -l|sort -nr; done   

/var/spool/postfix/maildrop/下有67W+文件


楼主百度了一把发现了这篇文章http://www.shangxueba.com/jingyan/121368.html

于是乎执行rm -rf ./* 竟然报错


只能来大招了。



    find . -name "*" | xargs rm -rf   

10S后成功收到报警解除的邮件
胜利处理完困扰我好几天的问题

以上是关于彻底解决Linux索引节点(inode)用满导致故障的方法的主要内容,如果未能解决你的问题,请参考以下文章

Linux索引节点(Inode:no space for device)用满导致的一次故障

Linux的inode的理解

磁盘空间不足?看看是不是inode满了

Linux ❀系统索引节点inode详解

Linux ❀ 系统索引节点inode详解

索引节点inode详解