设置Linux的Swap交换分区

2020-05-04  本文已影响0人  王贼臣

设置Linux的Swap交换分区

Linux

有的时候Linux服务器运行时出现卡顿卡死的,或者已知内存不足够支持所有业务的运行,这时建议设置一点Swap交换分区。Swap交换分区可以将内存中暂时用不到的数据放到硬盘上,以提高内存的使用效率,解决因为内存溢出出现的卡顿卡死现象。

很多人其实喜欢将Linux的服务器的所有性能都压榨出来,这就要求将内存正好用得满满当当的,不设置swaq分区的目的也是为了让系统更快运行。不过,我更喜欢设置一点swap分区,因为很难讲业务需要的内存大小计算的很精确,如果余量没有留足够,又没有swap分区,这时系统可能会卡死,后果更严重。因此,我个人的建议是,用满内存,但是还是要设置一点swap分区,1-2个G足够了,在内存被用到极限的边缘情况下,保持系统不卡死。

请先阅读这篇文章,学习swappiness参数的含义和设置:Linux SWAP交换分区应该设置多大?

开始设置Swap分区:

$ dd if=/dev/zero of=/swap bs=1024M count=2

使用dd命令,利用/dev/zero伪文件,生成一个根目录下的swap文件,大小2G;bs表示大小,count表示块数。

有时会出现这样的错误,dd: memory exhausted by input buffer of size xxxxxxxx bytes.....这是由于bs设置的过大,超过了系统内存,修改的方法就是将bs参数设置小一点,同时把count参数设置大一点,只要两者的乘机不变就OK。比如,我们可以把刚才那条命令修改为:

dd if=/dev/zero of=/swap bs=512M count=4 dd if=/dev/zero of=/swap bs=256M count=8
$ dd if=/dev/zero of=/swap bs=128M count=16

效果都是一样的!这个命令执行需要点时间,创建的swap文件越大,时间越长。

然后,将刚才创建的文件格式化成swap格式:

$ mkswap /swap

这时就可以激活swap分区了:

$ swapon /swap

这时系统会提示刚加载的swap文件的权限不安全,建议从0644修改为0600,使用这个命令修改:sudo chmod 0600 swap

卸载/swap分区:

swapoff /swap

要想在系统启动的时候,自动加载/swap分区,需要修改/etc/fstab文件,在这个文件中增加一行:

/swap swap swap defaults 0 0
xinlin@iZ239r252v4Z:~xinlin@iZ239r252v4Z:~ cat /etc/fstab

<pre style="padding: 0px; margin: 1em 0px; box-sizing: content-box; font-family: Courier, monospace, serif; font-size: 15px; white-space: pre-wrap; overflow-wrap: break-word;"># /etc/fstab: static file system information.

Use 'blkid' to print the universally unique identifier for a

device; this may be used with UUID= as a more robust way to name devices

that works even if disks are added and removed. See fstab(5).

<file system> <mount point> <type> <options> <dump> <pass>

/ was on /dev/vda1 during installation

UUID=93d70461-bd51-4276-8e7a-ca984d1af386 / ext4 errors=remount-ro 0 1
/dev/fd0 /media/floppy0 auto rw,user,noauto,exec,utf8 0 0
/swap swap swap defaults 0 0</pre>

查看swap分区的命令:swapon -s

这个命令可以看到详细的swap分区信息,相比只看总量的free命令,这个命令能看明细。

总的来说,在Linux系统下设置swap交换分区的操作还是比较简单的,关键是要理解其中各种参数的概念。

本文链接:https://www.maixj.net/ict/linux-swap-2-15254

上一篇 下一篇

猜你喜欢

热点阅读