Linux交换分区

一、基础知识

      SWAP就是LINUX下的虚拟内存分区,它的作用是在物理内存使用完之后,将磁盘空间(也就是SWAP分区)虚拟成内存来使用.它和Windows系统的交换文件作用类似,但是它是一段连续的磁盘空间,并且对用户不可见。

     需要注意的是,虽然这个SWAP分区能够作为"虚拟"的内存,但它的速度比物理内存可是慢多了,因此如果需要更快的速度的话,并不能寄厚望于SWAP,最好的办法仍然是加大物理内存.SWAP分区只是临时的解决办法.

linux下得分区推荐一个交换分区,一个根分区,其中交换分区如上所说作为redhat或者其它虚机所划分的内存不够时候来使用!

     交换分区(swap)的合理值一般在内存的2 倍左右,可以适当加大。实际上具体还是以实际应用为准,swap为内存的2倍也不过是一种以讹传讹的说法。如果交换分区的使用都超过4GB以上了,可想而知服务器的性能应该差很多了。

     Linux下可以创建两种类型的交换空间,一种是swap分区,一种是swap文件。前者适合有空闲的分区可以使用,后者适合于没有空的硬盘分区,硬盘的空间都已经分配完毕。

二、创建交换分区

   1.环境准备

    准备一台虚拟机,并添加一块虚拟磁盘.vdb是我添加的虚拟磁盘

[root@server0 ~]# lsblk
NAME   MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
vda    253:0    0  10G  0 disk 
└─vda1 253:1    0  10G  0 part /
vdb    253:16   0  10G  0 disk 
 

  2.划分分区

    在vdb下划分一块分区,大小位512M,作为交换分区

[root@server0 ~]# fdisk /dev/vdb

[root@server0 ~]# lsblk
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
vda    253:0    0   10G  0 disk 
└─vda1 253:1    0   10G  0 part /
vdb    253:16   0   10G  0 disk 
└─vdb1 253:17   0  512M  0 part 
 

   3.格式化交换分区

  [root@server0 ~]# mkswap /dev/vdb1   #格式化交换分区

  [root@server0 ~]# blkid /dev/vdb1
/dev/vdb1: UUID="8ba9c6d1-afe1-47a7-bcca-557087c0c881" TYPE="swap"     #确认格式化结果

 

4.配置交换分区的开机启用

 [root@server0 ~]# vim /etc/fstab 

 /dev/vdb1 swap swap defautls 0 0   #在/etc/fstab 配置挂载信息 挂载点比较特殊 为swap

 5.确认挂载配置可用

  [root@server0 ~]# swapon -a    #启用新交换分区

  [root@server0 ~]# swapon -s    #查看挂载信息

  文件名                类型        大小    已用    权限
/dev/vdb1           partition    524284    0    -1

 [root@server0 ~]# free                     #查看内存信息
             total       used       free     shared    buffers     cached
Mem:        836720     746600      90120      17108        356     255424
-/+ buffers/cache:     490820     345900
Swap:       524284          0     524284

  6.基本命令

swapon [分区名或文件名]    #将指定分区或文件作为swap使用,也可以-a开启全部swap

swapoff [分区名或文件名]    #同上,有开就有关。

swapon -s     #查看目前使用的swap

 7.根据实际内存调整分区大小

4G以内的物理内存,SWAP 设置为内存的2倍。
4-8G的物理内存,SWAP 等于内存大小。
8-64G 的物理内存,SWAP 设置为8G。

64-256G物理内存,SWAP 设置为16G。

 8.修改交换分区的方法

  思路:将之前的交换分区关闭,重新调整分区大小,或者新建一个主分区作为交换分区

  [root@server0 ~]# fdisk /dev/vdb

  [root@server0 ~]# lsblk
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
vda    253:0    0   10G  0 disk 
└─vda1 253:1    0   10G  0 part /
vdb    253:16   0   10G  0 disk 
├─vdb1 253:17   0  512M  0 part 
└─vdb2 253:18   0    1G  0 part  

 [root@server0 ~]# vim /etc/fstab 

 /dev/vdb2 swap swap defautls 0 0    #开机自启

[root@server0 ~]# mkswap /dev/vdb2   #格式化

[root@server0 ~]#swapon -a   #开启所有

[root@server0 ~]# swapon /dev/vdb2
[root@server0 ~]# swapon -s
文件名                类型        大小    已用    权限
/dev/vdb2       partition    1048572    0    -

你可能感兴趣的:(Linux基础)