> Linux教程 > 系统运维 >

Linux主机删除文件后磁盘空间显示不变

如果删除的文件正在被调用,这时候直接删除文件可能会导致句柄未释放,磁盘空间还被占用的情况。

 

可以使用命令行查看:

df  -h 占用空间90%,占用17G空间

du -sh ./* 查看根目录下的空间占用,加起来不到10G,差别比较大

 

这时候可以执行命令 lsof|grep deleted 

获得一个已经被删除但是仍然被应用程序占用的文件列表

root@itest:/# lsof|grep deleted
java       6006       root    1w      REG              202,1 10590411943    1180807 /usr/tomcat/logs/catalina.out (deleted)
java       6006       root    2w      REG              202,1 10590411943    1180807 /usr/tomcat/logs/catalina.out (deleted)
java       6006       root    9w      REG              202,1           0    1180815 /usr/tomcat/logs/manager.xxxxxx.log (delete)
java       6006       root   10w      REG              202,1           0    1180816 /usr/tomcat/logs/host-manager.xxxxxx.log (deleted)

 

解决办法:

1、重启系统来释放资源

2、停止占用文件资源的应用程序或服务,比如Apache等

3、kill掉正在占用文件的对应的进程,这种方法是有一定风险(不推荐)

 

(责任编辑:IT)