inodes占用100%的问题

/dev/mapper/VolGroup00-LogVol00 满了关于inodes占用100%的问题及解决方法

 

 

转自:http://blog.sina.com.cn/s/blog_4d10f5530102vt5b.html

 

 

/dev/mapper/VolGroup00-LogVol00 是逻辑卷/根目录才是实际挂载的目录。根分区都塞满了,自己清理一些垃圾文件或者加硬盘在线扩容、主要看看/tmp /var目录下的一些临时文件和一些日志文件,选择些的进行清理给你个命令`看下哪个目录下东西大find / -size +10M -exec ls -lh {} \;

df -i

​for i in ./*; do echo $i; find $i | wc -l; done  查文件数量



今天nagios报警,一台服务器的disk满了,使用du -sh * 或 du-sh /*查看目录的大小,查找占用空间大的目录/var/spool/clientmqueue....

然后我就想/var/spool/clientmqueue这个目录干嘛用的,纠结了半天,谷歌了下,原来/var/spool/clientmqueue是如果系统中有用户开启了cron,而cron中执行的程序有输出内容,输出内容会以邮件形式发给cron的用户,而sendmail没有启动所以就产生了这些文件。

服务器上确实有cron定时执行数十个脚本,而且都没有设置输出定向,日积月累的文件都被保存在/var/spool/clientmqueue目录下面乐= =.

解决方法:在cron的自动执行语句后加上> /dev/null 2>&1例:4 3 * * * /usr/bin/w > /dev/null 2>&1这样就OK拉,就不会写到那个目录下了....

在这里说一点,/var/spool/clientmqueue目录文件太多,rm -rf *时候会提示:

“-bash: /bin/rm: Argument list too long“..意思是参数太长,rm干不了。可以用ls | xargs rm-f这个命令将/var/spool/clientmqueue目录下所有文件删除。

OK。清理完毕~



情况描述:今天我们邮件服务器收发不了邮件了,而且连接到服务器上开启服务都开不了,起始以为磁盘空间不足,df 看了一下

发现空间是足够的,然后df -i 查看了下inodes,发现根目录下的inodes值使用率为100%了

解决方法:通过以下脚本进行检查,查看到底哪个目录下面的文件最多:

for i in /*; do echo $i; find $i | wc -l; done(如果确定是某个目录下面,则/转换为该目录绝对路径,如/var/spool,则使用for i in /var/spool/*; do echo $i; find $i | wc -l; done)

最终发现/var/soppl目录最多。然后又进一步确定是/var/spool/amavisd/quarantine目录下面有上百万个文件,机器已经无法正常显示了,后来百度查看了下这个目录是邮件服务器,处理垃圾邮件活病毒邮件隔离的,明白原因了,删除该目录下所有文件;使用xargs命令来删除数量比较多的文件:

ls | xargs -n 10 rm -rf

执行了大约10多小时之后,最终解决问题。


操作命令:

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

[root@L-AP-3-37 ~]# cd /var/spool/clientmqueue

[root@L-AP-3-37 clientmqueue]# ls | xargs rm -f

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在Linux文件系统中,每个文件都有一个相关的inode节点,该节点记录了文件的元数据信息,例如文件的所有者、读写权限、创建时间、修改时间、文件大小等等。而文件系统本身也有一个超级块(superblock),用于记录文件系统的元数据信息,例如文件系统的大小、块大小、inode数量等等。 Blocks(块)和Inodes(索引节点)是文件系统中的两个重要概念: - Blocks:文件系统中的数据存储单位,文件的内容被分割成多个块存储在不同的物理块中。块的大小由文件系统的块大小(block size)决定,通常为4KB、8KB或16KB等等。文件的大小是以块为单位进行计数的,每个块可以存储一个或多个文件的内容。文件系统使用块来管理存储空间,可以根据需要动态分配块,以满足文件的大小需求。 - Inodes:索引节点是文件系统中的另一个重要概念,每个文件都有一个对应的inode节点,inode记录了文件的所有元数据信息,例如文件的所有者、读写权限、大小、创建时间、修改时间等等。文件系统使用inode来管理文件,可以通过inode节点来查找文件的元数据信息,以及文件所占用的块的位置等等。文件系统中的inode数量是固定的,一旦inode数量用尽,就无法创建新的文件。 在Linux系统中,可以使用`df -i`命令查看文件系统的inode使用情况,例如: ``` $ df -i / Filesystem Inodes IUsed IFree IUse% Mounted on /dev/sda1 655360 80766 574594 13% / ``` 其中,`Inodes`表示inode总数,`IUsed`表示已使用的inode数量,`IFree`表示空闲的inode数量,`IUse%`表示inode使用率。如果inode使用率接近100%,则可能会导致无法创建新文件的问题

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值