VPS优化之添加swap交换分区

相信很多使用VPS的朋友和我一样,没有太多的钱买更多的内存,通常使用swap交换分区来给VPS提高一下性能。这次朋友购买了阿里云的主机,512M的内存,生成html的时候,mysql和php-fpm进程直接死掉,让阿里云的客服添加交换分区。NND,不给添加,回复说不建议添加,真想添加的话,自己添加去。真服了!!!

下面说一下VPS添加swap交换分区的方法(只有Xen的VPS可以,OpenVZ不支持添加swap)。

1、进入一个目录

cd /var/

2、获取256M的文件块:

dd if=/dev/zero of=swapfile bs=1024 count=262144

3、创建swap文件

/sbin/mkswap swapfile

4、激活swap文件

/sbin/swapon swapfile

5、查看一下swap是否正确:

/sbin/swapon -s

6、加到fstab文件中让系统引导时自动启动

vi /etc/fstab

在末尾增加以下内容:

/var/swapfile swap swap defaults 0 0
也可以执行如下命令,感觉这样更方便
echo "/var/swapfile swap swap defaults 0 0" >>/etc/fstab

=========================================

删除交换空间:
a 禁用交换分区:
# swapoff /dev/sdb2
b 从 /etc/fstab 中删除项目;
c 使用fdisk或yast工具删除分区

顺便附上DD命令的参数介绍:

dd命令
功能:把指定的输入文件拷贝到指定的输出文件中,并且在拷贝过程中可以进行格式转换。可以用该命令实现DOS下的diskcopy命令的作用。先用dd命令把软盘上的数据写成硬盘的一个寄存文件,再把这个寄存文件写入第二张软盘上,完成diskcopy的功能。需要注意的是,应该将硬盘上的寄存文件用rm命令删除掉。系统默认使用标准输入文件和标准输出文件。

语法:dd [选项]

if =输入文件(或设备名称)。
of =输出文件(或设备名称)。
ibs = bytes 一次读取bytes字节,即读入缓冲区的字节数。
skip = blocks 跳过读入缓冲区开头的ibs*blocks块。
obs = bytes 一次写入bytes字节,即写入缓冲区的字节数。
bs = bytes 同时设置读/写缓冲区的字节数(等于设置ibs和obs)。
cbs = byte 一次转换bytes字节。
count=blocks 只拷贝输入的blocks块。

出处:http://www.vpser.net/opt/vps-add-swap.html