我的系统越来越慢,尤其是当我使用Firefox / Chromium和虚拟机等浏览器时。我注意到我至少有3.2 GB的可用RAM(使用Gnome系统监视器),并且没有交换。
我现在所做的是swapoff -a
,系统系统性能提高了30%。所以我的问题是:使用安全swapoff
吗?我的PC重新启动安全swapoff
吗?
我的系统越来越慢,尤其是当我使用Firefox / Chromium和虚拟机等浏览器时。我注意到我至少有3.2 GB的可用RAM(使用Gnome系统监视器),并且没有交换。
我现在所做的是swapoff -a
,系统系统性能提高了30%。所以我的问题是:使用安全swapoff
吗?我的PC重新启动安全swapoff
吗?
Answers:
Linux内核提供了一个可调整的设置,该设置可控制交换文件的使用频率,称为swappiness
交换设置为零表示除非绝对必要(除非内存不足),否则将避免使用磁盘,而交换设置为100表示将几乎立即将程序交换到磁盘。
Ubuntu系统的默认值为60,这意味着如果内存使用量约为我的RAM的一半,则交换文件将被相当频繁地使用。您可以通过运行以下命令检查自己系统的swappiness值:
one@onezero:~$ cat /proc/sys/vm/swappiness
60
因为我有4 GB的RAM,所以我想将其降低到10或15。然后,仅当我的RAM使用率为80%或90%时才使用交换文件。要更改系统交换值,请打开/etc/sysctl.conf as root
。然后,将以下行更改或添加到文件中:
vm.swappiness = 10
重新启动以使更改生效
您还可以在系统仍在运行时更改该值
sysctl vm.swappiness=10
您还可以通过运行swapoff -a
然后swapon -a
以root用户身份而不是重新启动来清除交换,以达到相同的效果。
计算您的掉期公式
free -m (total) / 100 = A
A * 10
root@onezero:/home/one# free -m
total used free shared buffers cached
Mem: 3950 2262 1687 0 407 952
-/+ buffers/cache: 903 3047
Swap: 1953 0 1953
所以总数是3950/100 = 39.5 * 10 = 395
所以这意味着当剩下10% 395 MB的内存时,它开始使用交换性
大概。您应该在此处阅读 Ubuntu 常见问题解答页面的“为什么需要交换”部分,并自行判断。
如果您重视安全网交换所能提供的速度,则应禁用它
如果您从不挂起磁盘,并且始终关闭并重新启动,则可以安全地禁用它。
如果您有大量RAM(您的4GB + VM正在运行)是可以的。
对我来说,我的操作系统安装在SSD,8GB RAM上,并且从未挂起。我不需要交换,从未使用过它,我只是出于习惯将其设置为安装。
作为替代方案,这是Lifehacker的 Firefox的about:config调整,它说明了如何仅将RAM用于浏览器缓存。在尝试之前,请先阅读文章底部的反驳链接。
不,这不安全。原因是,当系统用完RAM并且无法交换任何RAM时,它可能会死机,除了进行硬重置以外,没有恢复的机会。这不仅仅是关于是否可以挂起。
资料来源:我的14.04做到了。
您应该保留最少的交换空间,请查看Ubuntu FAQ中的数字。