Ubuntu 缓存与内存使用的关系
核心结论 在 Ubuntu(以及所有 Linux 系统)中,缓存是内存管理的一部分,用来把最近访问的磁盘数据保存在 RAM 中,从而显著减少对慢速存储的访问、提升响应速度。内核会自动按需分配与回收缓存;当应用需要更多内存时,缓存会被优先释放,因此它通常不应被视为“内存紧张”的信号。换言之,缓存与内存使用密切相关,但“被缓存占用的内存”在需要时是可回收的可用资源。
缓存的类型与作用
如何判断内存是否真的紧张
free -h。重点看 available 字段,它表示“从应用角度看还可用多少内存”,其计算可近似理解为:available ≈ free + buffers + cache。top/htop 检查是否有进程占用异常。free 看起来很小,只要 available 充足且 Swap 未频繁使用,系统通常并不缺内存。需要清理缓存时的正确做法
sync 将挂起的写入落盘:
sudo sync && echo 1 | sudo tee /proc/sys/vm/drop_cachessudo sync && echo 2 | sudo tee /proc/sys/vm/drop_cachessudo sync && echo 3 | sudo tee /proc/sys/vm/drop_caches实用建议
vm.swappiness(默认一般为 60),仅在确有必要时调整。free -h、top/htop、vmstat 等,用于观察 available、缓存占用与 I/O 情况。