温馨提示×

ubuntu缓存怎样释放

小樊
49
2026-09-19 01:08:08
栏目: 智能运维

在 Ubuntu 中,“缓存”通常指以下几类,不同缓存释放方式不同:


一、释放系统内存缓存(PageCache / dentries / inodes)

Linux 会自动使用空闲内存做缓存,通常不需要手动释放,但在某些测试场景下可以清:

# 释放 page cache
sudo sync; sudo echo 1 > /proc/sys/vm/drop_caches

# 释放 dentries 和 inodes
sudo sync; sudo echo 2 > /proc/sys/vm/drop_caches

# 释放所有缓存
sudo sync; sudo echo 3 > /proc/sys/vm/drop_caches

⚠️ 说明:

  • sync 是先把数据写回磁盘,防止数据丢失
  • 这只是临时释放,系统会再次自动缓存
  • 不建议在生产环境频繁使用

二、清理 apt 软件包缓存

# 删除已下载的 .deb 包缓存
sudo apt clean

# 删除旧版本的缓存包
sudo apt autoclean

# 删除不再需要的依赖
sudo apt autoremove

三、清理 Snap 缓存(如果用 Snap)

# 删除旧版本 snap
sudo snap refresh --list
sudo snap remove --revision=旧版本 软件名

或清理 snap 缓存目录:

rm -rf ~/snap/*

四、清理用户级缓存(图形界面)

# 清理当前用户缓存
rm -rf ~/.cache/*

常见缓存目录:

  • ~/.cache
  • ~/.thumbnails
  • /var/cache

五、清理系统日志占用

# 查看日志占用
journalctl --disk-usage

# 清理旧日志
sudo journalctl --vacuum-time=7d

六、释放 swap(可选)

sudo swapoff -a
sudo swapon -a

⚠️ 会先把 swap 数据写回内存,内存不足时慎用


七、查看内存使用情况

free -h
top
htop

如果你说的“缓存”是指:

  • 浏览器缓存
  • Docker 缓存
  • 编译缓存(ccache / mvn)
  • 内存占用过高

可以告诉我具体场景,我可以给你更精确的命令。

0 踩