CentOS中配置swap交换区的方法

2020-01-30 14:32:47于海丽

Mem: 1008 528 480 0 25 128
-/+ buffers/cache: 375 633
Swap: 999 0 999</p> <p> </p> <p>df -h</p> <p>[root@ithomer ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/xvda1 20G 16G 3.2G 84% /
tmpfs 505M 0 505M 0% /dev/shm
/dev/xvdb 9.9G 5.1G 4.4G 54% /home/data

 

根据上面 free 和 df 与配置 swap 之前比较,发现swap由0增加到了999(大约为1GB),而系统主盘(/dev/xvda1)由 4.2G 减小到了 3.2G 大约为1GB,即swap的空间来源于系统主盘(/dev/xvda1)


问题与解决

1、格式化及启动swap文件

接下来执行mkswap命令,将myswap文件格式化成s文件系统,系统才能使用,切换到/tmp目录,并执行以下命令:

复制代码
# mkswap swapfree (将文件格式化为swap文件格式)</p> <p>setting up swapspace version 1 , size = 262144 KB</p> <p># swapon /tmp/swapfree (#启动swap分区)

要停止使用新创建的swap文件,只要执行 swapoff /tmp/swapfree命令即可,如果swap交换文件不再使用,可以删除此文件。

2、检查swap

复制代码
#swapon -s

3、 开机时自动启动新添加的swap分区

如果每次开机后都要执行swapon命令启动swap分区或者文件,这太麻烦了.这时可以利用文字编辑器在/etc/fstab文件加一行,好让开机时自动启动swap分区及文件:

复制代码
/dec/hdb5 swap swap defaults 0 0 (开机时启动此swap分区)</p> <p>/tmp/swapfree swap swap defaults 0 0 (开机时启动此swap文件) .

swap空间大小:

通常情况下,Swap空间应大于或等于物理内存的大小,最小不应小于64M,通常Swap空间的大小应是物理内存的2-2.5倍。但根据不同的应用,应有不同的配置:如果是小的桌面系统,则只需要较小的Swap空间,而大的服务器系统则视情况不同需要不同大小的Swap空间。特别是数据库服务器和Web服务器,随着访问量的增加,对Swap空间的要求也会增加,具体配置参见各服务器产品的说明。

swap数量:

Swap分区的数量对性能也有很大的影响。因为Swap交换的操作是磁盘IO的操作,如果有多个Swap交换区,Swap空间的分配会以轮流的方式操作于所有的Swap,这样会大大均衡IO的负载,加快Swap交换的速度。如果只有一个交换区,所有的交换操作会使交换区变得很忙,使系统大多数时间处于等待状态,效率很低。用性能监视工具就会发现,此时的CPU并不很忙,而系统却慢。这说明,瓶颈在IO上,依靠提高CPU的速度是解决不了问题的。