我很惊讶地看到我的 Ubuntu 20.04 使用交换,因为缓冲区/缓存中有 700G。
它以前从来没有这样做过。
有什么问题吗?
我觉得它应该在使用交换之前释放缓冲区/缓存中使用的 RAM。
# cat /proc/sys/vm/swappiness
0
# cat /proc/sys/vm/vfs_cache_pressure
100
# free -g
total used free shared buff/cache available
Mem: 1007 239 18 298 749 462
Swap: 566 138 428
答案1
不,分页没有错。Linux 将使用分配给它的交换空间。
交换性为 0,交换表示“可用页面和文件支持页面的数量小于区域中的高水位标记”。这可能在以前的某个时间发生过,当时内存压力比您现在观察到的要大。
Linux 并不急于释放已使用的交换空间,即使将部分交换空间调回到物理 RAM 中也是如此。这些页面可以在将来需要时回收。