在安装LINUX的时候开始就要建一个SWAP,最好是内存的2倍。如果物理内存超大(大于32G),建议为内存的一半或者为8000Mb。
如果在使用过程中遇到交换空间不够,可以通过以下的方法来添加:
1、检查当前的分区情况(使用free -m或cat /proc/swaps ):
root@h3cdb01-ts bin]# free -m
total used free shared buffers cached
Mem: 7973 7935 38 0 9 7646
-/+ buffers/cache: 279 7694
Swap: 4000 1171 2829
这里交换空间大小为4000M, 想扩大为8000M。
2、增加交换分区文件及大小:
判定新交换文件的大小,将大小乘以1024来判定块的大小。例如,大小为64MB的交换文件的块大小为65536,在 shell 提示下以根用户身份键入以下命令,其中的 count 等于想要的块大小。
count的计算公式: count=SIZE*1024 (size以MB为单位)
[root@h3cdb01-ts home]# dd if=/dev/zero f=/test/swap01 bs=1024 count=4096000
4096000+0 records in
4096000+0 records out
使用以下命令来设置交换文件:
[root@h3cdb01-ts test]# mkswap /test/swap01
Setting up swapspace version 1, size = 4194299 kB
3、启用交换分区文件:
要立即启用交换文件而不是在引导时自动启用,使用以下命令:
[root@h3cdb01-ts test]# free -m
total used free shared buffers cached
Mem: 7973 7935 38 0 4 7615
-/+ buffers/cache: 315 7658
Swap: 4000 1160 2839
[root@h3cdb01-ts test]# swapon /test/swap01 (启动交换区的命令)
[root@h3cdb01-ts test]# free -m
total used free shared buffers cached
Mem: 7973 7932 41 0 5 7610
-/+ buffers/cache: 316 7657
Swap: 8000 1160 6839
(下面的方法没有经过测试,如果要真正使用,请先测试)
要在引导时启用,编辑 /etc/fstab 文件来包含以下行(/home/swap swap swap defaults 0 0 ):
[root@db2 root]# vi /etc/fstab
LABEL=/ / ext3 defaults 1 1
LABEL=/boot /boot ext2 defaults 1 2 /home/swap swap swap defaults 0 0
none /dev/pts devpts gid=5,mode=620 0 0
none /proc proc defaults 0 0
none /dev/shm tmpfs defaults 0 0
LABEL=/usr /usr ext3 defaults 1 2
/dev/sda5 swap swap defaults 0 0
/dev/cdrom /mnt/cdrom iso9660 noauto,owner,kudzu,ro 0 0
/dev/fd0 /mnt/floppy auto noauto,owner,kudzu 0 0
/home/swap swap swap defaults 0 0
系统下次引导时,它就会启用新建的交换文件
再次检查添加后的情况:
[root@db2 oracledb]# free -m
total used free shared buffers cached
Mem: 1006 979 27 0 6 917
-/+ buffers/cache: 54 952
Swap: 999 0 999
[root@db2 oracledb]#
阅读(4002) | 评论(0) | 转发(0) |