我们知道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分区那么高~