诡异的Linux磁盘空间被占用问题,根目录满了,df和du占用不一样【转】
新公司的测试机磁盘空间空余很小,日志很多,也很大,做个日志压缩脚本,在夜里4:30自动运行,第二天后发现磁盘空间又满了,只好删除没用的日志,清空空间,可诡异的是怎么删除没用的文件,空间还是占用很大。如图
用du 根目录下,发现这些文件加一块也达不到占用的空间大小。如图
我也有遇见过此类问题,一般都是重启完事,因为磁盘坏道损坏有可能导致此问题。
或 DF -i 查看inode使用率,inode不够用也会导致此问题。可看了inode也够用。
如图
这次我度娘了一下,”磁盘空间没释放“,按一篇文章干,解决了此问题。
记录如下:
昨天协助同事搞定了一起磁盘空间被”无形”占用的疑难杂症,简要记录以备忘.
1、用df 检查发现/根目录可用空间为0
[root@/]#df -h
2、用du检查发现各目录占用的空间都很少,有约3G的空间莫名其妙地丢了.
[root@/]# du -m –max-depth=1 |sort -gr
3、用lsof检查后才发现原因是,有文件被删除,而进程还活着,因而造成还占用空间的现象
[root@/]# lsof |grep delete
根据lsof列出的进程号,kill这些进程后,空间就释放出来了.
本文出自 “想飞却飞不高的猪” 博客,请务必保留此出处http://2483526.blog.51cto.com/2473526/798379
linux里的文件被删除后,空间没有被释放是因为在Linux系统中,通过rm或者文件管理器删除文件将会从文件系统的目录结构上解除链接(unlink).然而如果文件是被打开的(有一个进程正在使用),那么进程将仍然可以读取该文件,磁盘空间也一直被占用。
态为deleted为标记被删除,其实该文件并没有从磁盘中删除,类似windows下的回收站状态。
据称当有其他进程打开某文件时文件被删除,就会将该文件标记为deleted,并删除其目录节点。使用du查看时,因为没有该删除状态文件的节点信息,所以就不做统计,从而导致与df的结果不一致。
若要将deleted状态文件删除,则根据pid直接kill调相应进程即可。
找回被删除文件:
使用lsof处理文件恢复、句柄以及空间释放问题 - yexiaoxiaobai - SegmentFault
https://segmentfault.com/a/1190000000461077
诡异的Linux磁盘空间被占用问题,根目录满了,df和du占用不一样【转】的更多相关文章
- linux磁盘空间满的处理
Java中运行SQL插入数据时报错: linux磁盘空间满处理: 1.df -h 查看磁盘空间占用,实际上是查看磁盘块占用的文件(block) 2.分别查看输入以下命令 (面对磁盘满了,通过下列命令 ...
- Linux磁盘空间被未知资源耗尽【转】
Linux磁盘空间被未知资源耗尽 在linux中,当我们使用rm在linux上删除了大文件,但是如果有进程打开了这个大文件,却没有关闭这个文件的句柄,那么linux内核还是不会释放这个文件的磁盘空间, ...
- 云服务器 ECS Linux 磁盘空间满(含 innode 满)问题排查方法
问题描述 在云服务器 ECS Linux 系统内创建文件时,出现类似如下空间不足提示: No space left on device … 问题原因 导致该问题的可能原因包括: 磁盘分区空间使用率达到 ...
- Linux学习之CentOS(十七)-----释放 Linux 系统预留的硬盘空间 与Linux磁盘空间被未知资源耗尽 (转)
释放 Linux 系统预留的硬盘空间 大多数文件系统都会保留一部分空间留作紧急情况时用(比如硬盘空间满了),这样能保证有些关键应用(比如数据库)在硬盘满的时候有点余地,不致于马上就 crash,给监 ...
- Linux磁盘空间分析及清理(df、du、rm)
1.df磁盘空间查看 df可以查看一级文件夹大小.使用比例.档案系统及其挂入点. [root@oms ~]# df -Th Filesystem Type Size Used Avail Use% M ...
- linux磁盘空间使用问题
linux磁盘空间用满的处理方法 linux下空间满可能有两种情况 可以通过命令 df -h 查看磁盘空间占用,实际上是查看磁盘块占用的文件(block) df -i 查看索引节点的占用(Inod ...
- 查看Linux磁盘空间大小命令
发表于:2012-09-17 10:25 查看Linux磁盘空间大小 一.df 命令: df 是来自于coreutils 软件包,系统安装时,就自带的:我们通过这个命令可以查看磁盘的使用情况以及文 ...
- linux磁盘空间满了 但是没有大文件
很常见的一个问题 linux磁盘空间满了 但是没有大文件 解决思路: 1.用df 检查发现/根目录可用空间为0 [root@/]#df -h 2.用du检查发现各目录占用的空间都很少,有约3G的空间莫 ...
- Linux磁盘空间不足
Linux磁盘空间不足 描述:zabbix报警磁盘空间不足 1.登录服务器,查看磁盘空间 2.筛选空间占用的文件 层层筛选 3.将没用的文件删除 rm -f /opt/export/log/np_se ...
随机推荐
- html+css照片墙
html文件 <!DOCTYPE html><html lang="en"><head> <meta charset="UTF- ...
- Linux命令(二十二) 改变文件权限 chomd
目录 1.命令简介 2.常用参数介绍 3.实例 4.直达底部 命令简介 chmod 命令是用来改变文件权限或目录的命令,可以将指定文件的拥有着改为指定的用户或组,用户可以是用户名或用户ID,组可以是组 ...
- [知乎]关于WindowsXPx64SP2系统的说明
自己简单安装了下发现 winxpsp3x86的系统版本为: 然后windowsXPx64sp2的版本为: 作者:qpi667链接:https://www.zhihu.com/question/29 ...
- php 有意思的小题
/** * 你的是一个数字和一个字符串进行比较,PHP会把字符串转换成数字再进行比较.* PHP转换的规则的是:若字符串以数字开头,则取开头数字作为转换结果,若无则输出0.***/1)$a =”abc ...
- UML实践详细经典教程
面向对象的问题的处理的关键是建模问题.建模可以把在复杂世界的许多重要的细节给抽象出.许多建模工具封装了UML(也就是Unified Modeling Language™),这篇课程的目的是展示出UML ...
- DataSet和实体类的相互转换
最近做WInfrom项目,对表格和控件的数据绑定非常喜欢用实体类对象来解决,但是绑定以后 又怎么从控件中拿到实体类或者转换为datatable 或者dataset呢 经过在网上的搜索以及自己的改进 完 ...
- angular安装记录
1. 安装node.js,下载地址:https://nodejs.org/en/download/,详细的安装教程参考这里:https://blog.csdn.net/u010255310/artic ...
- 使用doxygen静态分析开源代码
doxygen是一款生成开源代码说明文件的工具,因为不需要编译源码,用作代码的分析也十分方便. 一.安装 sudo apt-get install graphviz sudo apt-get inst ...
- MT【192】又是绝对值函数
(2018浙江新高考联盟2018第三次联考填空压轴题) 已知$f(x)=x^2+x-2$,若函数$g(x)=|f(x)|-f(x)-2mx-2m^2$有三个不同的零点,则实数$m$的取值范围是____ ...
- 架构师成长之路1.2-多功能系统信息统计工具dstat
点击返回架构师成长之路 架构师成长之路1.2-多功能系统信息统计工具dstat dstat命令是一个用来替换vmstat.iostat.netstat.nfsstat和ifstat这些命令的工具,是一 ...