美文网首页Linux与后台开发归档
swap分区的创建及启动关闭

swap分区的创建及启动关闭

作者: 小尛酒窝 | 来源:发表于2018-02-27 16:55 被阅读161次

Swap分区又称为交换分区,通常是在硬盘中预留一块分区作为swap交换分区,当系统内存出现不足时,系统会将空闲内存的数据复制到swap分区,以释放被这些空闲内存所占用的物理内存;当系统需要用到之前复制到swap分区的空闲内存数据的时候,可以再次从swap分区读取到内存中,以此缓解由于系统内存空间不足,而导致的问题。

查看swap分区的使用情况

在linux系统中,通常使用free -m来查看内存和swap分区的使用情况。

[root@localhost ~]# free -m
              total        used        free      shared  buff/cache   available
Mem:            985         318         269           7         397         491
Swap:          2047           0        2047

其中上述各字段的意义如下:

  • total:表示内存总的大小;
  • used:表已经使用的内存的大小,大小等于total-free-buffers-cache;
  • free:表示空闲内存的大小;
  • shared:表示共享内存的大小
  • buff/cache:表示buff和cache一共占用的内存大小;
  • available:系统预计还能腾出给新的应用使用的内存大小;
  • Mem:物理内存;
  • Swap:交换分区;

创建swap分区

swap分区的创建与其他文件系统不一样,其使用单独的创建命令mkswap [options] [device]
在使用fdisk -l划分了swap分区(类别为82)后,需要使用mkswap命令对该分区进行格式化创建,否则该分区依旧是无法启动为swap。

[root@localhost ~]# fdisk -l /dev/sdb
磁盘 /dev/sdb:21.5 GB, 21474836480 字节,41943040 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x0155e28d

   设备 Boot      Start         End      Blocks   Id  System
/dev/sdb1            2048    10487807     5242880   83  Linux
/dev/sdb2        10487808    12584959     1048576   82  Linux swap / Solaris

[root@localhost ~]# mkswap /dev/sdb2
正在设置交换空间版本 1,大小 = 1048572 KiB
无标签,UUID=2e793994-0d48-4365-ab5f-af94a97cc33b

mkswap使用-L选项可以在格式化swap分区时指定分区磁盘文件的卷标。

[root@localhost ~]# mkswap -L swap /dev/sdb2
mkswap: /dev/sdb2: warning: wiping old swap signature.
正在设置交换空间版本 1,大小 = 1048572 KiB
LABEL=swap, UUID=fdb0186c-bcf1-4058-9b94-b58379b17616

同理-U选项可以指定对应分区磁盘文件的UUID。

swap分区的启动与关闭

swaponswapoff分别用于swap分区的启动与关闭,其二者的用法类似。
在启动swap分区后,使用free -m可以查看swap分区的使用情况,下面演示启动一个大小为1G的swap分区:

[root@localhost ~]# swapon /dev/sdb2
[root@localhost ~]# free -m
              total        used        free      shared  buff/cache   available
Mem:            985         320         265           7         398         489
Swap:          3071           0        3071

可以看到swap分区total增加了约1G,说明分区已正常启动。
此外,还可以利用分区的卷标来识别启动对应的swap分区,如:

[root@localhost ~]# blkid /dev/sdb2
/dev/sdb2: LABEL="swap" UUID="03557b77-7857-4236-9a77-388619359ba2" TYPE="swap" 
[root@localhost ~]# blkid /dev/sdb2
/dev/sdb2: LABEL="swap" UUID="03557b77-7857-4236-9a77-388619359ba2" TYPE="swap" 
[root@localhost ~]# swapon -L swap
[root@localhost ~]# free -m
              total        used        free      shared  buff/cache   available
Mem:            985         308         421           7         254         503
Swap:          3071           0        3071

类似地,swapoff也可以使用卷标关闭对应的分区:

root@localhost ~]# swapoff -L swap
[root@localhost ~]# free -m
              total        used        free      shared  buff/cache   available
Mem:            985         309         421           7         254         503
Swap:          2047           0        2047

相关文章

网友评论

    本文标题:swap分区的创建及启动关闭

    本文链接:https://www.haomeiwen.com/subject/wohmxftx.html