Linux删除大文件进程还在导致磁盘空间占用100%问题处理

1. 问题描述

上午收到鹰网监控,某台应用机器的磁盘利用率达到100%,通过df和du等命令查看占用的磁盘空间并没有达到分配的逻辑卷挂载路径的最大值

2. 问题分析

最近公司那边开发了代码发布平台,在进行代码更新时,先删除日志缓存文件,在进行进程停止导致的

3. 问题处理

使用lsof |grep deleted命令查看已经标记为已经删除的文件

注:这个deleted表示该已经删除了的文件,但是文件句柄未释放,这个命令会把所有的未释放文件句柄的进程列出来

使用kill命令进行杀进程操作,但是该操作会将应用停止,需要重启应用

$ kill -9 6497 14338

清缓存,应用重启,问题解决。

时间: 2024-11-03 05:20:41

Linux删除大文件进程还在导致磁盘空间占用100%问题处理的相关文章

linux删除大文件后空间没释放的问题

问题描述: 磁盘100%,删除大文件后,df -h发现磁盘空间未释放 解决办法: 该问题是因为在Linux系统中,通过rm或者文件管理器删除文件将会从文件系统的目录结构上解除链接(unlink).然而如果文件是被打开的(有一个进程正在使用),那么进程将仍然可以读取该文件,磁盘空间也一直被占用. #lsof  |grep deleted #kill xxx     删除占用文件的进程 #df -h     再次查看磁盘空间

Linux删除大文件,df查看空间没变

文件已删除,但是空间没有释放 可能是因为文件被进程锁定,或有进程一直在向这个文件写数据 直接用 lsof 查看锁定文件的进程 如果有一个进程在打开一个大文件的时候,这个大文件被rm/mv后, du会更新统计数据 df不会更新,还是认为空间未释放,直到这个进程被kill du可以查看文件和文件夹大小 df可以查看一级文件夹大小.使用比例.挂入点.档案系统等,不能看文件,可以看磁盘整体情况 df -h

centos下删除大文件

今天发现测试的服务器磁盘空间使用100%.通过df  -lh 和du –sh,定位到是jenkins日志文件363G.网上查找了几个关于删除大文件的方法: 一.最low的:rm rm 删除大文件后,df –lh查看会发现,磁盘还是被占用. 这是因为rm删除文件,文件一般不会立即写入磁盘,也就是空间不会立即释放. 解决的方式: 1.重启服务器(最好别选): 2.losf | grep deleted :查看被删除的进程 进程未关闭,所以磁盘空间不会被释放,需要kill –9 PID,杀死进程后,空

Git从库中移除已删除大文件

写在前面大家一定遇到过在使用Git时,不小心将一个很大的文件添加到库中,即使删除,记录中还是保存了这个文件.以后不管是拷贝,还是push/pull都比较麻烦.今天在上传工程到github上,发现最大只能上传100MB大小文件,在本地git库中有一个150MB文件,虽然已经删除,但还保存了记录.下面教大家如何从库中彻底删除无效大文件. 删除大文件方法很简单,就是先找到大文件对象再删除. 先提交所有更改 $ git commit -am "commit all"1对仓库进行gc操作 $ g

Linux删除乱码文件或者目录

Linux删除乱码文件或者目录 有时在Linux下面解压一些zip或者rar文件后会产生乱码文件或者目录,这个时候使用rm不能成功删除,需要使用一些特别的方法 来进行删除,下面是我经常使用的两种方法. 方法一: 使用rm -rf 删除上一级目录,当然前提是需要备份你需要备份的数据. 一种思路: 1. 比如/home下文件夹内含有乱码的文件 2. mkdir tmp 3. 将所有的文件首先移动到 mv * tmp/ 4.到tmp下 把所有有正常的显示字符的文件移动出来 cd tmp ; mv [a

?快速删除大文件的前几行或后几行及快速获取大文件的n到m行数据

快速删除大文件的前几行或后几行 http://stackoverflow.com/questions/17330188/remove-first-n-lines-of-a-file-in-place-in-unix-command-line 快速获取大文件的n到m行数据 http://unix.stackexchange.com/questions/47407/cat-line-x-to-line-y-on-a-huge-file

Linux:查看磁盘空间占用情况

Linux:查看磁盘空间占用情况 工作中有时被分配的测试机空间不大,经常遇到磁盘空间占满的情况.排查过程如下: 一.首先使用df -h 命令查看磁盘剩余空间,通过以下图看出/目录下的磁盘空间已经被占满. 二.进入根目录,因为最近常用的目录就是usr目录,所以用du -bs命令看一下常用的usr目录大小,由下图可见/usr目录占据了11g. 三.进入usr目录用find 命令找到大文件 然后把日志,压缩包什么的都清空: 原文地址:https://www.cnblogs.com/lizm166/p/

经验分享-关于在linux下删除大文件后,磁盘空间没有得到释放的解决办法

这个博客很早就注册啦,但是一直没有更新,最近辞职闭关清修,争取每天写一篇技术博客-- 闲话不多说,直接开始切入正题啦- 事情发生在2014年的4月份,人生中的第一次跳槽,成功的入职一家刚刚起步的 CDN的公司,做了一名不称职的研发运维,当时正好赶上前任运维离职,最开始公司之前用的是多squid,由于公司现在的团队中对squid比较了解的人都走光了,在加上多squid有一个严重的弊端,就是本机多个squid进程之间缓存的内容是无法共享的,有的时候同一个文件则会被缓存多分,十分浪费磁盘空间,由于本机

记录一次删除大文件,但磁盘没有释放空间的问题

上服务器查看/dev/xxx 挂载的/var 快满了都过了90%,所以需要清理一下日志文件了df -h.../dev/xxx xxG xxG 1.0G 93% /var... 去/var/log中检查到文件cd /var/logls...-rw-------. 1 root root 26G 10月 20 15:18 xxxx.log... 也就是xxxx.log 这个文件有占了很大的磁盘空间,看了一下里面的内容,发现是syslog的日志文件:里面保存的是有离现在几个月的,所以删除它rm xxx