温馨提示×

centos缓存怎样清除

小樊
47
2026-10-26 05:30:52
栏目: 智能运维

在 CentOS 中,“清除缓存”通常指 系统内存缓存(PageCache / dentry / inode),也可能指 YUM/DNF 软件包缓存 或 DNS 缓存。下面分别说明。


一、清除系统内存缓存(Page Cache)

⚠️ 生产环境谨慎操作,可能会造成短暂 IO 升高。

1️⃣ 查看内存使用情况

free -h

看到 buff/cache 占用较多是正常的。

2️⃣ 手动释放缓存(需要 root)

sync
echo 3 > /proc/sys/vm/drop_caches

参数说明:

  • 1:释放 pagecache
  • 2:释放 dentries 和 inodes
  • 3:释放所有缓存

✅ 推荐先 sync,防止数据未写入磁盘。

3️⃣ 临时生效(sysctl 方式)

sysctl vm.drop_caches=3

二、清除 YUM / DNF 缓存

YUM(CentOS 7 及以前)

yum clean all

DNF(CentOS 8 / Stream)

dnf clean all

查看缓存占用:

du -sh /var/cache/yum
# 或
du -sh /var/cache/dnf

三、清除 DNS 缓存

1️⃣ 如果使用 systemd-resolved

systemctl restart systemd-resolved

或

resolvectl flush-caches

2️⃣ 如果使用 nscd

systemctl restart nscd

3️⃣ 如果没有 DNS 缓存服务

CentOS 默认通常 没有 DNS 缓存,无需清除。


四、清除用户态应用缓存(常见)

  • PHP(opcache)
systemctl restart php-fpm
  • Nginx 缓存
rm -rf /var/cache/nginx/*
systemctl restart nginx
  • Redis
redis-cli flushall

五、不建议做的事

❌ 长期禁用缓存
❌ 写脚本定时 drop_caches
❌ 以为 buff/cache 是“内存泄漏”


如果你能说明 具体场景(如:服务器卡顿、YUM 报错、Web 缓存),我可以给你更精确的命令。

0 踩