linux添加swap交换分区(虚拟内存)
添加swap交换分区的方法
(只有虚拟化为Xen、KVM、VMWare的VPS可以,OpenVZ不支持添加swap)。
1.检查是否有swap,执行free -m,如果有swap一行且total项下不为零的话就是存在swap,否则就不适合再进行添加swap
2.以下以添加2GB SWAP为例,生成文件块:(SWAP一般设置为内存的2倍,并非完全以此为标准,只适合4GB以下内存,count后面的数为要设置的swap大小xxMB)
dd if=/dev/zero of=/var/swapfile bs=1M count=2048
3.创建swap文件
mkswap /var/swapfile
4.激活swap文件
swapon /var/swapfile
5.查看swap是否正确
swapon -s
另外为了安全建议执行:
chmod 0600 /var/swapfile
改一下权限
6.到fstab修改文件,添加开机自动挂载
vi /etc/fstab 在尾行添加
/var/swapfile swap swap defaults 0 0
或者
echo "/var/swapfile swap swap defaults 0 0" >>/etc/fstab
删除添加的swap
/sbin/swapoff /var/swapfile rm -f /var/swapfile
删除自动挂载的设置
vi /etc/fstab
顺便附上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块。