查找大文件 & 索引节点(inode)爆满 解决办法

经常遇到磁盘满或者文件节点满的情况,整理如下

查找文件

查找超过某个大小的文件, 如1G

find . -type f -size -size +1G

查找文件大小的时候,现实文件属性

find . -type f -size -size +1G -print0 | xargs -0 ls -l

显示具体大小并排序

find . -type f -size -size +1G -print0 | xargs -0 du -h | sort -nr 查找大目录并排序 du -h --max-depth=1 | sort -n 索引节点inode)爆满情况处理 背景

存储设备分为两部分,inode和block,block存数据,inode存储数据的信息,系统指令通过inode迅速找到block的位置,所以,如果inode被用完,那么即使存储设备还有空余空间,仍旧无法写入新数据。

所以,这种情况很可能是因为有大量的小文件所致,大量的小文件,可能存在在单个目录下,也可能存在在大量的目录下

少量目录有大量小文件

通过以下命令找出目录(文件越多,目录越大)

find / -type d -size +10M 大量目录有大量小文件 find */ ! -type l | cut -d / -f 1 | uniq -c

命令反复执行,直至找出具体的目录

删除方法

直接删除目录

find . -type f -exec rm {} \;

安装文件inode节点删除文件

find . -inum 342137 -exec rm -i {} \;

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wpsysg.html