Linux内存拓展(内存不足SWAP解决方案)

发布时间:2016年12月06日

Swap是Linux下的交换分区,类似Windows的虚拟内存,当物理内存不足时,系统可把一些内存中不常用到的程序放入Swap,解决物理内存不足的情况。
若系统安装时开辟的Swap空间太小,可通过手动创建Swap文件。

下面是创建使用SWAP的方法:

一、创建文件

dd if=/dev/zero of=/etc/swapfile bs=1024 count=4096000

SSH执行以上命令,创建一个名为vpppscom的4G 空文件(写0占用磁盘)。

二、制作为Swap文件

 mkswap /etc/swapfile

SSH执行以上命令,将生成的vpppscom制作为SWAP文件,若没有制作SWAP文件,执行下一步可能会出现:“swapon: vpppscom: read swap header failed: Invalid argument”错误。

三、让Swap文件生效

 swapon /etc/swapfile

SSH执行以上命令,使“vpppscom”这个Swap文件生效,并叠加进当前sawp空间中。

四、查看当前SWAP

swapon -s

SSH执行以上命令,查看当前swap的情况。

五、自动挂载
1)编辑/etc/fstab

vi /etc/fstab

2)按格式填入

/etc/swapfile swap    swap    defaults      0    0

按格式填入以上信息:

/dev/vda1 / ext3 noatime,acl,user_xattr 1 1
proc /proc proc defaults 0 0
sysfs /sys sysfs noauto 0 0
debugfs /sys/kernel/debug debugfs noauto 0 0
devpts /dev/pts devpts mode=0620,gid=5 0 0
/etc/swapfile swap swap defaults 0 0

至此未出现任何错误,那么SWAP就创建好了,使用free -m命令就可以看到了。

下面是销毁停用SWAP的方法:

1、先停止swap分区

/sbin/swapoff /etc/swapfile

2、删除swap分区文件

rm -rf /etc/swapfile

3、修改/etc/fstab文件,把

/etc/swapfile swap swap defaults 0 0

这行删除。
这样就能把手动增加的分区删除了。

PS:

1、增加删除swap的操作只能使用root用户来操作。

2、装系统时分配的swap分区貌似删除不了。

3、swap分区一般为内存的2倍,但最大不超过2G

然SWAP只是缓兵之计,实际使用中当然没能比的上真实的内存,所以要想得到更好的体验还是购买更大的内存吧!


文章标签:swap, 内存