當cache緩存占用太大,服務起不來,需要查看清理緩存
執行free -m或者free -h,查看緩存
1. 清理磁盤緩存
刷新文件系統緩存,將緩存中的數據寫入磁盤。
Sync
清理頁緩存。這將清除頁緩存中的數據,但不會清除目錄項和inode緩存。
echo 1 > /proc/sys/vm/drop_caches 或者 sysctl -w vm.drop_caches=1
清理目錄項和inode緩存
echo 2 > /proc/sys/vm/drop_caches 或者 sysctl -w vm.drop_caches=2
命令清理頁緩存、目錄項和inode緩存
echo 3 > /proc/sys/vm/drop_caches 或者 sysctl -w vm.drop_caches=3
2.清理swap緩存
如果系統啟用了Swap分區,可以通過禁用和啟用Swap來清理Swap緩存。首先,使用swapoff命令禁用Swap分區:sudo swapoff -a。然后,再使用swapon命令重新啟用Swap分區:sudo swapon -a。
3. 清理DNS緩存
不同的Linux發行版可能使用不同的DNS解析器,因此清理DNS緩存的方法也不盡相同。以下是一些常見的方法:
在大多數發行版中,可以使用systemd-resolve命令清理DNS緩存:sudo systemd-resolve –flush-caches
如果使用dnsmasq作為本地DNS緩存服務器,可以使用以下命令清理緩存:sudo systemctl restart dnsmasq
請注意,清理緩存可能會導致一些性能下降,因為系統需要重新加載數據。只有在特定情況下(如系統性能問題或特定應用程序需要刷新緩存)才建議清理緩存。在正常情況下,Linux會自動管理緩存以提供最佳性能。