如何创建,增加SWAP?

发表于:2007-07-04来源:作者:点击数: 标签:
今天看见论坛有人问如何增加SWAP,以前看书知道怎么做,今天试验试验,记下笔记 :) 昨天有人问如何更改分区类型,正好也一并写了吧 ^_^ 制作SWAP有两种方法: 1.使用分区做为SWAP 2.使用文件做为SWAP 使用分区做为SWAP比较好,速度比文件的快,也不容易产生磁盘
今天看见论坛有人问如何增加SWAP,以前看书知道怎么做,今天试验试验,记下笔记 :)
昨天有人问如何更改分区类型,正好也一并写了吧 ^_^

制作SWAP有两种方法:
1.使用分区做为SWAP
2.使用文件做为SWAP

使用分区做为SWAP比较好,速度比文件的快,也不容易产生磁盘碎片
所有应该尽量使用分区作为SWAP.

先说说使用文件做为SWAP吧:

因为做为SWAP的文件,必须是连续的,所以需要使用dd命令创建它:
[root@NEWLFS ~]#dd if=/dev/zero of=swapfile bs=1024 count=65536
65536+0 records in
65536+0 records out
[root@NEWLFS ~]#
这样就制作了一个64M的swapfile (文件名自定)
如果想制作128M的SWAP,count值:128*1024=131072
制作128M的SWAP 命令就变成了:
dd if=/dev/zero of=swapfile bs=1024 count=131072
会计算了吧 ^_^

使用mkswap命令制作swap:

[root@NEWLFS ~]#mkswap swapfile
Setting up swapspace version 1, size = 67104 kB
[root@NEWLFS ~]#

最后加在/etc/fstab,每次开机都会自动启用SWAP:
编辑fstab,在最后加入一行,格式如下:

/root/swapfile swap swap defaults 0 0

OK,启用它:
[root@NEWLFS ~]#swapon -a
使用swapon -s 查看是否成功启用了:
[root@NEWLFS ~]#swapon -s
Filename      Type     Size    Used     Priority

/root/swapfile file    65528    0         -1

OK,swapfile已经投入使用啦  ^_^

再来看看使用分区作为swap :
注意:对分区不熟悉,不要轻易操作,重要数据要备份,硬盘有价,数据无价。
首先用分区工具分出一个分区作为SWAP,分区类型标识为82(Linux swap)
这里我使用/sbin/cfdisk比fdisk简单用一些 :-)
[root@NEWLFS ~]#cfdisk
.........略
   Name       Flags      Part Type  FSType          [Label]        Size (MB)
 --------------------------------------------------------------------------------
   hda1       Boot        Primary   W95FAT32                         6859.89
   hda5                   Logical   LinuxReiserFS                   22413.89
   hda6                   Logical  NTFS             [^C]           26386.70
   hda7                   Logical   Linuxext3                       10734.00
   hda8                   Logical   Linuxext3                         106.93
   hda9                   Logical   Linux raidautodetect             3619.13
   hda10                  Logical   Linuxext3                        7221.80
   hda11                  Logical   Linux swap /Solaris               534.65
   hda12                  Logical   Linux raidautodetect             2146.80

[Bootable]  [ Delete ]  [  Help  ]  [Maximize]  [ Print  ]  [  Quit  ]
     [  Type  ]  [ Units  ]  [ Write  ]
我没有空闲分区了 :(  假设我已经将hda11删除掉,现在hda11是空闲空间。
选择 [Type] :
...........略
 16 Hidden FAT16          82 Linux swap / Solaris  E4 SpeedStor
 17 Hidden HPFS/NTFS      83Linux                EB BeOS fs
 18 AST SmartSleep        84 OS/2 hidden C: drive  EE EFI GPT

Enter filesystem type: 82  ----->输入82

返回主菜单,hda11空间空间就应该变成了上面所示的那样。
确定无误,选择 [ Write  ] 写入分区表就OK了。

使用mkswap命令制作swap:

[root@NEWLFS ~]#mkswap /dev/hda11
Setting up swapspace version 1, size = 67104 kB
[root@NEWLFS ~]#

最后加在/etc/fstab,每次开机都会自动启用SWAP:
编辑fstab,在最后加入一行,格式类似如下:

 /dev/hda11  swap swap defaults 0 0

OK,启用它:
[root@NEWLFS ~]#swapon -a
使用swapon -s 查看是否成功启用了:
[root@NEWLFS ~]#swapon -s
Filename      Type     Size    Used     Priority

/dev/hda11   partition  522072     0         -1

OK,/dev/hda11也投入使用喽 :)

Good Luck ! 

原文转自:http://www.ltesting.net