日期:2014-05-16  浏览次数:20712 次

在linux上增加swap交换空间

想在虚拟机里面安装oracle10g,发现默认的swap交换空间不满足最低要求,因为我分配的物理内存是1G,那么就按照要求需要2G的swap交换空间,默认只有1G的交换空间。添加swap交换空间的步骤如下:

第一步:确保系统中有足够的空间来用做swap交换空间,我使用的是KVM,准备在一个独立的文件系统中添加一个swap交换文件,在/opt/image中添加2G的swap交换文件
第二步:添加交换文件并设置其大小为2G,使用如下命令

[root@sense image]# dd if=/dev/zero of=/opt/image/swap bs=1024 count=2048000

过段时间就返回如下结果:
2048000+0 records in
2048000+0 records out
2097152000 bytes (2.1 GB) copied, 272.867 seconds, 7.7 MB/s
第三步:创建(设置)交换空间,使用命令mkswap
[root@sense image]# mkswap /opt/image/swap
Setting up swapspace version 1, size = 2097147 kB
第四步:检查现有的交换空间大小,使用命令free
[root@sense image]# free -m
???????????? total?????? used?????? free???? shared??? buffers???? cached
?? ?Mem:????????? 1011??????? 989???????? 21????????? 0????????? 1??????? 875
?? ?-/+ buffers/cache:??????? 112??????? 898
?? ?Swap:?????????1027????????? 0?????? 1027

或者检查meminfo文件
grep SwapTotal? /proc/meminfo
第五步:启动新增加的2G的交换空间,使用命令swapon
[root@sense image]# swapon /opt/image/swap
第六步:确认新增加的2G交换空间已经生效,使用命令free
[[root@sense image]# free -m
???????????? total?????? used?????? free???? shared??? buffers???? cached
Mem:????????? 1011??????? 995???????? 15????????? 0????????? 4??????? 877
-/+ buffers/cache:??????? 113??????? 897
Swap:?????????3027????????? 0?????? 3027

或者检查meminfo文件
grep SwapTotal? /proc/meminfo
第七步:修改/etc/fstab文件,使得新加的2G交换空间在系统重新启动后自动生效
在文件最后加入:
/opt/image/swap???? swap????? swap defaults 0 0