linux swap分区使用指南

(编辑:jimmy 日期: 2024/11/20 浏览:2)

Linux中SWAP交换分区概述

交换分区。我们如果没有足够的内存,也许就不能运行某些大型的软件,解决的办法是在硬盘上划出一个区域来当作临时的内存,好像内存变大了。Windows操作系统把这个区域叫做虚拟内存,Linux把它叫做交换分区swap。

虽然随着硬件价格的下降内存已经不大会限制我们了,但是交换分区这个概念却保留下来,而且有继续保留下去的原因,当然涉及到内核的问题,我们不多讨论,我们要说明的是,安装Linux时候建立交换分区时,如果你的内存只有64M或则128M,那么交换分区最好设置成为它的3倍,如果你的分区足够大,有256M或则512M,那么设置成为相同大小就可以了。但是请注意,最好大小为2的N次幂的数字。

swap交换分区一般只在xen VPS有这种功能,openvz则没有。swap交换分区可以增加一定量的内存使用,但增加swap分区的最重要的作用是防止网站流量突然增大而导致系统分配内存不够用而死机。如果你的VPS长期处理使用swap的状态下,建议你检查下程序或VPS,或者升级更大的内存的VPS,因为使用swap交换分区,会使服务器的性能降低很多,导致访问速度变慢。下面我们来看看如何增加swap交换分区。
1、以root权限登录SSH,键入如下命令创建512M的swap文件(1024 * 512MB = 524288).
dd if=/dev/zero of=/swapfile1 bs=1024 count=524288
2、创建Linux交换文件
mkswap /swapfile1
3、立即激活 /swapfile1交换文件
swapon /swapfile1
4、设置系统自激活交换文件。编辑 /etc/fstab文件,并增加如下第二行代码。
vi /etc/fstab
/swapfile1 swap swap defaults 0 0
5、重启系统,使用free -m查看swap大小。 如果您喜欢这篇文章(按Ctrl+D快速收藏)。

#vi /etc/fstab

UUID=b45eed4a-b319-43fa-9d03-200c558b5d84 /                       ext4    defaults        1 1
UUID=0ab45aeb-98f7-4f31-863d-791f7947d8f7 /boot                   ext4    defaults        1 2
/dev/sdb5               swap                    swap    defaults        0 0
UUID=bddbfd46-378f-4583-930f-554f9c6f4ab6 swap                    swap    defaults        0 0
tmpfs                   /dev/shm                tmpfs   defaults        0 0
devpts                  /dev/pts                devpts  gid=5,mode=620  0 0
sysfs                   /sys                    sysfs   defaults        0 0
proc                    /proc                   proc    defaults        0 0