Skip to content

设置SWAP

使用free -m命令查看当前系统Swap设置情况;

bash
root@SunPma ~ # free -m      // 查看当前Swap设置情况(可以看到当前系统并没有虚拟内存)
              total        used        free      shared  buff/cache   available
Mem:            981          73         807           0          99         787
Swap:             0           0           0

root@SunPma ~ # mkdir swap   // 创建Swap文件夹

root@SunPma ~ # cd swap      // 进入Swap文件夹

root@SunPma ~/swap # dd if=/dev/zero of=swapfile bs=1M count=2048  // 创建一个2G的内存配置文件
2048+0 records in
2048+0 records out
2147483648 bytes (2.1 GB, 2.0 GiB) copied, 2.13948 s, 1.0 GB/s

root@SunPma ~/swap # chmod 0600 swapfile    // 设置为600权限

root@SunPma ~/swap # mkswap swapfile        // 将配置文件转换成Swap文件
Setting up swapspace version 1, size = 2 GiB (2147479552 bytes)
no label, UUID=7a6f9b23-6de5-444d-bf08-0c67bc309317

root@SunPma ~/swap # swapon swapfile       // 激活Swap文件

root@SunPma ~/swap # free -m               // 再次查看Swap情况,确定是否设置成功
              total        used        free      shared  buff/cache   available
Mem:            981          74          67           0         839         761
Swap:          2047           0        2047

注意:设置完成后的虚拟内存会在重新启动后失效;

如果需要永久生效,可以修改/etc/fstab文件,在最后添加如下代码:

bash
// 编辑`/etc/fstab`文件
vi /etc/fstab

// 在最后添加以下代码
/root/swap/swapfile swap swap defaults 0 0

image

删除SWAP

使用free -m命令查看系统Swap设置情况;

bash
root@SunPma ~ # free -m             // 查看当前Swap设置情况(当前系统设置有1162MB的虚拟内存)
              total        used        free      shared  buff/cache   available
Mem:            981         270         240           6         470         564
Swap:          1162          29        1133

root@SunPma ~ # cat /proc/swaps     // 查看Swap挂载位置(当前系统设置在根目录下/swapfile)
Filename                                Type            Size    Used    Priority
/swapfile                               file            1190340 29952   -2

root@SunPma ~ # swapoff /swapfile   // 停止Swap交换分区(注意分区位置)

root@SunPma ~ # rm /swapfile        // 删除Swap分区文件