linux服务器磁盘满了的三种解决方案
这篇文章主要给大家介绍了linux服务器磁盘满了的三种解决方案,文章通过图文结合的形式给大家介绍的非常详细,对大家的学习或工作有一定的帮助,需要的朋友可以参考下
方法一
步骤一:遇到磁盘空间不足的报错时候,首先使用df -h查看磁盘空间使用情况,如图/home/zhang目录磁盘空间达到100%。
步骤二:进入目录/home/zhang,查找磁盘空间中的大文件,使用命令
du -h --max-depth=1 /
du -sh *查找占用空间大的目录,可以看到tomcat空间占用的空间比较大,通过逐层定位,最后会找到具体的文件
步骤三:除了上面逐层定位的方法,我们也可以直接查找出大文件,使用命令find /home/zhang -size +400M查找出大于400M的文件
步骤四:从上面可以看出,是/home/zhang/tomcat/logs/目录下的日志文件占用空间较大,如果判定日志文件已经无用,直接删除即可,如图,保留最近的日志文件,其余删除,空间释放
方法二
步骤一:除了磁盘空间除了文件占用之外,还有一种情况,当磁盘空间满了之后,我们无法查找到大文件,此时可能是文件可能已经被删掉,但有进程依然在使用它。在进程运行期间,Linux 不会释放该文件的存储空间。此时看到磁盘空间仍是100%
遇到这种情况,基本可以断定是某些大文件被某些程序占用了,并且这些大文件已经被删除了,但是对应的文件句柄没有被某些程序关闭,造成内核无法收回这些文件占用的空间。
步骤二:此时适用命令lsof | lsof | grep deleted 查找到占用的进程,直接停止进程或者kill掉就可以释放空间(注:如果不是生产环境,重启操作系统,空间也会释放)
或者批量删除:lsof | grep delete | awk ‘{print $2}’ | xargs kill -9
方法三
最后一种情况,就是随着linux系统应用的安装,当初磁盘空间申请过小,磁盘使用达到100%,也没有可以清理的磁盘空间,此时如果其余磁盘挂载点有充足的空间,我们可以通过软连接使用其余磁盘的空间,或者将应用安装到富余的目录空间,此外,现在很多磁盘都使用LVM逻辑卷的方式挂载,增加磁盘后,可以使用动态扩容磁盘空间解决。