广告
返回顶部
首页 > 资讯 > 操作系统 >linux中怎么解决文件已删除但空间不释放的问题
  • 881
分享到

linux中怎么解决文件已删除但空间不释放的问题

2023-06-05 16:06:44 881人浏览 独家记忆
摘要

本篇内容主要讲解“linux中怎么解决文件已删除但空间不释放的问题”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“linux中怎么解决文件已删除但空间不释放的问题”吧!导读一般来说不会出现删除文件

本篇内容主要讲解“linux中怎么解决文件已删除但空间不释放的问题”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“linux中怎么解决文件已删除但空间不释放的问题”吧!

导读一般来说不会出现删除文件后空间不释放的情况,但是也存在例外,比如文件被进程锁定,或者有进程一直在向这个文件写数据等,要理解这个问题,就需要知道Linux下文件的存储机制和存储结构。

1、错误现象

运维监控系统发来通知,报告一台服务器空间满了,登录服务器查看,根分区确实没有空间了:

[root@localhost ~]# df -h

这里首先说明一下服务器的一些删除策略,由于Linux没有回收站功能,所以线上服务器上所有要删除的文件都会先移动到系统/tmp目录下,然后定期清除/tmp目录下的数据。这个策略本身没有问题,但是通过检查发现这台服务器的系统分区中并没有单独划分/tmp分区,这样/tmp下的数据其实占用了根分区的空间。既然找到了问题,那么删除/tmp目录下一些占空间较大的数据文件即可,检查/tmp下最大的三个数据文件。

[root@localhost ~]# du -sh /tmp/*|sort -nr|head -3

通过命令输出发现在/tmp目录下有个66GB大小的文件access_log,这个文件应该是Apache产生的访问日志文件,从日志大小来看,应该是很久没有清理Apache日志文件了,基本判定是这个文件导致的根空间爆满,在确认此文件可以删除后,执行如下删除操作:

[root@localhost ~]# rm /tmp/access_log

接着查看系统根分区空间是否释放:

[root@localhost ~]# df -h

从输出可以看到,根分区空间仍然没有释放,这是怎么回事?

2、解决思路

一般来说不会出现删除文件后空间不释放的情况,但是也存在例外,比如文件被进程定,或者有进程一直在向这个文件写数据等,要理解这个问题,就需要知道Linux下文件的存储机制和存储结构。

一个文件在文件系统中的存放分为两个部分:数据部分和指针部分,指针位于文件系统的meta-data中,在将数据删除后,这个指针就从meta-data中清除了,而数据部分存储在磁盘中。在将数据对应的指针从meta-data中清除后,文件数据部分占用的空间就可以被覆盖并写入新的内容,之所以在出现删除access_log文件后,空间还没释放,就是因为Httpd进程还在一直向这个文件写入内容,导致虽然删除了access_log文件,但是由于进程锁定,文件对应的指针部分并未从meta-data中清除,而由于指针并未删除,系统内核就认为文件并未删除,因此通过df命令查询空间并未释放也就不足为奇了。

3、问题排查

既然有了解决问题的思路,那么接下来看看是否有进程一直在向access_log文件中写数据,这里需要用到Linux下的lsof命令,通过这个命令可以获取一个仍然被应用程序占用的已删除文件列表,命令执行如下:

[root@localhost ~]# lsof | grep delete

从输出结果可以看到,/tmp/access_log文件被进程httpd锁定,而httpd进程还一直向这个文件写入日志数据。从第7列可知,这个日志文件大小约70GB,而系统根分区总大小才100GB,由此可知,这个文件就是导致系统根分区空间耗尽的罪魁祸首。最后一列的“deleted”状态说明这个日志文件已经被删除,但由于进程还在一直向此文件写入数据,因此空间并未释放。

4、解决问题

到这里问题就基本排查清楚了,解决这一类问题的方法有很多种,最简单的方法是关闭或重启httpd进程,当然也可以重启操作系统,不过这些并不是最好的方法。对待这种进程不停对文件写日志的操作,要释放文件占用的磁盘空间,最好的方法是在线清空这个文件,具体可以通过如下命令完成:

[root@localhost ~]# echo " " >/tmp/acess.log

通过这种方法,磁盘空间不但可以马上释放,也可保障进程继续向文件写入日志,这种方法经常用于在线清理Apache、TomcatNginxWEB服务产生的日志文件。

到此,相信大家对“linux中怎么解决文件已删除但空间不释放的问题”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

--结束END--

本文标题: linux中怎么解决文件已删除但空间不释放的问题

本文链接: https://www.lsjlt.com/news/243660.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • linux中怎么解决文件已删除但空间不释放的问题
    本篇内容主要讲解“linux中怎么解决文件已删除但空间不释放的问题”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“linux中怎么解决文件已删除但空间不释放的问题”吧!导读一般来说不会出现删除文件...
    99+
    2023-06-05
  • linux中怎样解决文件已删除但空间不释放的问题
    这篇文章给大家介绍linux中怎样解决文件已删除但空间不释放的问题,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。1、错误现象运维的监控系统发来通知,报告一台服务器空间满了,登录服务器查看,根分区确实没有空间了:[roo...
    99+
    2023-06-28
  • 如何解决LINUX中文件已删除但空间不释放的问题
    这篇文章主要介绍“如何解决LINUX中文件已删除但空间不释放的问题”,在日常操作中,相信很多人在如何解决LINUX中文件已删除但空间不释放的问题问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何解决LINUX...
    99+
    2023-06-13
  • Linux如何处理文件已删除但空间不释放的问题
    问题产生背景 一个业务系统的服务器监控系统发来预警通知,磁盘空间使用率已经达到90%了,然后就登陆服务器搜索了下比较大的日志文件,全部都删除了(坑在此处埋上了),磁盘空间释放了一些,当时也是疏忽,没有确认查出并删除...
    99+
    2022-06-03
    Linux 文件删除空间不释放 Linux 删除空间不释放
  • Linux中出现文件已删除但空间不释放的原因是什么
    小编给大家分享一下Linux中出现文件已删除但空间不释放的原因是什么,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧! 1、错误现象运维的监控系统发来通知,报告一台服务器空间满了,登录服务器查看,根分区确实没有空间了...
    99+
    2023-06-16
  • Linux文件后删除空间未释放问题怎么解决
    小编今天带大家了解Linux文件后删除空间未释放问题怎么解决,文中知识点介绍的非常详细。觉得有帮助的朋友可以跟着小编一起浏览文章的内容,希望能够帮助更多想解决这个问题的朋友找到问题的答案,下面跟着小编一起深入学习“Linux文件后删除空间未...
    99+
    2023-06-28
  • Linux文件删除后空间未释放问题详解
    前言 当系统空间使用量过大需要清理空间或者清理某个文件时,有时会出现执行了删除命令之后磁盘空间并没有释放,很多人首次遇到该情况时会比较困惑,在考虑是不是像windows系统的回收站一样,删除只是逻辑删除到回收站一样?其实...
    99+
    2022-06-04
    linux释放空间 linux空间无法释放 linux删除文件后未释放空间
  • linux中rm删除不释放空间怎么解决
    这篇文章主要介绍“linux中rm删除不释放空间怎么解决”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“linux中rm删除不释放空间怎么解决”文章能帮助大家解决问题。解决方法:1、利用“lsof |...
    99+
    2023-06-30
  • LInux中如何解决不小心删除/etc/passwd文件的问题
    这篇文章主要为大家展示了“LInux中如何解决不小心删除/etc/passwd文件的问题”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“LInux中如何解决不小心删除/etc/passwd文件的问...
    99+
    2023-06-05
  • 怎么解决Linux中“磁盘空间不足”的问题
    这篇文章主要介绍“怎么解决Linux中“磁盘空间不足”的问题”,在日常操作中,相信很多人在怎么解决Linux中“磁盘空间不足”的问题问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么解决Linux中“磁盘空间...
    99+
    2023-06-16
  • 怎么解决xp系统删除用户导致加密文件打不开的问题
    本篇内容主要讲解“怎么解决xp系统删除用户导致加密文件打不开的问题”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么解决xp系统删除用户导致加密文件打不开的问题”吧!  1.以Administr...
    99+
    2023-06-14
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作