Linux 磁盘空间不够用?5 招快速清理文件,释放 10GB 空间不是梦!
刚收到服务器警告:磁盘空间不足 90%!装软件提示No space left on device!连日志都写不进去,系统卡到崩溃?
别慌!今天教你5 个超实用的磁盘清理大招,从临时文件到无用软件一键搞定,零基础也能 30 分钟释放 10GB + 空间,再也不怕磁盘变红啦!
一、先做这一步!快速定位 “空间占用大户”(必学基础)
核心命令:df -h 和 du -sh
作用:
- df -h:查看整个磁盘的空间使用情况(看根目录/是否爆红)
- du -sh /*:逐层扫描各个目录的大小(找出占用最大的文件夹)
实战演示:
- 查看整体空间:
df -h # 重点看`/dev/sda1`对应的`/`目录使用率 |
输出类似:
Filesystem Size Used Avail Use% Mounted on /dev/sda1 50G 45G 3.0G 94% / # 危险!超过80%就该清理了 |
- 定位大目录:
du -sh /* 2>/dev/null # 忽略权限错误,快速列出根目录下所有文件夹大小 |
常见 “元凶” 可能是:
- /var/log(日志文件)/usr/local(大型软件安装目录)/home(用户文件)/tmp(临时文件)
二、第 1 招:清理系统临时文件(秒释放 GB 级空间)
作用:删除系统自动生成的临时文件(重启后会再生,无风险)
核心目录:
- /tmp:所有用户的临时文件(建议直接清空)
- /var/tmp:需要保留几天的临时文件(按需清理)
操作步骤(以/tmp为例):
- 先查看大小:
du -sh /tmp # 经常占用几百MB甚至GB级空间 |
- 安全清理(需管理员权限):
sudo rm -rf /tmp/* # 注意!保留`/tmp`目录本身,只删里面的文件 |
小白贴士:/tmp里的文件都是系统 / 软件临时生成的,删除后不影响运行,重启后会自动重建。
三、第 2 招:批量删除日志文件(服务器空间 “杀手”)
作用:服务器运行中产生的海量日志,常占用 10GB + 空间
常见日志目录:
- /var/log:系统日志(重点清理*.log和*.gz文件)
- /var/log/nginx、/var/log/httpd:Web 服务器日志(Nginx/Apache 专属)
实战演示(以清理系统日志为例):
- 进入日志目录:
cd /var/log |
- 查看大日志文件:
du -sh *.log # 比如`messages`、`secure`可能单个就几百MB |
- 安全删除(保留最新日志,删除旧文件):
sudo rm -f messages*.gz # 删除压缩的旧日志 sudo > messages # 清空当前正在使用的日志(谨慎!需确认服务可重启) |
进阶技巧:用logrotate工具自动管理日志(后续教你配置,避免手动清理)
四、第 3 招:卸载无用软件 + 清理缓存(释放安装包空间)
作用:删除再也不用的软件,顺便清理安装包缓存
分系统操作:
CentOS/RHEL 系(yum/dnf):
- 列出已安装软件(按大小排序):
dnf list installed --size | sort -k 4 -h # 看最后一列大小 |
- 卸载无用软件:
sudo dnf remove 软件名 # 比如卸载旧版Python:sudo dnf remove python3.6 |
- 清理缓存(重点!安装包默认保留):
sudo dnf clean all # 删除所有下载的rpm安装包,可释放GB级空间 |
Ubuntu/Debian 系(apt):
- 列出大体积软件:
dpigs -c # 按占用空间排序,显示前20大的已安装软件 |
- 卸载 + 自动删除依赖:
sudo apt purge 软件名 -y # 比如卸载旧版Docker:sudo apt purge docker.io sudo apt autoremove -y # 删除不再需要的依赖包 |
- 清理缓存:
sudo apt clean # 删除下载的.deb安装包,通常能省1-2GB |
五、第 4 招:查找并删除超大文件(精准打击 “巨无霸”)
作用:快速定位超过 1GB 的大文件(视频、备份文件常见)
核心命令:find + 按大小过滤
操作步骤:
- 扫描整个系统(从根目录开始,需管理员权限):
sudo find / -type f -size +1G 2>/dev/null # 查找大于1GB的文件 |
常见 “目标”:
- /home/user/下载目录的视频 / 压缩包/var/lib/docker的镜像文件(Docker 用户专属)/backup目录的旧备份文件
- 确认无用后删除:
sudo rm -rf /路径/超大文件 # 比如删除旧备份:sudo rm -rf /backup/old.zip |
安全提示:先通过ls -lh 路径确认文件用途,千万别删系统文件(如/etc、/usr/bin下的文件)!
六、第 5 招:清理用户目录垃圾(个人文件占比最高)
作用:用户下载的文件、未删的安装包是空间占用 “重灾区”
3 个必清目录:
- ~/下载:
rm -rf ~/下载/* # 清空下载目录(确认文件已备份!) |
- ~/.cache:软件缓存文件(如 Chrome 缓存、IDE 缓存):
du -sh ~/.cache # 经常占用几百MB,直接删除无影响 rm -rf ~/.cache/* |
- ~/.local/share/Trash:Linux 回收站(很多人不知道的隐藏空间):
du -sh ~/.local/share/Trash # 可能存着几个月前删除的大文件 rm -rf ~/.local/share/Trash/* # 彻底清空回收站 |
七、实战案例:5 招组合使用,释放 20GB 空间!
假设你有一台运行 3 年的服务器,按以下步骤操作:
- 临时文件:清空/tmp释放 1GB
- 日志文件:删除/var/log旧日志释放 3GB
- 无用软件:卸载 3 个旧服务释放 5GB,清理缓存省 2GB
- 超大文件:删除/backup目录的 3 个旧备份释放 8GB
- 用户垃圾:清空回收站 + 缓存释放 1GB合计释放 20GB+,磁盘使用率从 95% 降到 70%!
八、小白必看!3 个超级避坑指南
- 千万别删/根目录! 错误操作:sudo rm -rf /(会删光整个系统,无法恢复!) 正确做法:所有操作前先确认路径,用ls查看目录内容再删除
- 备份重要文件!清理前对/home/user、/backup等目录做一次备份(用tar -czvf backup.tar.gz 目录)
- 区分 “临时删除” 和 “彻底删除”
- 普通删除:rm只是删除引用,空间未真正释放(适合小文件)释放磁盘:删除后需确保无程序占用(大文件建议先停服务再删)
九、总结:5 招清理命令速查表,新手秒存!
清理场景 | CentOS/RHEL 系命令(yum/dnf) | Ubuntu/Debian 系命令(apt) | 通用命令(所有系统) |
临时文件 | sudo rm -rf /tmp/* | sudo rm -rf /tmp/* | du -sh /tmp && rm -rf /tmp/* |
日志文件 | sudo rm -f /var/log/*.gz | sudo rm -f /var/log/*.gz | cd /var/log && du -sh *.log |
无用软件 + 缓存 | sudo dnf remove 软件名 && dnf clean all | sudo apt purge 软件名 && apt clean | dpigs(Ubuntu 查看大软件) |
超大文件 | sudo find / -size +1G | sudo find / -size +1G | find / -type f -size +1G |
用户目录垃圾 | rm -rf ~/下载/* ~/.cache/* | rm -rf ~/下载/* ~/.cache/* | du -sh ~/*(查看用户目录) |
十、课后作业 + 互动时间!
现在打开你的 Linux 终端,输入df -h看看磁盘使用率,截图发评论区,我来帮你分析哪里最该清理~
如果遇到 “不敢删文件怕删坏系统”,把你想删除的文件路径留言,我来帮你判断是否安全!学会这 5 招,再也不用担心磁盘空间不足,下节课咱们讲《Linux 定时任务怎么设置?3 分钟学会自动备份文件,再也不怕数据丢失!》,记得点击右上角「关注」,干货不迷路~
下期预告:《Linux 定时任务怎么设置?3 分钟学会自动备份文件,再也不怕数据丢失!》(觉得有用就点赞收藏,转发给用 Linux 的朋友,一起告别 “磁盘焦虑”~)
用户解决 Linux 磁盘空间不足问题,步骤详细且兼顾不同系统。你对内容的实用性、案例选择有什么看法,或者还有其他 Linux 运维问题想了解,都可以随时告诉我。