CentOS增加虚拟内存
因为vm或者阿里云,腾讯云等创建的虚拟机或者服务器,受限于内存,项目在运行的时候,占用的内存已经不足以支撑,所以有的时候就会出现宕机的情况发生,后面发现可以通过使用增加虚拟内存空间,来增加内存容量。
这里讲下CentOS7下swap分区的创建和删除。
1、设置交换分区文件
free -m
total used free shared buff/cache available
Mem: 3789 3119 132 1 537 435
Swap: 0 0 0
# 文件越大 创建时间越长
dd if=/dev/zero of=/mnt/swap bs=1M count=4096
if:表示input_file输入文件
of:表示output_file输出文件
bs:表示block_size块大小
count:表示计数。
这里,我采用了数据块大小为1M,数据块数目为4096,这样分配的空间就是4G左右大小。
2、通过mkswap命令将上面新建出的文件做成swap分区
mkswap /mnt/swap
3、查看内核参数vm.swappiness中的数值是否为0,如果为0则根据实际需要调整成30或者60
cat /proc/sys/vm/swappiness
sysctl -w vm.swappiness=60
4、启用此交换分区的交换功能
echo "/mnt/swap swap swap defaults 0 0" >> /etc/fstab
# 注:若想永久修改,则编辑/etc/sysctl.conf文件**
mount -a
swapon /mnt/swap
swapon: /mnt/swap:不安全的权限 0644,建议使用 0600。
# 执行以上命令可能会出现:“不安全的权限 0644,建议使用 0600”类似提示,不要紧张,实际上已经激活了,可以忽略提示,也可以听从系统的建议修改下权限:
chmod -R 0600 /mnt/swap
# 查看
free -m
total used free shared buff/cache available
Mem: 3789 3118 153 1 517 433
Swap: 4095 1 4094
5、关闭swap分区
# 如果要删除交换分区和交换文件,逆着上面的顺序操作:
# 先删除/etc/fstab文件中添加的交换文件行
/mnt/swap swap swap defaults 0 0
# 停用交换文件
swapoff /mnt/swap
# 删除交换文件
rm -fr /mnt/swap