Ubuntu 磁盘空间占用清理(宝塔)

目录

  • 前言
  • [1. 基本知识](#1. 基本知识)
  • [2. 实战](#2. 实战)

前言

🤟 找工作,来万码优才:👉 #小程序://万码优才/r6rqmzDaXpYkJZF
爬虫神器,无代码爬取,就来:bright.cn

本身自搭建了一个宝塔,突然一下子多了好些空间,对此需要进行额外小心的清理

1. 基本知识

先补充一些基本知识命令

确认哪个大目录占用空间:

  • 在 / 下跑 du 命令,比如:sudo du -h --max-depth=1 /
    -h:人类可读(G/M单位)
    --max-depth=1:只看一层,不要递归太深
    /:从根目录开始

找不到明显异常,也可以直接搜索大文件:sudo find / -type f -size +500M -exec ls -lh {} \; | sort -k5 -rh | head -n 20

截图如下:

上述这几个命令着重讲解下,别乱删除(最好删除一些log日志文件之类,不清楚的文件不要乱删除)

文件 大小 是否可以清理 说明
/proc/kcore 128T(假的) ❌不能动 这是虚拟内存文件,内核自己用的,看着大不用管,不能删
/www/wwwlogs/java/springboot/eng-1.log 3.9G ✅可以清理 springboot 应用日志,太大了,可以清空或者按需保留
/www/server/data/ruoyi@002dvue@002dpro/infra_api_access_log.ibd 592M 🟡谨慎处理 MySQL数据库表文件,最好别直接删,除非确定是无用表

对应清空日志文件可以使用:> /www/wwwlogs/java/springboot/eng-1.log

再者也可查询各个相关的日志记录:

bash 复制代码
du -sh /www/wwwlogs/*
du -sh /var/log/*

# 如果服务器装了 mysql,也要看看:
sudo du -sh /var/lib/mysql/*


# 查询网址备份文件
du -sh /www/backup/*

2. 实战

上述内容根据实战总结,有时候一些空间可以不必清理,可能为 缓存、假死文件需要重启才可

比如如下情况:
sudo du -h --max-depth=1 / 总共加起来只有 53G 左右

但是 df -h 看到 / 分区已经用了 269G


重启各个应用或者 重启服务是最好的


这种情况,建议重启下Java的各个应用或者网站应用:ps -ef | grep java

发现有两个Java进程,但是查询端口号的时候发现挂载的进程号是最新的日期,既可以把旧的进程号kill即可:ss -tnlp | grep 48080


也可能是删除但忍让占用的文件,被程序正在占用文件描述符(FD)

bash 复制代码
# 直接执行
lsof | grep deleted

#也可通过上述执行的 sudo find / -type f -size +500M -exec ls -lh {} \; | sort -k5 -rh | head -n 20
# 特意找到对应文件大的名字:
lsof | grep '/.Recycle_bin/' | grep deleted

截图如下:

可以对应进行kill -9 进程号,但保守一些还是重启


这也更好的说明为啥df 和 dh都不大一样

比如查看:lsof | grep deleted | awk '{print $7/1024/1024 " MB", $9}' | sort -rn | head -n 20

发现最大的文件占用200G

但是到对应的文件缺没有显示,显示为空!这种情况一般重启是最好用,直接释放!

Linux有个机制:
文件在被删除以后,只要还有进程持有,物理空间不会真正释放。
必须要等进程彻底关闭文件描述符,操作系统才回收

相关推荐
阿里云大数据AI技术7 分钟前
阿里云 EMR AI 助手正式发布:从问答工具到全栈智能运维助手
运维·人工智能
orion5718 小时前
Missing Semester Class1:course overview and introduction of shell
linux
SkyWalking中文站1 天前
认识 Horizon UI · 6/17:Trace 探索器
运维·监控·自动化运维
用户120487221611 天前
Linux驱动编译与加载
linux·嵌入式
火车叼位1 天前
写给初级开发者:SSL、SSH、HTTPS 与证书体系全解析
运维
用户805533698031 天前
Input 子系统架构:Core、Handler、Driver 三层是怎么协作的
linux·嵌入式
用户805533698031 天前
RK-Forge外设系列开篇 - 把板子从「能启动」变成「能用」:Ethernet/SPI/MMC 三个纯接线外设
linux·github·嵌入式
小猿姐2 天前
唯品会大规模数据库云原生实践:基于 KubeBlocks 管理数千实例的统一运维之路
运维·elasticsearch·云原生
七歌杜金房2 天前
我终于又有了自己的 Linux 电脑
linux·debian·mac
SkyWalking中文站2 天前
认识 Horizon UI · 5/17:3D 基础设施地图
运维·监控·自动化运维