51工具盒子

依楼听风雨
笑看云卷云舒,淡观潮起潮落

解决linux根目录磁盘空间满

根目录磁盘写满,往往都是.log日志造成的,首先想到的是查找大的日志文件

1、find查找根下大于800M的文件
find / -size +800M -exec ls -lh {} \;

|---|----------------------------------------| | 1 | find / -size +800M -exec ls -lh {} \; |

找到大的日志文件关闭掉,或者更改到其他磁盘。

2、如果查找后,发现没有大文件,可能有占用文件的相关进程没有关闭

可以通过下面命令(如果没有lsof命令手动yum安装即可yum install lsof)找到已经被清空或删除,但是未释放空间的文件和进程信息
lsof | grep deleted

|---|----------------------| | 1 | lsof | grep deleted |

可以kill杀死占用的进程或者重启对应的服务,当然这不是最好的办法,最好的方式是在线清空这个文件
echo " " > /xxx/xxx.log

|---|--------------------------| | 1 | echo " " > /xxx/xxx.log |

注意:gzip对某个文件xxx.log进行压缩时,会产生一个新的xxx.log.gz文件,完成后,会把原来的xxx.log删除。
这时,若仍有进程在使用xxx.log文件,那么,实际上,该文件还是只会标记为deleted,其空间也不会释放。

3、如果以上两种方法还是找不出问题所在,可以通过分析最近修改过的文件,mysql等等来判断了。

查找7天内修改过的文件
find / -name '*.*' -type f -mtime -7

|---|----------------------------------------| | 1 | find / -name '*.*' -type f -mtime -7 |


赞(0)
未经允许不得转载:工具盒子 » 解决linux根目录磁盘空间满