为什么当 vm.swappiness 为 0 时却使用了 swap?

Ner*_*nux 0 swap

为了尝试解决问题,我将 swappiness 设置为尽可能低,即 0,并且交换仍在使用。为什么?

运行free -m给出:

total        used        free      shared  buff/cache   available
Mem:            484         241           8          58         235         134
Swap:          1023          97         926
Run Code Online (Sandbox Code Playgroud)

mon*_*nge 5

Swappiness 定义何时使用交换。

例如,swappiness 为 40 定义为在还有 40% 的 RAM 可供使用时开始使用交换。

Swappiness 为 0 定义了当 RAM 已满且剩余 0% 可供使用时使用交换。

要禁用交换(完全不推荐,因为您可能最终会得到一个无法使用的系统),您可以运行:

sudo swapoff -a

  • [`swappiness` 比内存使用交换开始使用的情况要复杂一些](https://lwn.net/Articles/83588/)。 (3认同)