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