linux No space left on device由索引节点(inode)爆满引发500问题

 更新时间:2019年11月29日 14:51:00   作者:HIIT  
这篇文章主要介绍了linux No space left on device由索引节点(inode)爆满引发500问题,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

inode是什么?

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

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

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

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

最近网站编辑反应上传图片失败,网站页面也经常500错误

常规500错误查找https://www.jb51.net/article/175431.htm找了一圈发现配置没问题。

查看了nginx error错误日志发现磁盘空间满了

用df -h命令查看了一下磁盘使用情况,发现空间还有剩余。

发现问题:后来用df -i查看了一下索引节点(inode),发现已经用满(IUsed=100%),导致系统无法创建新目录和文件。

解决方法:删除无用的临时文件,释放inode。

可以查看 /tmp 目录下有很多临时文件。

也可以选择/var/spool/目录

输入一下命令查看/var/spool/下的文件个数

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

看到有200多万文件

 cd /var/spool/clientmqueue/  进入这个目录,删掉这些没用的文件,查看一下,60万文件吧,文件太多,

于是就用到了这个命令:

ls | xargs rm -rf

2或者这个命令

find . -name "*" | xargs rm -rf

可以分批的处理删除文件,如下图是删除后的效果:inode使用21%。好了

 

就是因为垃圾文件长时间没清理,导致清理文件花太多的时间,为了避免该类问题,最好对系统的垃圾文件进行定时清理,或者部署监视系统。

可以根据较大目录的文件占用情况,临时转移部分文件到占用磁盘较小的目录中。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • windows10 更新Ubuntu20.04 LTS的方法步骤

    windows10 更新Ubuntu20.04 LTS的方法步骤

    这篇文章主要介绍了windows10 更新Ubuntu20.04 LTS的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-06-06
  • linux下安装golang的方法

    linux下安装golang的方法

    这篇文章主要介绍了linux下安装golang的方法,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-09-09
  • CentOS 7 在vmware中的网络设置详细介绍

    CentOS 7 在vmware中的网络设置详细介绍

    这篇文章主要介绍了CentOS 7 在vmware中的网络设置详细介绍的相关资料,这里对主要网络问题进行了一一介绍及如何解决,需要的朋友可以参考下
    2016-11-11
  • Linux下简易进度条的实现代码

    Linux下简易进度条的实现代码

    下面小编就为大家带来一篇Linux下简易进度条的实现代码。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-01-01
  • Ubuntu解压zip文件乱码的解决方法

    Ubuntu解压zip文件乱码的解决方法

    最近在工作中遇到一个问题,在Ubuntu的系统下解压zip文件的时候居然出现了乱码,通过查找网上的资料终于解决了,所以想着把解决问题的两个方法分享给大家,方便有需要的朋友们能够参考借鉴,下面来一起看看吧。
    2016-11-11
  • centos6.5下安装zabbix2.4的教程图解

    centos6.5下安装zabbix2.4的教程图解

    这篇文章主要介绍了centos6.5下安装zabbix2.4的教程图解,本文分步骤给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2018-11-11
  • Linux学习教程之redis哨兵集群详解

    Linux学习教程之redis哨兵集群详解

    这篇文章主要给大家介绍了关于Linux学习教程之Redis哨兵集群的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用redis具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-07-07
  • apache ab工具页面压力测试返回结果含义解释

    apache ab工具页面压力测试返回结果含义解释

    这篇文章主要介绍了apache ab工具页面压力测试返回结果含义解释,ab工具的使用非常简单,但返回结果中的数据有点多,看不懂的话就需要看看本文了,需要的朋友可以参考下
    2015-07-07
  • 详解负载均衡实现一个域名对应多个IP地址

    详解负载均衡实现一个域名对应多个IP地址

    这篇文章主要介绍了详解负载均衡实现一个域名对应多个IP地址的相关资料,需要的朋友可以参考下
    2017-05-05
  • CentOS基于nginx反向代理实现负载均衡的方法

    CentOS基于nginx反向代理实现负载均衡的方法

    这篇文章主要介绍了CentOS基于nginx反向代理实现负载均衡的方法,简单分析了CentOS环境下nginx负载均衡的原理及nginx安装与相关设置操作技巧,需要的朋友可以参考下
    2018-04-04

最新评论