Linux下查询,释放内存空间。

系统内存空间满,定位。

  1. 首先查看内存使用情况
df -hl   或者 df -h /home 

在这里插入图片描述
在这里插入图片描述
看到可用内存只剩3.3G

  1. 查找占用内存最大的目录,如何定位最大文件目录
    输入命令: cd / 进入根目录。

输入命令:du -h --max-depth=1 寻找当前目录,哪个文件夹占用空间最大
在这里插入图片描述
以上两个命令之后,可以看到 /usr 此路径占用较大磁盘空间,占用了24G。眼尖的同学可能看到了最后一项显示41G,它表示当前目录所有文件占用磁盘空间总和容量是41G。
依次类推,一级一级往下找。几番判断后,定位到tomcat的日志文件。
在这里插入图片描述

  1. 如何定位最大文件
    输入命令:ls –lhS 将文件以从大到小顺序展现
    在这里插入图片描述
    最终定位文件为:catalina.out 这个日志文件。
  2. 删除文件,确认文件未被占用
    删除文件谁都会:rm –rf catalina.out 但是,最好确认下是否要下载下来让开发人员分析日志。
    辛苦一阵找到文件,删除了很开心,输入命令:df –hl 发现磁盘空间仍是满的状态。跟图一完全没有区别。难道说是需要重启系统吗?linux会这么不友好么?
    答案是否定的。在Linux或者Unix系统中,通过rm或者文件管理器删除文件将会从文件系统的目录结构上解除链接(unlink).然而如果文件是被打开的(有一个进程正在使用),那么进程将仍然可以读取该文件,磁盘空间也一直被占用。
    输入命令:lsof |grep delete
    如果不能使用lsof 命令,则下载输入yum命令安装
 yum install lsof

然后输入lsof | grep deleted 确认删除文件是否被占用
查看已删除但是未释放空间的文件:lsof | grep deleted
删除已删除但是未释放空间的文件:lsof | grep deleted | awk ‘{print $2}’ | xargs -I {} kill -9 {}
在这里插入图片描述
确实被占用。根据第二列提供的pid,输入命令:kill -9 13117 杀掉进程。

再次输入命令:df –hl
发现内存释放。

总结

  1. df -hl 查看内存使用状况
  2. du -h --max-depth=1 寻找占用内存最大的文件
  3. 确认可删除后 rm –rf 文件名 删除
  4. 确认文件未被占用 lsof | grep deleted
  5. 被占用 杀进程 kill -9 pid
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值