swap 关于redis服务器内存没用完,但是swap分区用完的问题

问题:服务器报警swap分区用尽,Lack of free swap space on server

解决方法:redis服务器内存没用完,但是swap分区用完的问题?

2.1 创建分区

以下的操作都要在root用户下进行,首先先建立一个分区,采用dd命令比如

dd if=/dev/zero of=/home/swap bs=1024 count=1024000 

这样就会创建/home/swap这么一个分区文件。文件的大小是1024000个block,一般情况下1个block为1K,所以这里空间是1G。

2.2 指定分区类型为swap

把分区变成swap分区,使用mkswap命令如下

/sbin/mkswap /home/swap

[root@nf114 ~]# /sbin/mkswap  /home/swap

Setting up swapspace version 1, size = 8191996 KiB

  no label, UUID=e6b98c77-4a9b-42d4-9746-28bcffccabbb

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

/sbin/swapon /home/swap

[root@nf114 ~]# /sbin/swapon /home/swap

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

现在再用free -m命令查看一下内存和swap分区大小,就发现增加了512M的空间了。

2.3 设置扩展的swap分区为自动挂载

不过当计算机重启了以后,发现swap还是原来那么大,新的swap没有自动启动,还要手动启动。

那我们需要修改/etc/fstab文件,增加如下一行如下自动挂载命令行

/home/swap swap swap defaults 0 0

推荐阅读更多精彩内容