云服务器网:购买云服务器和VPS必上的网站!

Linux文件储存inode节点占用根目录/空间满了解决办法

【问题描述】 今天发现Linux下的业务系统运转异常,df -h 检查服务器发现磁盘根目录空间未满,df -i…

【问题描述】

今天发现Linux下的业务系统运转异常,df -h 检查服务器发现磁盘根目录空间未满,df -i 检查发现根目录文件满了。inode节点中,记录了文件的类型、大小、权限、所有者、文件连接的数目、创建时间与更新时间等重要的信息,还有一个比较重要的内容就是指向数据块的指针。

【问题原因】

Linux文件存储的根目录inode耗尽,小文件太多了,达到了最大值,导致虽然磁盘还有空间,但是已经不能再新建文件了。

【解决方案】

1. 查找根目录下每个文件夹使用的inode数量

for i in /*; do echo $i; find $i |wc -l|sort -nr; done

或者命令

du –inodes –max-depth=1 /

2. 发现/usr/占用最大,/usr下inode节点使用了4457827,继续使用命令查询/usr文件下哪个占用最大,依次排查,最终发现目录/usr/lib/fontconfig/cache 下inode 最多;

for i in /usr/lib/fontconfig/*; do echo $i; find $i |wc -l|sort -nr; done

或者命令

du –inodes –max-depth=1 /usr/lib/fontconfig/

3. 在最大的磁盘内,建立一个备份文件夹,并将cache缓存文件打包并备份;

mkdir /data/backup/ ##建立备份文件夹

cd /data/backup

nohup tar -zcvf cache.tar.gz /usr/lib/fontconfig/cache & ##将缓存文件打包备份,以防删除错误无法恢复

tail -f nohup.out ##检查窗口,没有滚动条了,即备份压缩完毕

4. 执行如下操作删除时间过长的即可;

cd /usr/lib/fontconfig/cache

find . -type f -mtime +100 -name “*.cache-7” -exec rm -rf {} \;  ##因为这里等待的时间太长了,建议加nohup参数

-mtime +100 –设置时间为100天前;

-type f –设置查找的类型为文件;

-name *.cache-7 –设置文件名以.cache-7结尾(根据自己磁盘文件的后缀更改);

-exec rm -f –查找完毕后执行删除操作。

本文来源:https://yuntue.com/post/223055.html | 云服务器网,转载请注明出处!

关于作者: yuntue

云服务器(www.yuntue.com)是一家专门做阿里云服务器代金券、腾讯云服务器优惠券的网站,这里你可以找到阿里云服务器腾讯云服务器等国内主流云服务器优惠价格,以及海外云服务器、vps主机等优惠信息,我们会为你提供性价比最高的云服务器和域名、数据库、CDN、免费邮箱等企业常用互联网资源。

为您推荐

发表评论

您的电子邮箱地址不会被公开。