当前位置:首页 > 技术分享 > 正文内容

Linux/centos inode 占用100%的解决办法

admin4年前 (2021-07-23)技术分享3157


当你的 Linux 系统无法创建新文件时,有可能是你的磁盘满了,还有可能是你的磁盘的 inode 用光了,我们今天要说的就是后一种情况,要解决这个问题,只能是删除一些文件,但是一般情况下,其实是你的系统中的某个地方产生了大量的你并不需要的文件,你要做的就是找到他们并删除就可以了,我并不是让你删除你有用的文件,因为你一般不会有那么多有用的文件来把系统的 inode 用光。

什么是 inode ?

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

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

文件数据都储存在”块”中,那么很显然,我们还必须找到一个地方储存文件的元信息,比如文件的创建者、文件的创建日期、文件的大小等等。这种储存文件元信息的区域就叫做inode,中文译名为”索引节点”。

每一个文件都有对应的inode,里面包含了与该文件有关的一些信息。

如何查看系统的 innode 占用情况

df -i

如何查找那个目录下文件最多

首先切到根目录  /

cd /

然后执行

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

或者(以下命令可以任意目录执行)

for i in `ls -1A | grep -v "\.\./" | grep -v "\./"`; do echo "`find $i | sort -u | wc -l` $i"; done | sort -rn | head -10

这样会依次返回 / 目录下文件最多的目录,进入这个目录,再执行上述命令,就这样层层深入最终确定是那个目录文件最多


如何删除那个目录的的所有文件

一般情况下,如果这个目录下应该会有数以百万的文件,如果你直接用  rm -rf 目录名  的话效率会很低,可以用下面方法

find 目录 - type f -name '*' -print0 | xargs - 0 rm

时间可能会比较久,所以你最好开一个 screen 来处理

有可能是你遇到了下面的情况

/var/spool/postfix/maildrop 下面有很多文件该目录为cron计划任务时记录的日志文件

为了避免,可以执行  crontab -e

在最开头添加  MAILTO=""  保存 这样就不会记录日志了,然后  server crond restart  重启 crond

可以执行

cd /var/spool/postfix/maildrop

rm -rf * //命令删除所有文件如果太多这个命令会报错,可以用下面的命令

ls | xargs -n 10 rm -rf 循环删除


查询目录下文件数

ls -l | grep -v '^d' | wc -l

find . -maxdepth 1 -type f | wc -l

ls -l | awk 'BEGIN {c=0} /^-/ {c++} END {print c}'

————————————————

版权声明:本文为CSDN博主「ganggang4321」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/ganggang4321/article/details/89952626


扫描二维码推送至手机访问。

版权声明:本文由小刚刚技术博客发布,如需转载请注明出处。

本文链接:http://blog.bitefu.net/post/187.html

分享给朋友:

相关文章

微软版Ghost Win10:FFU映像备份和还原

微软版Ghost Win10:FFU映像备份和还原

在日常的维护中,系统的备份和还原是大家经常需要操作的事情。虽然Windows 10已经提供很多的工具,如系统还原、WIM备份/还原,VHD备份等。不过这些工具大多是基于文件的备份/还原。我们以前经常的使用的Ghost则是基于扇区的备份/还原...

超高性比的斐讯盒子T1,刷第三方YYF固件机教程超级详细版

超高性比的斐讯盒子T1,刷第三方YYF固件机教程超级详细版

家里面买了斐讯盒子T1,必不可少的就是刷机,刷机一直爽,一直刷机一直爽,这样的快乐一般人体会不到。原来斐讯盒子N1,T1,还有斐讯K2P路由器也变成了性价比超高的东东,而且众多大神也带来了超多可玩性非常高的固件和破解。楼主今天扒到了相关超高...

微软Windows 10升级密钥(例如家庭版升级为企业版) 不能用于激活系统

微软Windows 10升级密钥(例如家庭版升级为企业版) 不能用于激活系统

下面的密钥,是微软官方提供的,仅能用于Windows10系统版本的升级,比如从家庭版升级为专业版、专业版升级为企业版等。升级密钥不能用于激活系统,激活需要KMS或者数字权利,由于涉及到版权问题,在此不宜分享,请大家自行查找激活相关的内容。准...

Nginx服务崩溃自动重启脚本(监控进程服务并自动重启进程服务)脚本

有一台服务器运行着Ngin最近突然有一次崩溃,导致使用方当天无法访问网页端,然后我不得不登录服务器,检查各项服务,发现nginx崩溃了,于是重启Nginx,问题解决。后来为了防止Nginx再发生这种情况给运维带来的运维成本,于是写了一个脚本...

用CMD命令查询域名的DNS解析记录:A,NS,MX,CNAME,TXT

1、查询域名的A记录nslookup -qt=A bitefu.net当然查询A记录你直接用ping命令来ping域名也可以获得A记录。2、查询域名的NS记录nslookup -qt=NS bitefu.net3、查询域名的MX记录nslo...

安卓模拟器连接端口 及常用命令

下面是我总结和测试通过的:有的是搜集来的模拟器名称                     &nbs...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。