Linux swap空间问题

我们知道Linux做虚拟内存交换的空间叫做swap空间.

我们也知道,如果swap划分太小了,RAM用完了swap也用完了系统就可以崩溃了.

所以我们在swap用完之前有什么可以快速解救的办法没有呢?

当然是有的!

方法1: 从其他的分区划分空间添加到swap分区

我们可以使用fdisk命令轻易的将其他的分区空间加入到swap空间中,但是注意,添加之前我们必须使用swapoff命令将现有的swap分区off以后,重新合并老的swap分区和追加的分区,之后再使用swapon将swap激活. 具体的使用方法大家可以查阅swapoff/swapon的使用手册,非常简单的

而且要注意的是,我们swapon以后,因为我们重新合并了分区,所以以前的swap分区的UUID可能会改变,因此我们还要edit /etc/fstab 文件重新将新的swap的UUID写进去,这样在机器reboot的时候我们才能够正确的mount我们的swap分区

 

方法2: 使用一个文件当作swap交换文件

这个方法的好处在于,我们不需要重新分配分区,而且这个交换文件可以是临时的,我们可以随时swapoff并且delete掉他

bash代码:

1 # dd if=/dev/zero of=pagefile bs=1024 count=65535
2 # mkswap pagefile
3 # swapon pagefile

这样我们就可以轻松的加入64MB的swap空间

在我们不需要的时候我们可以

1 swapoff pagefile
2 rm -f pagefile

这种交换文件的坏处就是,因为我们使用的不是专门的分区,所以在其他的分区上可能会存在文件碎片话的问题,所以我们创建的交换文件的交换效率可能没有专门的swap分区那么高~

 

 

posted @ 2013-09-11 11:53  linehrr-freedom  阅读(691)  评论(0编辑  收藏  举报