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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了记录一次删除大文件,但磁盘没有释放空间的问题相关的知识,希望对你有一定的参考价值。

上服务器查看/dev/xxx 挂载的/var 快满了都过了90%,所以需要清理一下日志文件了
df -h
...
/dev/xxx xxG xxG 1.0G 93% /var
...

去/var/log中检查到文件
cd /var/log
ls
...
-rw-------. 1 root root 26G 10月 20 15:18 xxxx.log
...

也就是xxxx.log 这个文件有占了很大的磁盘空间,看了一下里面的内容,发现是syslog的日志文件;里面保存的是有离现在几个月的,所以删除它
rm xxxx.log
然后再df -h
...
/dev/xxx xxG xxG 1.0G 93% /var
...
发现磁盘空间并未释放,应该有程序还在操作这个文件,指针未释放
lsof | grep deleted | grep xxxx.log
rsyslogd xxx1 root xw REG 8,2 xxxxxxx xxxx /var/log/xxxx.log (deleted)
发现是syslog程序还在操作这个文件
于是用这个程序的进程号:xxx1 kill它
kill -9 xxx1
完事之后,发现rsyslog未启动了
只能重启
/etc/init.d/rsyslog restart
关闭系统日志记录器: [失败]
启动系统日志记录器: [确定]

再来查看磁盘空间发现空间被释放了
之后google到一种方式 就是 在删除之前 先清空文件,再删除文件 这样能快速释放磁盘空间。
echo "" > xxx.log
rm -rf xxx.log
这个方法下次再尝试

以上是关于记录一次删除大文件,但磁盘没有释放空间的问题的主要内容,如果未能解决你的问题,请参考以下文章

LINUX删除文件,但空间不释放

Linux文件删除,但是df之后磁盘空间没有释放

Linux文件删除,但是df之后磁盘空间没有释放

删除文件后,磁盘空间没有释放的处理记录

linux 磁盘删除文件后无法释放空间

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