将交换分区安装在 /dev/null 是什么意思?

Ale*_*rin 6 linux swap virtual-memory

我在swapon -s我正在使用的 VPS 上运行,发现有一个交换分区指向/dev/null.

# swapon -s
Filename        Type        Size    Used    Priority
/dev/null       partition   262144  0       -1
Run Code Online (Sandbox Code Playgroud)

这是否意味着没有任何实际的交换,交换出的任何东西都会丢失?这比根本没有任何交换更好/更糟吗?

的输出df -h

# df -h
Filesystem         Size  Used Avail Use% Mounted on
/dev/ploop63064p1   20G  1.3G   18G   7% /
none               128M  4.0K  128M   1% /dev
none               4.0K     0  4.0K   0% /sys/fs/cgroup
none                26M   40K   26M   1% /run
none               5.0M     0  5.0M   0% /run/lock
none               128M     0  128M   0% /run/shm
none               100M     0  100M   0% /run/user
Run Code Online (Sandbox Code Playgroud)

的输出cat /etc/fstab

# cat /etc/fstab
proc  /proc       proc    defaults    0    0
none  /dev/pts    devpts  rw,gid=5,mode=620    0    0
none  /run/shm    tmpfs   defaults    0    0
Run Code Online (Sandbox Code Playgroud)

的输出cat /proc/sys/vm/swappiness

# cat /proc/sys/vm/swappiness
60
Run Code Online (Sandbox Code Playgroud)

Gia*_*968 4

这可以归结为某些虚拟托管基础设施环境根本不需要交换文件/分区设置。为什么?我不确定如何设置不同的虚拟主机基础设施环境来处理 \xe2\x80\x9cout 内存\xe2\x80\x9d 条件和分页;我想在某些情况下,主机操作系统会比来宾操作系统\xe2\x80\x99s 自己的操作系统更有效地处理此类情况?

\n\n

例如,查看这篇文章here以及thisposthere似乎Chef需要一个交换文件并将其设置为/dev/null普遍接受的\xe2\x80\x94yet kludgy\xe2\x80\x94解决方案以有效\xe2\x80\ x9cneutralize\xe2\x80\x9d 用于某些虚拟专用服务器部署的交换文件/分区设置。

\n\n

此外,似乎您的系统 \xe2\x80\x9cswapiness\xe2\x80\x9d 必须设置0为这样的设置才能工作。您可以通过以下命令检查来确认这一点:

\n\n
cat /proc/sys/vm/swappiness\n
Run Code Online (Sandbox Code Playgroud)\n\n

正如此维基百科条目中所解释的,\xe2\x80\x9cswapiness\xe2\x80\x9d 可以设置在 0 到 100 范围内的任何位置:

\n\n
\n

Swappiness 可设置为 0 到 100 之间的值(含 0 和 100)。较低的值会导致内核避免交换,较高的值会导致内核尝试使用交换空间。默认值为 60,对于大多数桌面系统,将其设置为 100 可能会影响整体性能,而设置较低(甚至 0)可能会减少响应延迟。

\n
\n\n

提出的共同价值观是:

\n\n
    \n
  • vm.swappiness = 0:内核只会进行交换以避免内存不足的情况。
  • \n
  • vm.swappiness = 60:默认值。
  • \n
  • vm.swappiness = 100:内核将积极交换。
  • \n
\n\n

这告诉我,您的 VPS 可能有一些系统设置,以避免因交换丢失而导致严重的内存不足情况。因此,我的下一个建议是联系您的 VPS 提供商并要求提供一些说明。要详细了解虚拟主机提供商如何建议如何最好地使用交换文件/分区,请查看DigitalOcean 的这篇文章

\n