首页 > 系统相关 >Linux中inode使用率满了解决办法【转】

Linux中inode使用率满了解决办法【转】

时间:2023-04-04 11:36:48浏览次数:45  
标签:文件 postfix spool maildrop Linux var 使用率 inode

一位群友分区存储空间还没有用完,但是,却不能创建目录和文件了,查看/分区的,结果发现Inodes文件数量被占满了,Inodes使用率过高达到了100%。命令如下:

原因:

大多数情况下是由于文件数量过多所引起的,只需要删除无用的就好了。

解决方法

1、查看并删除临时文件

ls -lt /tmp | wc -l
find /tmp -type f -exec rm {} \;

2、删除0字节的文件,这些文件也会占用inode

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

3、查找大文件,并进行适当删除

根据我的个人经验,前两个占用inode的使用率很少,主要是查找大文件这个步骤,可以查看哪些占用inode使用率最高?具体如下:

第一步:查看某个目录下的文件数量

我这里为什么要循环/var/*?这是根据个人经验吧!毕竟你的服务器情况只有自己最清楚。

[root@node2 ~]# for i in /var/*; do echo $i; find $i |wc -l; done 

结果:我们通过查看,只有 /var/spool/ 目录下文件数量最多。

第二步:按照第一步的思路,继续查看 /var/spool/ 目录下的文件数量

[root@node2 ~]# for i in /var/spool/*; do echo $i; find $i |wc -l; done

结果:发现 /var/spool/postfix/ 目录下有1889027的文件数。
---------

 

原因:

问:我这里为什么 /var/spool/postfix/ 下面会生成那么多的文件数量?

答:这是因为crontab定时任务所导致的,定时任务执行后发送告知联系人,但是发送失败就会在postfix下生成,所有就产生了这么多的垃圾文件。

第三步:既然知道了原因,那就删除多余的垃圾文件,方法如下:

首先,进入到miaildrop目录下进行清理这些无用文件

[root@node2 maildrop]# cd /var/spool/postfix/maildrop
[root@node2 maildrop]# pwd
/var/spool/postfix/maildrop
[root@node2 maildrop]#

其次,我先通过 rm 直接删除,结果报错参数列表太长:

[root@node2 maildrop]# rm -rf *

最后,我只好使用类似于 ls | xargs -n 500 rm -rf 的方式进行删除:

[root@node2 maildrop]#  ls | xargs -n 500 rm -rf

第四步:再次查看Inodes文件数是否被释放?Inodes使用率是否还是100%?

总结:

Linux中Inodes满了的原因有很多,不同的场景情况也是不一样的,Inodes占用100%是很正常的,也会经常遇见这种情况。上面所有的操作步骤只是给大家一个解决问题的思路,哪怕你以后再遇到inode使用率满了这个类似的问题,只要按照此文章原理,相信你一定可以去自己解决的。

 

/var/spool/postfix/maildrop 小文件太多造成inode索引使用完解决办法

问题表现和检查:

1.运行df -i / 查看inode使用是否满;

2.查看/var/spool/postfix/maildrop是否有非常多的小文件,ls直接卡死等情况;

解决:

1.cd /var/spool/postfix/maildrop; ls | xargs rm -rf;

2.vi /etc/crontab
;将‘MAILTO=root’替换成‘MAILTO="",然后service crond restart即可。如不行crontab -e
第一行增加MAILTO=""

 

  • 方法二:
如果是我们不关心的备注型等输出我们完全可以让其输出到 /dev/null 这样就不会因为发送失败到导致在/var/spool/postfix/maildrop下面产出什么文件。

例如:

*/10 * * * * /tmp/test.sh >/dev/null 2>&1

经过测试发现果然没有再出现新增的文件。当然如果输出内容有需要保存的话,可以输出到指定文件。比如下面这样:

*/10 * * * * /tmp/test.sh >/log/test.log

 

本人倾向于第二种方案,虽然都解决问题,但第一种改变了需要发送的机制,造成所有的都不能接收到邮件,且需要重启crond服务,对执行crontab比较多的,有一定影响;第二种感觉比较灵活,且改完立即生效。

 

转自

Linux中inode使用率满了解决办法( inode节点满处理方法) - 知乎
https://zhuanlan.zhihu.com/p/473796938

(45条消息) /var/spool/postfix/maildrop 出现大量文件原因和解决办法_乐谱的博客-CSDN博客
https://blog.csdn.net/weixin_41284138/article/details/122926274

标签:文件,postfix,spool,maildrop,Linux,var,使用率,inode
From: https://www.cnblogs.com/paul8339/p/17285811.html

相关文章

  • linux 系统安装 zookeeper
     下载zookeeper安装包http://mirror.bit.edu.cn/apache/zookeeper/选择3.4.14版本   上传到服务器,并解压到指定目录tar-zxvfzookeeper-3.4.14.tar.gz-C/usr/local/进入/usr/local/zookeeper/config目录1、复制文件重命名cpzoo_sample.cfg......
  • 混沌工程之ChaosMesh使用之一模拟CPU使用率
    今天来玩一下混沌工程的开源工具之一的ChaosMesh。ChaosMesh的目标是要做一个通用的混沌测试工具。ChaosMesh是要和k8s结合使用的,其中用了云原生的能力。 ChaosMesh的基本工作流原理图:从原理图上可以看出大概的工作流程:用户用yaml文件或k8s客户端创建更新Chaos对象。Chaos-mesh......
  • XXL-JOB Linux环境部署安装实战
    一、下载XXL-JOB 下载源码: https://github.com/xuxueli/xxl-job 以2.3.0的版本为例:https://github.com/xuxueli/xxl-job/archive/refs/tags/2.3.0.tar.gz xxl-job文档: https://www.xuxueli.com/xxl-job/二、依赖环境 因为需要打包,所以要有Maven环境 因为部署的是jar......
  • Select all in address bar of firefox (Ubuntu, Linux Mint) with a single click
    Toomanythingstomodifyafterinstallingubuntuorlinuxmint.OneoftheannoyingthingisClickingtheaddressbaronFirefox(providedwithUbuntu,linuxmint)doesn’tselectthewholetextinit.Itsaverysmallproblem.Butitssoannoyingthat,t......
  • 基于Vmware安装的Linux配置静态IP
    背景说明作为一位服务端开发者,我们日常工作中所用到的软件都是运行在Linux环境下,Wmware等虚拟机软件可以快速帮我们搭建一套Linux环境。但是默认搭建的Linux环境IP地址是动态的,较为不方便,所以本文探讨如何在Wmware提供的不同网络模式下配置静态IP。环境准备win10wmwarecento......
  • Linux如何让Redis-server在后台运行
    文档课题:Linux如何让Redis-server在后台运行.系统:rhel7.9数据库:redis6.2.61、问题描述redis安装后运行reids-server命令,内容显示如下.此时在该session中无法执行其它操作,当执行ctrl+c关闭界面后才能输入其它命令,但此时redis进程也会被关闭.[[email protected].......
  • linux 安装redis
       一、准备好gcc环境yuminstallgcc-c++复制代码出现以下日志,代表安装成功。Packagegcc-c++-4.8.5-39.el7.x86_64alreadyinstalledandlatestversionLoadedplugins:fastestmirrorDeterminingfastestmirrorsbase......
  • LINUX 放开端口,防火墙操作
    防火墙操作:查看防火墙状态systemctlstatusfirewalld、firewall-cmd--state暂时关闭防火墙systemctlstopfirewalld永久关闭防火墙(慎用)systemctldisablefirewalld开启防火墙systemctlstartfirewalld开放指定端口firewall-cmd--zone=public--add-port=8080/tcp--perman......
  • S5PV210开发 -- Linux dd命令
    昨天群里有人询问,为什么破坏BootLoader破坏不掉。出现错误:dd:writing'/dev/mtdblock0':Operationnotpermitted我说需要插着SD卡才可以。(这个也不对,不插SD卡也可以,那这个错误还是没有搞清楚)然后我们来看一下它操作指令:  busyboxddif=/dev/zeroof=/dev/mmcblk0bs=512......
  • linux 系统安装 zookeeper
      下载zookeeper安装包http://mirror.bit.edu.cn/apache/zookeeper/选择3.4.14版本   上传到服务器,并解压到指定目录tar-zxvfzookeeper-3.4.14.tar.gz-C/usr/local/进入/usr/local/zookeeper/config目录1、复制文件重命名cpzoo_sample.c......