0%

linux设置开启swap交换分区(虚拟内存)

linux设置开启swap交换分区

1. 验证不存在交换分区

1
free -m

输出如下:

1
2
3
4
             total       used       free     shared    buffers     cached
Mem: 995 947 47 0 46 142
-/+ buffers/cache: 758 236
Swap: 0 0 0

如果swap选项total是0则表示没有交换分区,开始下一步

2. 创建swap分区
使用dd命令选择swap分区目录以及大小,在此我们给他放到根目录,创建的是2G的虚拟内存,可以根据自己需要选择大小。

1
dd if=/dev/zero of=/swapfile count=2048 bs=1M

输出如下:

1
2
3
2048+0 records in
2048+0 records out
2147483648 bytes (2.1 GB) copied, 10.5356 s, 204 MB/s

接下来验证根目录是否存在swapfile

1
ls / | grep swapfile

不出意外的话你将会看到swapfile


3. 激活swap分区
交换分区不会自动激活,你需要告诉服务器如何格式化文件,使它作为一个有效的交换分区。
出于安全考虑,交交换区权限设置成600

600link
1
2
3
4
5

使用mkswap命令来设置交换文件:

```bash
mkswap /swapfile

输出如下

1
2
Setting up swapspace version 1, size = 4194300 KiB
no label, UUID=*******************************



4. 开启swap分区

1
swapon /swapfile

输出如下:
再次使用 free -m 查看内存使用情况,输出如下:

1
2
3
4
total       used       free     shared    buffers     cached
Mem: 1840 1754 86 16 23 1519
-/+ buffers/cache: 210 1630
Swap: 2047 0 2047

5. 设置允许开机启用swap分区

1
sudo vi /etc/fstab

在后面加上

1
/swapfile   none    swap    sw    0   0

参考:vultr帮助文档