欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

linux 交换分区swap

程序员文章站 2024-01-20 16:30:46
...

      在linux中有一个特殊的分区swap,在安装操作系统是手动分区就可以看到它的特殊,只有它前边没有"/",swap分区的作用就是扩展内存,swap本身是硬盘上的空间,在内存不足时可以让这块空间模拟内存,来达到增加内存的目的。

swap分区的比例并不一定是1:2,当内存足够时更加不需要了,32G内存一下时可以内存:swap=1:2 。但是内存达到64G,128G,甚至几百G,1TB , 就没必要设为1:2 了。

swap的扩容和建立:
有2种方法,但是都很类似,步骤如下:
1、准备分区或文件。
2、格式化为swap。
3、**这个空间

方法1(分区):

首先可以先查询下swap的情况。
swapon -s

[[email protected] ~]# swapon -s 
Filename				Type		Size	Used	Priority
/dev/dm-1                              	partition	4194300	0	-1

我安装操作系统是就已经进行硬盘的分区 了,分配了4Gswap。

再给swap加点吧。
首先要分区拿出一个分区

[[email protected] ~]# fdisk /dev/sdd
Welcome to fdisk (util-linux 2.23.2).

Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.

Command (m for help): n
Partition type:
   p   primary (2 primary, 1 extended, 1 free)
   l   logical (numbered from 5)
Select (default p): l
Adding logical partition 7
First sector (16785408-20971519, default 16785408): 
Using default value 16785408
Last sector, +sectors or +size{K,M,G} (16785408-20971519, default 20971519): +1G
Partition 7 of type Linux and of size 1 GiB is set

Command (m for help): p

Disk /dev/sdd: 10.7 GB, 10737418240 bytes, 20971520 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x69e33cfe

   Device Boot      Start         End      Blocks   Id  System
/dev/sdd1            2048     4196351     2097152   83  Linux
/dev/sdd2         4196352     8390655     2097152   83  Linux
/dev/sdd3         8390656    20971519     6290432    5  Extended
/dev/sdd5         8392704    12587007     2097152   83  Linux
/dev/sdd6        12589056    16783359     2097152   83  Linux
/dev/sdd7        16785408    18882559     1048576   83  Linux

我用的是逻辑分区 l 加了sdd7分区。

然后通告内核,进行格式化。

[[email protected] ~]# partprobe /dev/sdd
[[email protected] ~]# ls /dev/sdd*
/dev/sdd  /dev/sdd1  /dev/sdd2  /dev/sdd3  /dev/sdd5  /dev/sdd6  /dev/sdd7
[[email protected] ~]# mkswap /dev/sdd7
Setting up swapspace version 1, size = 1048572 KiB
no label, UUID=ba860321-72c2-49ff-8ebf-4bd1218c7f4d

格式化成swap的形式。
**空间并查看。

[[email protected] ~]# swapon /dev/sdd7
[[email protected] ~]# swapon -s
Filename				Type		Size	Used	Priority
/dev/dm-1                              	partition	4194300	0	-1
/tmp/test-gsc/swap-test/swap.txt       	file	1048572	0	-2
/dev/sdd5                              	partition	2097148	0	-3
/dev/sdd7                              	partition	1048572	0	-4

我加了很多个…
想要删除的话用swapoff进行取消。

[[email protected] ~]# swapoff /dev/sdd7
[[email protected] ~]# swapon -s
Filename				Type		Size	Used	Priority
/dev/dm-1                              	partition	4194300	0	-1
/tmp/test-gsc/swap-test/swap.txt       	file	1048572	0	-2
/dev/sdd5                              	partition	2097148	0	-3
[[email protected] ~]# 

方法二(文件的形式):

创建一个文件。大小就是你想要扩容swap的大小。我用的是1G的

[[email protected] ~]# mkdir /tmp/test-gsc/swap-test/
[[email protected] ~]#dd if=/dev/zero of=/tmp/test-gsc/swap-test/swap.txt bs=2M count=512

依旧是格式化和**。

[[email protected] ~]# mkswap /tmp/test-gsc/swap-test/swap.txt
[[email protected] ~]# swapon /tmp/test-gsc/swap-test/swap.txt

当然这些都是临时生效的如果想要永久生效还是要填写/etc/fstab配置文件。对没错,就是挂载用的那个配置文件。

相关标签: swap