热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

文件删除rm后,dfh空间仍占用(dfh与du不一致问题)

df与du命令不一致问题这几天因为电脑内存过小,需要去经常删文件,遇到了这个问题,即文件删除不释放空间得问题。我们通过df-h和du命令去查看空间。在进行文件删除时,会出现不一致得

df与du命令不一致问题

这几天因为电脑内存过小,需要去经常删文件,遇到了这个问题,即文件删除不释放空间得问题。我们通过df -h和du命令去查看空间。在进行文件删除时,会出现不一致得问题。用du查发现文件删除,用df查,发现空间没有被释放。下面就看一下这两个命令的不同,和问题的解决办法。

1.df和du命令

  1. du工作原理
    du命令会对待统计文件逐个调用fstat,获取文件的大小。基于文件获取,可以获取多个分区的,可以跨分区操作,但文件过多时,逐个命令会比较慢,可以采取du -h --max-depth=1 /文件夹去逐层查找文件。
  2. df工作原理
    df命令使用statfs系统调用,是基于分区元数据的文件获取,是针对整个分区的。
  3. du与df不一致
    当出现不一致时,是进行了文件删除操作。当一个文件删除后,文件系统目录中已经不存在,du命令将不再统计。此时若还有进程持有该文件的句柄,那么该文件没有真正从磁盘中删除,仍然占用内存空间。df命令仍然会统计这个文件。

2.解决方法

当由于文件删除,发现空间没有被释放,即df和du命令不一致时:
使用lsof -n | grep deleted命令查看处于deleted状态的文件,即表示文件被删除,但仍有进程使用这个文件,导致内存空间没有被释放。
《文件删除rm后,df -h空间仍占用(df -h与du不一致问题)》找到占用该文件的进程id,删除该pid,即可释放内存空间。
如我因为删除日志文件没有释放空间。
《文件删除rm后,df -h空间仍占用(df -h与du不一致问题)》第一列数字为对应的进程号,kill -9杀掉该进程即可。
##或者重启电脑,关闭所有进程,也能释放资源。


推荐阅读
  • 面试经验分享:华为面试四轮电话面试、一轮笔试、一轮主管视频面试、一轮hr视频面试
    最近有朋友去华为面试,面试经历包括四轮电话面试、一轮笔试、一轮主管视频面试、一轮hr视频面试。80%的人都在第一轮电话面试中失败,因为缺乏基础知识。面试问题涉及 ... [详细]
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • Linux如何安装Mongodb的详细步骤和注意事项
    本文介绍了Linux如何安装Mongodb的详细步骤和注意事项,同时介绍了Mongodb的特点和优势。Mongodb是一个开源的数据库,适用于各种规模的企业和各类应用程序。它具有灵活的数据模式和高性能的数据读写操作,能够提高企业的敏捷性和可扩展性。文章还提供了Mongodb的下载安装包地址。 ... [详细]
  • 第四讲ApacheLAMP服务器基本配置Apache的编译安装从Apache的官方网站下载源码包:http:httpd.apache.orgdownload.cgi今 ... [详细]
  • 进入配置文件目录:[rootlinuxidcresin-4.0.]#cdusrlocalresinconf查看都有哪些配置文件:[rootlinuxid ... [详细]
  • 本文介绍了Java工具类库Hutool,该工具包封装了对文件、流、加密解密、转码、正则、线程、XML等JDK方法的封装,并提供了各种Util工具类。同时,还介绍了Hutool的组件,包括动态代理、布隆过滤、缓存、定时任务等功能。该工具包可以简化Java代码,提高开发效率。 ... [详细]
  • 集成电路企业在进行跨隔离网数据交换时面临着安全性问题,传统的数据交换方式存在安全性堪忧、效率低下等问题。本文以《Ftrans跨网文件安全交换系统》为例,介绍了如何通过丰富的审批流程来满足企业的合规要求,保障数据交换的安全性。 ... [详细]
  • 本文介绍了在Android设备上使用命令行来抓取log文件的方法,包括检查设备连接、清除log缓存、选择存放目录、运行程序等步骤,最后可以在桌面上生成log文件。 ... [详细]
  • centos安装Mysql的方法及步骤详解
    本文介绍了centos安装Mysql的两种方式:rpm方式和绿色方式安装,详细介绍了安装所需的软件包以及安装过程中的注意事项,包括检查是否安装成功的方法。通过本文,读者可以了解到在centos系统上如何正确安装Mysql。 ... [详细]
  • Redis API
    安装启动最简启动命令行输入验证动态参数启动配置文件启动常用配置通用命令keysbdsize计算key的总数exists判断是否存在delkeyvalue删除指定的keyvalue成 ... [详细]
  • 本文介绍了使用readlink命令获取文件的完整路径的简单方法,并提供了一个示例命令来打印文件的完整路径。共有28种解决方案可供选择。 ... [详细]
  • top命令使用方法及解读
    本文介绍了top命令的使用方法和解读,包括查看进程信息、系统负载、内存状态、CPU占用等内容。通过top命令可以持续观察系统上运行的进程,并了解系统负载情况,及时关闭一些进程以减轻系统负担。同时,还介绍了top命令的快捷键和安全模式启动方法。通过本文的学习,读者可以更好地使用top命令来管理系统进程。 ... [详细]
  • 本文详细介绍了在Linux虚拟化部署中进行VLAN配置的方法。首先要确认Linux系统内核是否已经支持VLAN功能,然后配置物理网卡、子网卡和虚拟VLAN网卡的关系。接着介绍了在Linux配置VLAN Trunk的步骤,包括将物理网卡添加到VLAN、检查添加的VLAN虚拟网卡信息以及重启网络服务等。最后,通过验证连通性来确认配置是否成功。 ... [详细]
  • 这个问题困扰了我两天,卸载Dr.COM客户端(我们学校上网要装这个客户端登陆服务器,以后只能在网页里输入用户名和密码了),问题解决了。问题的现象:在实验室机台式机上安装openfire和sp ... [详细]
  • Linux ls只显示以.qcow2结尾的文件
    ls-al|grep-Eqcow2$ ... [详细]
author-avatar
指尖青春_388
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有