记一起inode爆满事件及分析脚本

简介: 记一起inode爆满事件及分析脚本

640.gif


最近很忙,公司基础架构重新设计,公司为了资源再利用。把所有的废旧机器包括台式机都需要重新整合利用,这就涉及到了诸多改造,主要设计ceph,vware,openstack几个大块的设计和组合。所以最近将更多的心血倾注在了这些内容的设计和实施上。


不过今天客户遇到了点小麻烦,让波哥帮助处理的。在这里跟大家分享一下。


一个跑五六年的生产服务器出现了inode爆满的情况。

当时忙波哥没有截图,在网上盗了个图给大家


640.jpg

看到没/data/web这个目录就是inode爆满,那么这个inode是什么?


理解inode,要从文件储存说起。


文件储存在硬盘上,硬盘的最小存储单位叫做"扇区"(Sector)。每个扇区储存512字节(相当于0.5KB)。


操作系统读取硬盘的时候,不会一个个扇区地读取,这样效率太低,而是一次性连续读取多个扇区,即一次性读取一个"块"(block)。这种由多个扇区组成的"块",是文件存取的最小单位。"块"的大小,最常见的是4KB,即连续八个 sector组成一个 block。

文件数据都储存在"块"中,那么很显然,我们还必须找到一个地方储存文件的元信息,比如文件的创建者、文件的创建日期、文件的大小等等。这种储存文件元信息的区域就叫做inode,中文译名为"索引节点"。每一个文件都有对应的inode,里面包含了与该文件有关的一些信息。


这个655360参数值可以调整,但是需要格式化盘。所以这事就别提了。既然已经无法再见文件的元数据了。咱们就开始删,那么删什么?在哪删?这对于一个已经五六年的老项目已经没有人能说清楚了。所以需要先统计各个文件夹下面的文件个数,好给我们一个问题处理的方向。


当时客户的服务器上跑了14个tomcat,他们都是一个/data的目录下,波哥不能一个一个去找。所以随手写了个小脚本帮助分析哪个目录底下文件个数最多。

代码比较少就贴在这了。


#! /bin/bash
base_pach="/data"
function file_num(){
for file in `ls $base_pach`
do
if [ -d $base_pach"/"$file ];then
echo $file
cd $base_pach/$file
echo $(pwd) $(ls -lR|grep "^-"|wc -l)   >> $base_pach/Info.txt
cd $base_pach
fi
done
}
file_num


实行之后会将分析结果写在/data/Info.txt中,里面的base_pach="/data"这个你们要替换成自己的目录哦。去最多的那个文件夹,再结合业务重点分析一下文件,或者迁到别的目录或者直接删掉。


find /data/aa/tomcat-7.0.33-mdm/logs/ -mtime +7 -type f -exec rm {} \;


类似上面的删除命令。

江湖规矩:内容对你有帮助,点赞、转发选一个!

波哥太忙了,我还得抓紧给你们录制视频去,真的好着急呀!感觉做完CI这段视频,然后还需要重写我们的kkitdeploy。这次要完全拥抱ansible!自己写轮子太浪费时间了!

哦!~帮波哥就等于帮你们

拜!~


目录
打赏
0
0
0
0
173
分享
相关文章
服务器磁盘爆满?别慌,教你轻松清理!
服务器磁盘空间告急?别慌!本文将教你如何快速识别并清理占用大量磁盘空间的文件和目录,优化日志文件,释放磁盘空间,恢复系统正常运行。适合服务器管理员和网站运营者。
475 0
 服务器磁盘爆满?别慌,教你轻松清理!
|
5月前
|
机器的coredump文件过多处理
【10月更文挑战第1天】
213 4
重复文件清除工具,硬盘内存拯救者。。。
重复文件清除工具,硬盘内存拯救者。。。
磁盘满的本质分析——磁盘空间满与inode节点满
磁盘满的本质分析——磁盘空间满与inode节点满
248 1
磁盘满的本质分析——磁盘空间满与inode节点满
shell脚本写出监控内存,磁盘使用率的脚本,超过阈值,用“wall”命令发警报
shell脚本写出监控内存,磁盘使用率的脚本,超过阈值,用“wall”命令发警报
245 0
记一次df -Th与du -sh空间大小不一致磁盘爆满问题的处理过程
记一次df -Th与du -sh空间大小不一致磁盘爆满问题的处理过程
397 0
记一次df -Th与du -sh空间大小不一致磁盘爆满问题的处理过程
段错误(核心已转储)问题的分析方法(未成功)
段错误(核心已转储)问题的分析方法(未成功)
276 0
inotify代码实现监控自身进程内存变化
inotify代码实现监控自身进程内存变化
237 0
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等