> Linux教程 > Linux学习 >

建立Linux Swap交换分区的两种方法

关于swap交换分区的设置

一种流行的、以讹传讹的说法是,安装Linux系统时,交换分区swap的大小应该是内存的两倍。也就是说,如果内存是2G,那么就应该分出4G的硬盘空间作为交换空间,其实这是严重的浪费。


真实的情况是:可以根据你系统内存的大小,以及所使用的程序,自行决定交换分区的大小,甚至可以完全不用交换分区!

做一个假设:如果你的内存足够大,极少出现内存不足的情况,那么你就不需要交换分区。事实上,日常使用很少能用完全部的内存。

作为应用服务器,还是要有专门的虚拟内存,有备无患。但是虚拟内存的大小不一定非要内存的两倍。

查看服务器上是否有swap

 

[root@server0 ~]# free -m
             total       used       free     shared    buffers     cached
Mem:          1841       1099        741         16          1        603
-/+ buffers/cache:        495       1345
Swap:            0          0          0

 

 

 [root@server0 ~]# free -m
             total       used       free     shared    buffers     cached
Mem:          1841       1099        741         16          1        603
-/+ buffers/cache:        495       1345
Swap:            0          0          0

 

swap 下面显示为 0 因此,需要建立一个swap空间。

方法1:创建swap文件的方法


创建大小为512M的交换文件:
[root@server0 ~]# dd if=/dev/zero of=/swapfile bs=1024k count=512
512+0 records in
512+0 records out
536870912 bytes (537 MB) copied, 4.96061 s, 108 MB/s

使用 mkswap 命令来格式化交换文件
[root@server0 ~]# mkswap /swapfile
Setting up swapspace version 1, size = 524284 KiB
no label, UUID=78b8c7bf-b898-450e-ab64-d4d78f256f1e

启用交换分区
[root@server0 ~]# swapon /swapfile
swapon: /swapfile: insecure permissions 0644, 0600 suggested.

查看交换分区
[root@server0 ~]# swapon -s
Filename    Type  Size Used Priority
/swapfile                               file 524284 0 -1

#写入开机启动
[root@server0 ~]# cat /etc/fstab
/swapfile swap swap defaults 0 0

 

 创建大小为512M的交换文件:
[root@server0 ~]# dd if=/dev/zero of=/swapfile bs=1024k count=512
512+0 records in
512+0 records out
536870912 bytes (537 MB) copied, 4.96061 s, 108 MB/s
 
使用 mkswap 命令来格式化交换文件
[root@server0 ~]# mkswap /swapfile
Setting up swapspace version 1, size = 524284 KiB
no label, UUID=78b8c7bf-b898-450e-ab64-d4d78f256f1e
 
启用交换分区
[root@server0 ~]# swapon /swapfile
swapon: /swapfile: insecure permissions 0644, 0600 suggested.
 
查看交换分区
[root@server0 ~]# swapon -s
Filename    Type  Size Used Priority
/swapfile                               file 524284 0 -1
 
#写入开机启动
[root@server0 ~]# cat /etc/fstab
/swapfile swap swap defaults 0 0

 

方法2:创建硬盘swap分区


1、使用fdisk来创建交换分区(假设 /dev/sdb2 是创建的交换分区)
2、 使用 mkswap 命令来设置交换分区:
# mkswap /dev/sdb2
3、启用交换分区:
# swapon /dev/sdb2
4、写入/etc/fstab,以便在引导时启用:
/dev/sdb2 swap swap defaults 0 0

 


1、使用fdisk来创建交换分区(假设 /dev/sdb2 是创建的交换分区)
2、 使用 mkswap 命令来设置交换分区:
# mkswap /dev/sdb2
3、启用交换分区:
# swapon /dev/sdb2
4、写入/etc/fstab,以便在引导时启用:
/dev/sdb2 swap swap defaults 0 0

 

删除交换分区


1、禁用交换分区:
   # swapoff /dev/sdb2
2、从 /etc/fstab 中删除项目;
3、使用fdisk或yast工具删除分区。

删除交换文件步骤同上。

 

 

 1、禁用交换分区:
   # swapoff /dev/sdb2
2、从 /etc/fstab 中删除项目;
3、使用fdisk或yast工具删除分区。
 
删除交换文件步骤同上。

 

(责任编辑:IT)