最新消息: USBMI致力于为网友们分享Windows、安卓、IOS等主流手机系统相关的资讯以及评测、同时提供相关教程、应用、软件下载等服务。

排查并解决磁盘满了问题

IT圈 admin 3浏览 0评论

排查并解决磁盘满了问题

文章目录

  • 问题出现背景
  • 问题解决办法
  • 涉及知识点

问题出现背景

  当磁盘上存储大量数据的时候,很容易就会造成磁盘使用率高,影响进程的正常执行

问题解决办法

 1.在可能导致磁盘满的根路径执行du --max-depth=1,查看该目录下各文件(夹)的磁盘占用情况
 2.进入占比高的目录,继续执行du --max-depth=1,依次直到找到造成磁盘满了的原因
 3.既然找到了原因,那么肯定是需要进行处理的,一般我们都会选择一些可以删除的数据进行删除操作。如果是一些无法删除的数据,可以先在hdfs或者其他系统上做一个备份,然后进行删除
 4.删除之后,使用du -sh查看磁盘占用情况。
如果降下来了,再使用df -h进行查看。如果两个命令执行完之后磁盘占用都降下来了,那么就说明问题已解决
 5.如果执行du -sh的时候磁盘使用率低。但是使用df -h的时候,磁盘的使用率高。那就说明是刚刚删除的文件中,有的被进程所引用,虽然文件被删除,但是实际占用的磁盘仍然还是占用。这里可能会疑惑du和df之间的不同表现,可以看下面的知识点部分
 6.当出现第5步的情况的时候,可以考虑一下刚刚删除的文件被哪个进程引用了,可以试着重启服务

涉及知识点

  1. 上面使用到了du 和df的相关命令
  2. du --max-depth=1:输出当前目录下各文件(目录)的大小,仅限于当前目录下,不递归
  3. du -sh:以合适的单位(K,M,G)显示当前目录的总计大小
  4. df -h:以合适的单位(K,M,G)显示当前目录在文件系统中的使用大小
  5. du和df的区别:
    du统计的是指定目录下子目录大小的累计和,可以理解统计的只是当前状态下可以看得到的,那么如果一个文件被删掉了,就不会被统计到
    df是从文件系统的角度进行统计,即统计的是inode的使用率。当删除文件的时候,如果这个文件是被其他进程打开文件句柄的话,那么就表示该inode就是被引用状态。根据系统的引用清除规则,并不会删除对应磁盘数据。所以一个文件句柄引用了被删除的文件,状态会是deleted。使用df进行统计的时候,依然可以看得到

排查并解决磁盘满了问题

文章目录

  • 问题出现背景
  • 问题解决办法
  • 涉及知识点

问题出现背景

  当磁盘上存储大量数据的时候,很容易就会造成磁盘使用率高,影响进程的正常执行

问题解决办法

 1.在可能导致磁盘满的根路径执行du --max-depth=1,查看该目录下各文件(夹)的磁盘占用情况
 2.进入占比高的目录,继续执行du --max-depth=1,依次直到找到造成磁盘满了的原因
 3.既然找到了原因,那么肯定是需要进行处理的,一般我们都会选择一些可以删除的数据进行删除操作。如果是一些无法删除的数据,可以先在hdfs或者其他系统上做一个备份,然后进行删除
 4.删除之后,使用du -sh查看磁盘占用情况。
如果降下来了,再使用df -h进行查看。如果两个命令执行完之后磁盘占用都降下来了,那么就说明问题已解决
 5.如果执行du -sh的时候磁盘使用率低。但是使用df -h的时候,磁盘的使用率高。那就说明是刚刚删除的文件中,有的被进程所引用,虽然文件被删除,但是实际占用的磁盘仍然还是占用。这里可能会疑惑du和df之间的不同表现,可以看下面的知识点部分
 6.当出现第5步的情况的时候,可以考虑一下刚刚删除的文件被哪个进程引用了,可以试着重启服务

涉及知识点

  1. 上面使用到了du 和df的相关命令
  2. du --max-depth=1:输出当前目录下各文件(目录)的大小,仅限于当前目录下,不递归
  3. du -sh:以合适的单位(K,M,G)显示当前目录的总计大小
  4. df -h:以合适的单位(K,M,G)显示当前目录在文件系统中的使用大小
  5. du和df的区别:
    du统计的是指定目录下子目录大小的累计和,可以理解统计的只是当前状态下可以看得到的,那么如果一个文件被删掉了,就不会被统计到
    df是从文件系统的角度进行统计,即统计的是inode的使用率。当删除文件的时候,如果这个文件是被其他进程打开文件句柄的话,那么就表示该inode就是被引用状态。根据系统的引用清除规则,并不会删除对应磁盘数据。所以一个文件句柄引用了被删除的文件,状态会是deleted。使用df进行统计的时候,依然可以看得到

与本文相关的文章

发布评论

评论列表 (0)

  1. 暂无评论