新增swap和卸载swap
一、新增swap分区虚拟内存
1.创建目录
mkdir /data/var/
2.创建硬盘模块大小为16G分配给虚拟内存硬盘
#适合当前剩余内存大于1G以上
dd if=/dev/zero of=/data/var/swap bs=1G count=16
#适合当前剩余内存小于1G以下
dd if=/dev/zero of=/data/var/swap bs=16M count=1024
3.格式化虚拟内存硬盘
mkswap /data/var/swap
4.挂载虚拟内存硬盘
swapon /data/var/swap
5.设置开机启动自动挂载虚拟内存硬盘
echo "/data/var/swap swap swap defaults 0 0" >>/etc/fstab
二、卸载swap分区虚拟内存
1.swap分区释放内存
swapoff /data/var/swap
2.删除swap
rm -rf /data/var/swap
3.取消开机启动自动挂载虚拟内存硬盘
vim /etc/fstab
#删除
/data/var/swap swap swap defaults 0 0
三、swap分区爆了解决办法,释放虚拟内存,重新挂载
1.查看swap使用的进程和内存
for i in $( cd /proc;ls |grep "^[09]"|awk ' $0 >100') ;do awk '/Swap:/{a=a+$2}END{print '"$i"',a/1024"M"}' /proc/$i/smaps 2>/dev/null ; done | sort -k2nr | head -10
23234 207.758M
8604 81.5742M
9790 58.5742M
9594 20.7109M
9593 20.7031M
9592 20.6914M
9589 20.6523M
9595 18.7578M
9596 16.8477M
9591 16.832M
2.查看是什么进程使用的swap空间
ps aux | grep 23234
3.查看swap挂载的空间
swapon -s
Filename Type Size Used Priority
/data/var/swap file 16777212 652 -1
4.卸载swap分区释放内存
swapoff /data/var/swap
5.重新挂载swap分区
swapon /data/var/swap