Linux清理指南:专家分享实用技巧
导读:Linux清理指南 专家实用技巧 一 快速定位占用 使用 df -h 查看各挂载点使用率,优先关注使用率接近或超过 80% 的分区。 使用 du -sh /path 查看目录总大小;结合 sort -h 定位最大目录,例如: 当前目录前...
Linux清理指南 专家实用技巧
一 快速定位占用
- 使用 df -h 查看各挂载点使用率,优先关注使用率接近或超过 80% 的分区。
- 使用 du -sh /path 查看目录总大小;结合 sort -h 定位最大目录,例如:
- 当前目录前10大项:
du -sh * | sort -rh | head -n 10 - 全盘逐级排查:
sudo du -h / 2> /dev/null | sort -h | tail -n 50
- 当前目录前10大项:
- 交互式分析工具:安装并使用 ncdu(命令行)或 baobab(GNOME 磁盘使用分析器)快速发现“空间大户”。
二 安全清理核心步骤
- 临时文件
- 清理 /tmp:
sudo rm -rf /tmp/*(系统运行中请谨慎,避免删除正在使用的会话文件)。 - 清理 /var/tmp:
sudo rm -rf /var/tmp/*(该目录通常保留时间更长,建议先确认)。 - 定时清理旧临时文件(更安全):
tmpwatch 240 /tmp(删除 240 小时未访问的文件)。
- 清理 /tmp:
- 包管理器缓存
- APT(Debian/Ubuntu):
sudo apt-get clean & & sudo apt-get autoclean - YUM(CentOS/RHEL):
sudo yum clean all - DNF(Fedora):
sudo dnf clean all
- APT(Debian/Ubuntu):
- 日志与 journal
- 保留最近 3 天 的 systemd 日志:
sudo journalctl --vacuum-time=3d - 归档并轮转日志:
sudo journalctl --rotate - 如需清理 journal 目录,请先停止 journal 服务,再删除过期子目录,最后重启服务(避免正在写入时直接删除)。
- 保留最近 3 天 的 systemd 日志:
- 系统缓存(仅当内存紧张或测试需要)
- 写入前先同步:
sync - 释放页面缓存:
echo 1 | sudo tee /proc/sys/vm/drop_caches - 释放目录项和 inode 缓存:
echo 2 | sudo tee /proc/sys/vm/drop_caches - 释放全部三类缓存:
echo 3 | sudo tee /proc/sys/vm/drop_caches
- 写入前先同步:
- 浏览器与应用缓存
- Chrome:
rm -rf ~/.config/google-chrome/Default/Cache/* - Firefox:
rm -rf ~/.mozilla/firefox/*.default-release/cache2/*
- Chrome:
- 下载与用户目录
- 清理大且过期的下载:
rm -rf ~/Downloads/*.old或按时间清理:find ~/Downloads -mtime +30 -delete
- 清理大且过期的下载:
- 图形化工具
- 使用 BleachBit 清理系统缓存、临时文件、浏览器缓存等:
sudo apt-get install bleachbit & & sudo bleachbit。
- 使用 BleachBit 清理系统缓存、临时文件、浏览器缓存等:
三 深度清理与维护
- 删除无用依赖与旧内核
- APT:
sudo apt-get autoremove --purge - YUM:
sudo yum autoremove - DNF:
sudo dnf autoremove - 清理旧内核(RHEL/CentOS 系):
package-cleanup --oldkernels --count=2(仅保留最近 2 个内核)。
- APT:
- 大文件定位与处置
- 查找大于 100MB 的文件:
sudo find / -type f -size +100M -exec ls -lh { } \;(先确认再删除)。 - 删除 30 天 未修改的大文件:
find /var -size +100M -mtime +30 -delete。
- 查找大于 100MB 的文件:
- 旧备份与归档
- 删除 30 天 前的备份:
find /backup -type f -mtime +30 -delete。
- 删除 30 天 前的备份:
- 日志轮转策略
- 使用 logrotate 配置按周轮转并压缩,保留 4 周:
/etc/logrotate.d/messages- 示例:
- weekly、rotate 4、compress、delaycompress、missingok、notifempty、create 640 root adm
- 手动执行:
logrotate /etc/logrotate.d/messages。
- 示例:
- 使用 logrotate 配置按周轮转并压缩,保留 4 周:
四 自动化与风险控制
- 定时清理脚本与 cron
- 示例脚本(按日执行):
#!/bin/bash
sync
sudo journalctl --vacuum-time=3d
sudo apt-get clean & & sudo apt-get autoclean
find /tmp -mindepth 1 -mtime +1 -delete
- 加入 cron(每日 2:00):
0 2 * * * /path/to/cleanup.sh
- 示例脚本(按日执行):
- 操作原则
- 备份重要数据;分阶段清理;删除前确认文件来源与用途;优先使用“轮转/归档”而非粗暴删除;对线上系统先在测试环境验证脚本。
- 风险提示
rm -rf、journalctl --vacuum-*、drop_caches等命令可能造成数据不可恢复或服务异常;生产环境请在维护窗口操作,并确保有回滚方案。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Linux清理指南:专家分享实用技巧
本文地址: https://pptw.com/jishu/778389.html
