在Ubuntu 14.04上,交换文件必须增加,因为内存和交换使用率达到100%的使用率。
在现场生产服务器上,交换可以增加,而对服务的干扰最小?
free -h输出free -h :
total used free shared buffers cached Mem: 3.9G 3.4G 435M 24K 1.2M 7.5M -/+ buffers/cache: 3.4G 443M Swap: 8.0G 6.6G 1.4G
我同意关于更多内存的评论。 回答您的问题:您可以创build额外的交换分区(如果硬盘上有额外的空间)或创build交换文件。
dd if=/dev/zero of=/path/to/swap_file bs=1024 count=${size_of_additional_swap} mkswap /path/to/swap_file swapon /path/to/swap_file
交换越多,硬盘上的负载就越多,系统就越慢。
正如迈克尔·汉普顿在他的评论中提到的,你需要更多的RAM,而不是交换。
一般只有当你的应用程序不能适应可用RAM时才使用交换空间 – 这通常是与Windows不同的使用模式,其中页面文件通常用于不常访问的页面。
如果你的交换空间不在闪存上,那么它的性能可能会比实际的RAM 要差很多 。
但是要回答这个问题,您不能直接调换swap。 您将需要卸载/ swapoff,扩展底层存储,然后重新安装/ swapon。
忘记真正的操作系统支持dynamicresize:你不使用WINDOWS® ! 🙂
更严重的是:在使用交换文件时可以增加交换文件的大小,但是需要再次运行mkswap,这意味着先卸载它。
我也会说,使用文件而不是分区通常会增加访问时间,如果你使用分散的文件系统,使得你的系统速度较慢,速度较慢。
由于您使用的交换空间大小,我将/proc/sys/vm/swappiness为100,这可能会降低交换空间使用率较高时的磁盘活动。
我不知道你的RAM /使用交换的比率; 但考虑到使用的交换大小,我怀疑它太高了。 如果这是真的,你应该考虑添加一些内存模块,然后开始在服务器上出现大的停顿。