在Linux下启用虚拟内存swap文件

linux下修改SWAP空间大小
以下的操作都要在root用户下进行,使用free -m 查询当前swap空间大小。

free -m

              total        used        free      shared  buff/cache   available
Mem:           1837        1003          82           3         751         667
Swap:             0           0           0

然后使用dd命令创建swap文件,bs设置单位每个1K,count设置个数2000000个,所以产生一个2.0GB的文件

dd if=/dev/zero of=/root/swap bs=1024 count=2000000

2000000+0 records in
2000000+0 records out
2048000000 bytes (2.0 GB) copied, 16.2704 s, 126 MB/s

接着再把这个分区变成swap分区。

mkswap /root/swap

Setting up swapspace version 1, size = 1999996 KiB
no label, UUID=c35ab8ec-b72e-4fae-8b9a-bd9642f05253

再接着使用这个swap分区。使其成为有效状态。

swapon /root/swap

swapon: /root/swap: insecure permissions 0644, 0600 suggested.

根据提示,swap文件建议设置为600

chmod 600 /root/swap

现在再用free -m命令查看一下内存和swap分区大小,就发现增加了。
不过当计算机重启了以后,发现swap还是原来那么大,新的swap没有自动启动,还要手动启动。那我们需要修改/etc/fstab文件,增加如下一

/root/swap swap swap defaults 0 0

你就会发现你的机器自动启动以后swap空间也增大了。

————————————————————————————————————————————————
参考文档:https://hupingzhi.cn/archives/33/

原文地址:https://www.cnblogs.com/hupingzhi/p/13417641.html