inode使用率过高的解决方法

周末因为一个鸟程序的日志每条都疯狂输出到一个文件,直接把inode塞满了。记一下排查方法和删除大量文件所做的一些措施。

  1. 问题排查
for i in /*; do echo $i; find $i | wc -l; done

首先使用上面的这条命令一步步缩小范围,确定在哪个目录下inode的节点数过多异常。
最后我锁定到了日志目录,可是里面只有几个日志文件,在目录下直接运行这条命令也只能看到可见文件的inode数,在上一级目录却发现inode数为200多万。
在目录下运行ls -f命令发现有大量的隐藏文件,所以对这些文件需要进行删除操作。

  1. 文件的删除
    (1)很多人在博客上写用rsync这条命令。新建一个空文件夹,然后使用rsync进行同步并删除,使用之后inode的确被释放出来了,可是速度真的慢。并不像网上说的快的一批。大概一秒也就删了十个左右的文件。运行了好久没啥用。
    (2)使用find之后接上xargs rm -f,这个比起rsync还是快一点。
    *可是等上面的命令运行结束之后,文件夹里还是有文件,但是怎么都删不掉了。
    ls -f 显示memory exhausted,rm -rf ./运行一会儿就被killed了。

    (3)最后使用ls -f | xargs -n 1 rm -rf 这条命令进行了删除,速度看起来比之前的命令都更快一点。

所以我真的不知道为什么rsync并没有那些博客里说的那么快,可能我输入命令时的姿势不够正确吧

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
inode使用率满了时,意味着文件系统中的inode节点已经全部被占用。每个文件和目录在文件系统中都对应着一个inode节点,该节点保存着文件的元数据信息,包括文件的大小、创建时间、修改时间等。 当inode使用率满了,会导致无法再创建新的文件和目录。因为文件系统具有固定的inode数量上限,当已经使用的inode达到限制时,系统无法再进行新的文件和目录的创建操作。 要解决inode使用率满的问题,我们可以采取以下措施: 1. 清理不再使用的文件和目录:可以检查文件系统中的不再需要的文件和目录,进行清理操作。通过删除这些不再使用的文件和目录,可以释放使用的inode节点,从而提inode的空闲率。 2. 优化文件存储结构:可以尝试优化文件存储的结构,减少文件和目录占用的inode节点数量。例如,可以将一些小文件合并为一个大文件,或者采用压缩算法来减少文件占用的inode节点数量。 3. 调整文件系统参数:可以通过调整文件系统的参数来增加inode节点的数量。例如,可以使用该文件系统支持的inode数量更多的选项进行重新格式化,以提inode的数量上限。 总的来说,inode使用率满了意味着文件系统中的inode节点已经被占用完毕,需要通过清理和优化操作来释放或增加inode节点的数量,以解决无法创建新文件和目录的问题。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值