Linux 下 swap 分区及作用详解

我们在安装系统的时候已经建立了 swap 分区。swap 分区是 Linux 系统的交换分区,当内存不够用的时候,我们使用 swap 分区存放内存中暂时不用的数据。也就是说,当内存不够用时,我们使用 swap 分区来临时顶替。

建议 swap 分区的大小是内存的两倍,但不超过 2GB。但是有时服务器的访问量确实很大,有可能出现 swap 分区不够用的情况,所以我们需要学习 swap 分区的构建方法。建立新的 swap 分区,只需要执行以下几个步骤。

  1. 分区:不管是 fdisk 命令还是 parted 命令,都需要先区。
  2. 格式化:格式化命令稍有不同,使用 mkswap 命令把分区格式化成 swap 分区。
  3. 使用 swap 分区。

实例操作后续添加......

----------------------------------------------------------------------------

free 命令主要是用来査看内存和 swap 分区的使用情况的,其中:

  • total:是指总数;
  • used:是指已经使用的;
  • free:是指空闲的;
  • shared:是指共享的;
  • buffers:是指缓冲内存数;
  • cached:是指缓存内存数,单位是KB;

我们需要解释一下 buffers(缓冲)和 cached(缓存)的区别。简单来讲,cached 是给读取数据时加速的,buffers 是给写入数据加速的。cached 是指把读取出来的数据保存在内存中,当再次读取时,不用读取硬盘而直接从内存中读取,加速了数据的读取过程;buffers 是指在写入数据时,先把分散的写入操作保存到内存中,当达到一定程度后再集中写入硬盘,减少了磁盘碎片和硬盘的反复寻道,加速了数据的写入过程。

Linux的SWAP分区空间不够用的情况下,如何添加SWAP分区

通常情况下,SWAP空间应大于或等于物理内存的大小,最小不应小于64M,通常应是物理内存的2-2.5倍。但根据不同的应用,应有不同的配置。如果是小的桌面系统,则只需要较小的SWAP空间,而大的服务器系统则视情况不同需要不同大小的SWAP空间。特别是数据库服务器和Web服务器,随着访问量的增加,对SWAP空间的要求也会增加。

方式一、通过新建磁盘文件的方式增加SWAP空间:

>> dd if=/dev/zero of=swapfree bs=32k count=32768      #新建一个磁盘文件(32*32768=1048576KB,亦等于1024MB)。
>> /sbin/mkswap /home/swap            #格式化成SWAP分区
>> /sbin/swapon /home/swap            #启动新的SWAP分区
>> /sbin/swapon -s                    #检查SWAP分区

现在再用free -m命令查看一下内存和swap分区大小,就发现增加了1024M的空间了。不过当计算机重启了以后,发现swap还是原来那么大,新的swap没有自动启动,还要手动启动。那我们需要修改/etc/fstab文件,增加如下一行

/home/swap swap swap defaults 0 0

方式二、通过磁盘分区增加SWAP空间:

> /sbin/mkswap /dev/sdb1   #格式化成SWAP分区
> /sbin/swapon /dev/sdb1    #启动新的SWAP分区
> /sbin/swapon -s               #检查SWAP分区

修改/etc/fstab文件,让其永久生效:

/dev/sdb1 swap swap defaults 0 0

参考文档: 

更多linux相关命令请点击这个链接

http://c.biancheng.net/view/907.html

原文地址:https://www.cnblogs.com/yfb918/p/10572587.html