Linux下增加交互分区(swap)主要有两种方法:一种是swap分区;另一种是 swap文件。前者适合有空间的分区可以使用;后者适合没有空的磁盘分区,硬盘的空间已经分配完毕了。


最近安装CentOS 6.7的系统时候,忘记分配交换分区了,而磁盘分区已经分配完毕,所以只能使用swap文件增加交互分区了。


1、查看交互分区的方法

cat /proc/swaps         或者swapon -s  或者free  或者top命令都可以。


2、通过swap的方法增加交互分区

2.1、创建交换文件(swap)(4G的大小),使用dd命令

dd if=/dev/zero of=/tmp/men.swap bs=1K count=4096000
记录了4096000+0 的读入
记录了4096000+0 的写出
4194304000字节(4.2 GB)已复制,14.7522 秒,284 MB/秒


2.2、转换格式,并挂载

free               #当前分区情况
          total       used       free     shared    buffers     cached
Mem:       1915808    1841004      74804        176       3920    1659312
-/+ buffers/cache:     177772    1738036
Swap:            0          0          0


格式转换使用mkswap命令;挂载使用swapon命令;

mkswap /tmp/men.swap     #转换格式
mkswap: /tmp/men.swap: warning: don't erase bootbits sectors
        on whole disk. Use -f to force.
Setting up swapspace version 1, size = 4095996 KiB
no label, UUID=e2d0d717-49ba-475a-9a3b-da2e3d082ea9


# swapon /tmp/men.swap          #使用交互分区
# free
             total       used       free     shared    buffers     cached
Mem:            1915808    1845096      70712        176       3988    1660696
-/+ buffers/cache:     180412    1735396
Swap:      4095996          0    4095996


2.3、将交互分区设置开机挂载

# vim /etc/fstab

UUID=e2d0d717-49ba-475a-9a3b-da2e3d082ea9 swap                    swap    defaults        0 0


这里用的是这个交换分区的UUID;


或者:

/tmp/men.swap  swap                    swap    defaults        0 0


这样可保证开机后自动挂载。


3、通过分区的方式增加swap交互分区,主要使用在现有的磁盘上操作。

3.1、通过命令 fdisk 新增分区,如: fdisk /dev/sdb ,在创建分区的时候选择为主分区,分区的ID为82,即时交换分区;

3.2、将分区转换为swap分区,例如: mkswap /dev/sdb4; 然后挂载 swapon /dev/sdb4

3.3、同样的叫分区设置开机挂载,如:

vim /etc/fstab

/dev/sdb4  swap                    swap    defaults        0 0


以上是增加交换分区的方法。