阿里云服务器设置swap 交换分区

Server 林涛 802℃ 0评论

通常,我们申请的阿里云服务器,默认是没有交换分区的,这意味这linux系统失去页换入和页换出的能力,linux能用的运存就只有内存这一区域,当应用程序占用内存太多,内存中的缓存区会减少,系统运行速度会变慢。
可以用以下命令查看内存的换入换出记录:

如何开启交换区呢,运行下列命令:

dd if=/dev/zero of=/data/swap bs=512 count=8388616 //将zero设备作为输出,写入swap,count写入多少次,这里一共写入4G,如果没有swap会自动创建
mkswap /data/swap //设置swap为交换区
swapon /data/swap //启用
echo “/data/swap swap swap defaults 0 0” >> /etc/fstab //开机引导时会自动启动

查看是否生效:

free -m //可以看到swap分区

关闭swap分区:

swapoff /data/swap

swapoff -a >/dev/null

rm -rf /data/swap

另外一种方法: 永久配置

1. 分配文件空间

建立一个 2048M 的 swap 所需的文件空间

dd if=/dev/zero of=/var/blockd.swap bs=1M count=2048

2. 文件 swap 格式化

mkswap /var/blockd.swap

3. 激活 swap

由于 /etc/rc.local 文件会优先于 /etc/fstab 执行,所以在文件 /etc/rc.local 里面增加下面一行命令

swapon /var/blockd.swap

4. 挂在 swap

打开 /etc/fstab 文件编辑追加以下内容

/var/blockd.swap swap swap default 0 0

5. 修改 swap 利用率

编辑 /etc/sysctl.conf 实现永久生效

vm.swappiness=60

重启生效

更多命令

1. 查看 swap

swapon -s

2. 关闭 swap

swapoff /var/blockd.swap

3. 查看 Swap 利用率

cat /proc/sys/vm/swappiness

4. 查看磁盘使用情况

df -hl

5. 参数解释:vm.swappiness

这个参数主要用来表示物理内存还剩多大比例才开始使用内存交换,本文中设置的值为 60 即当物理内存还剩 60% 时开始进行内存交换。

阿里云的 ECS 目前都是默认关闭 swap ,所以需要服务器维护人员自己开启swap

 

另外一篇关于阿里云swap的帖子:http://www.iamlintao.com/6248.html 更详细的说明了上面的操作

如需转载请注明: 转载自26点的博客

本文链接地址: 阿里云服务器设置swap 交换分区

转载请注明:26点的博客 » 阿里云服务器设置swap 交换分区

喜欢 (1)
发表我的评论
取消评论

表情