首页 > 网络技巧 > 【折腾】给百度云(VPS)添加Swap暨突发内存
2015
09-12

【折腾】给百度云(VPS)添加Swap暨突发内存

使用百度云主机一段时间了,奈何换装了Linux后貌似没有突发内存,闲来无事折腾下吧,参考了多方零散资料,终于成功了,如下图所示。

【折腾】给百度云(VPS)添加Swap暨突发内存 - 第1张  | 意林笔记

我买的时候选了15G的本地盘,Linux下找不到了,发工单居然说是临时数据盘。百度云回复工单会用电话沟通,还是不错的,具体方法记录一下吧。其他Linux系统添加突发内存也差不多啦~

一、首先进行百度本地磁盘暨临时盘的格式化重新挂载。

详细方法官方已经给出了教程,我这里只是引用一下,不累述了。没有临时盘的可以跳过了。

Linux本地磁盘或云硬盘挂载方法

二、用本地磁盘或者其他磁盘创建Swap。

1、检查 Swap 空间

在设置 Swap 文件之前,有必要先检查一下系统里有没有既存的 Swap 文件。

运行以下命令:

  1. swapon -s

如果返回的信息概要是空的,则表示 Swap 文件不存在。

2、检查文件系统
在设置 Swap 文件之前,同样有必要检查一下文件系统,看看是否有足够的硬盘空间来设置 Swap 。运行以下命令:

  1. df -hal

检查返回的信息,还剩余足够的硬盘空间即可。

3、创建并允许 Swap 文件

下面使用 dd 命令来创建 Swap 文件。

  1. dd if=/dev/zero of=/swapfile bs=1024 count=512k
参数解读:
if=文件名:输入文件名,缺省为标准输入。即指定源文件。< if=input file >
of=文件名:输出文件名,缺省为标准输出。即指定目的文件。< of=output file >
bs=bytes:同时设置读入/输出的块大小为bytes个字节
count=blocks:仅拷贝blocks个块,块大小等于bs指定的字节数。

4、格式化并激活 Swap 文件

上面已经创建好 Swap 文件,还需要格式化后才能使用。运行命令:

  1. mkswap /swapfile

激活 Swap ,运行命令:

  1. swapon /swapfile

以上步骤做完,再次运行命令:

  1. swapon -s

你会发现返回的信息概要:

  1. Filename                Type        Size    Used    Priority
  2. /swapfile               file        524284    0     -1

如果要机器重启的时候自动挂载 Swap ,那么还需要修改 fstab 配置。

用 vim 打开 /etc/fstab 文件,在其最后添加如下一行:

  1. /swapfile          swap            swap    defaults        0 0

最后,赋予 Swap 文件适当的权限:

  1. chown root:root /swapfile 
  2. chmod 0600 /swapfile

同时,我们还可以修改 Linux Swap 空间的 swappiness ,降低对硬盘的缓存。

Linux 会使用硬盘的一部分做为 Swap 分区,用来进行进程调度–进程是正在运行的程序–把当前不用的进程调成‘等待(standby)’,甚至‘睡眠(sleep)’,一旦要用,再调成‘活动(active)’,睡眠的进程就会在 Swap 分区,把内存空出来让给‘活动’的进程。

如果内存够大,应当告诉 Linux 不必太多的使用 Swap 分区,可以通过修改 swappiness 的参数来设置。swappiness=0 的时候表示最大限度使用物理内存,然后才是 Swap 空间,swappiness=100 的时候表示积极的使用 Swap 分区,并且把内存上的数据及时的搬运到 Swap 空间里面。

在 CentOS 中,swappiness 的默认值是60。

通过以下命令可以看到:

  1. cat /proc/sys/vm/swappiness

返回值60

我们可以调整 swappiness 的值到一个合适的参数,从而达到最优化使用 Swap 的目的。这里我们将其设为10。

使用 sysctl 命令:

  1. sysctl vm.swappiness=10

但是这只是临时性的修改,在你重启系统后会恢复默认的60,要永久设置,还需要在 vim 中修改sysctl.conf:

  1. vi /etc/sysctl.conf

在这个文档的最后加上这样一行:

  1. # Search for the vm.swappiness setting.  Uncomment and change it as necessary.
  2. vm.swappiness=10

输入:x,保存退出 vim 。

这样一来,Swap 分区重启后都会生效了。

三、其他挂载盘Swap文件划分与命令修改

如果不想用默认磁盘创建Swap,那么可以更改Swap文件生成的挂载磁盘。

【折腾】给百度云(VPS)添加Swap暨突发内存 - 第2张  | 意林笔记

如上图我想在vdb1的磁盘生成Swap文件块,那只需把生成和后期激活的命令中替换根目录定义。

  1. /swapfile 全部替换为 /mnt/swapfile 即可
最后编辑:
作者:意林
站长意林,一名80后全职普通上班族,旗下提供HelloIDC免费空间等业务。
捐 赠如果感觉本站不错,请尝试捐助一下,1块也不少!

留下一个回复

你的email不会被公开。