温馨提示×

linux如何清理缓存文件

小樊
46
2026-07-18 08:53:30
栏目: 智能运维

在 Linux 中,“清理缓存”通常指 清理系统缓存、用户缓存、软件包缓存 等。下面按常见场景给你一套实用的清理方法(从安全到激进)。


一、清理系统缓存(PageCache / dentries / inodes)

⚠️ 不会影响数据,只是让系统重新从磁盘读
适合:内存占用高、调试性能时

# 清理 page cache、目录项和 inode 缓存
sudo sync
sudo sh -c 'echo 3 > /proc/sys/vm/drop_caches'

参数说明:

  • 1:只清 page cache
  • 2:清 dentries + inodes
  • 3:全部清理

生产环境建议先 echo 1,再观察


二、清理用户缓存(最常用)

用户级缓存一般在:

~/.cache/

清理方式:

rm -rf ~/.cache/*

或只清某个软件:

rm -rf ~/.cache/google-chrome
rm -rf ~/.cache/pip

三、清理系统日志(journalctl)

systemd 日志可能非常大:

# 查看当前日志大小
journalctl --disk-usage

# 只保留最近 3 天
sudo journalctl --vacuum-time=3d

# 限制最大 500MB
sudo journalctl --vacuum-size=500M

四、清理包管理器缓存(非常重要)

✅ Ubuntu / Debian(apt)

sudo apt clean
sudo apt autoclean
sudo apt autoremove --purge

✅ CentOS / Rocky / Alma(yum / dnf)

sudo yum clean all
# 或
sudo dnf clean all

✅ Arch / Manjaro(pacman)

sudo pacman -Sc
sudo pacman -Scc   # 更激进

五、清理 Docker 缓存(如果你用 Docker)

# 查看占用
docker system df

# 清理未使用资源
docker system prune

# 强制清理(⚠️会删容器、镜像、网络)
docker system prune -a --volumes

六、清理旧内核(Ubuntu / Debian)

dpkg --list | grep linux-image
sudo apt purge linux-image-xxx

或自动保留当前内核:

sudo apt autoremove --purge

七、查找大文件(不确定清什么时)

# 查找大于 500MB 的文件
find / -xdev -type f -size +500M 2>/dev/null

八、一键清理脚本(示例)

#!/bin/bash
sudo apt clean
sudo apt autoremove --purge -y
rm -rf ~/.cache/*
sudo journalctl --vacuum-size=500M
echo "清理完成"

九、什么不建议随意清理?

/proc/sys/dev
/var/lib 下数据库目录
❌ 正在运行的程序目录


十、我可以进一步帮你

你可以告诉我:

  • 发行版(Ubuntu / CentOS / Arch…)
  • 服务器 还是 桌面
  • 是否是 磁盘满了 / 内存满了

我可以给你最合适的清理方案

0