建立swap分区并挂载

什么是swap分区:

Swap分区在系统的物理内存不够用的时候,把硬盘空间中的一部分空间释放出来,以供当前运行的程序使用。那些被释放的空间可能来自一些很长时间没有什么操作的程序,这些被释放的空间被临时保存到Swap分区中,等到那些程序要运行时,再从Swap分区中恢复保存的数据到内存中。在特殊情况下连swap 分区不够用时我们则需要建立更大的swap分区来供系统使用。
一般来说建立swap有三种方法:
1.删掉原来的swap分区重新建立一个更大的swap分区,但在实际情况中不推荐使用这种方式,如果系统正在使用swap分区而删掉则可能带来数据的丢失!
2.新建磁盘做swap,供系统使用;
3.用文件做swap分区使用。

一.新建磁盘做swap分区:

这里以虚拟机为例

1.在虚拟机中添加一块硬盘以供做swap使用,这里添加一块10G供练习使用。

2.让系统识别新增加的磁盘(有两种方法)
1.重启虚拟机
2.使用命令
[root@centos7 ~]#echo '- - -' >/sys/class/scsi_host/host2/scan
[root@centos7 ~]#lsblk
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda      8:0    0  200G  0 disk 
├─sda1   8:1    0    1G  0 part /boot
├─sda2   8:2    0  100G  0 part /
├─sda3   8:3    0   50G  0 part /app
├─sda4   8:4    0    1K  0 part 
└─sda5   8:5    0    2G  0 part [SWAP]
sdb      8:16   0   10G  0 disk 注:这里就识别到了刚创建的10G硬盘
sr0     11:0    1  7.7G  0 rom  /run/media/root/CentOS 7 x86_64

3.创建一个2G大小的swap分区:

[root@centos7 ~]#fdisk /dev/sdb     注:用fdisk对/dev/sdb创建分区
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.

Device does not contain a recognized partition table
Building a new DOS disklabel with disk identifier 0xa83f56d3.

Command (m for help): n    注:n为增加一个分区
Partition type:
   p   primary (0 primary, 0 extended, 4 free)
   e   extended
Select (default p): p   注:这里选择主分区
Partition number (1-4, default 1): 1  注:分区编号默认就1
First sector (2048-20971519, default 2048):  注:选择默认
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-20971519, default 20971519): +2G     注:增加一个2G的分区
Partition 1 of type Linux and of size 2 GiB is set

Command (m for help): p  注:打印分区表
Disk /dev/sdb: 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: 0xa83f56d3

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1            2048     4196351     2097152   83  Linux

Command (m for help): t    注:默认的ID是82是Linux分区我们要更改为82 专门用于swap的
Selected partition 1
Hex code (type L to list all codes): l

 0  Empty           24  NEC DOS         81  Minix / old Lin bf  Solaris        
 1  FAT12           27  Hidden NTFS Win 82  Linux swap / So c1 DRDOS/sec (FAT-
 2  XENIX root      39  Plan 9          83  Linux           c4  DRDOS/sec (FAT-
 3  XENIX usr       3c  PartitionMagic  84  OS/2 hidden C:  c6  DRDOS/sec (FAT-
 4  FAT16 <32M      40  Venix 80286     85  Linux extended  c7  Syrinx         
 5  Extended        41  PPC PReP Boot   86  NTFS volume set da  Non-FS data    
 6  FAT16           42  SFS             87  NTFS volume set db  CP/M / CTOS / .
 7  HPFS/NTFS/exFAT 4d  QNX4.x          88  Linux plaintext de  Dell Utility   
 8  AIX             4e  QNX4.x 2nd part 8e  Linux LVM       df  BootIt         
 9  AIX bootable    4f  QNX4.x 3rd part 93  Amoeba          e1  DOS access     
 a  OS/2 Boot Manag 50  OnTrack DM      94  Amoeba BBT      e3  DOS R/O        
 b  W95 FAT32       51  OnTrack DM6 Aux 9f  BSD/OS          e4  SpeedStor      
 c  W95 FAT32 (LBA) 52  CP/M            a0  IBM Thinkpad hi eb  BeOS fs        
 e  W95 FAT16 (LBA) 53  OnTrack DM6 Aux a5  FreeBSD         ee  GPT            
 f  W95 Ext'd (LBA) 54  OnTrackDM6      a6  OpenBSD         ef  EFI (FAT-12/16/
10  OPUS            55  EZ-Drive        a7  NeXTSTEP        f0  Linux/PA-RISC b
11  Hidden FAT12    56  Golden Bow      a8  Darwin UFS      f1  SpeedStor      
12  Compaq diagnost 5c  Priam Edisk     a9  NetBSD          f4  SpeedStor      
14  Hidden FAT16 <3 61  SpeedStor       ab  Darwin boot     f2  DOS secondary  
16  Hidden FAT16    63  GNU HURD or Sys af  HFS / HFS+      fb  VMware VMFS    
17  Hidden HPFS/NTF 64  Novell Netware  b7  BSDI fs         fc  VMware VMKCORE 
18  AST SmartSleep  65  Novell Netware  b8  BSDI swap       fd  Linux raid auto
1b  Hidden W95 FAT3 70  DiskSecure Mult bb  Boot Wizard hid fe  LANstep        
1c  Hidden W95 FAT3 75  PC/IX           be  Solaris boot    ff  BBT            
1e  Hidden W95 FAT1 80  Old Minix      
Hex code (type L to list all codes): 82    注:选择82
Changed type of partition 'Linux' to 'Linux swap / Solaris'

Command (m for help): p

Disk /dev/sdb: 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: 0xa83f56d3      注:这里ID就变更为82

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1            2048     4196351     2097152   82  Linux swap / Solaris

Command (m for help): w   注:写入保存
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.
[root@centos7 ~]#mkswap /dev/sdb1 -L swap2  使用mkswap写入特殊签名,卷标设置为swap2
Setting up swapspace version 1, size = 2097148 KiB
LABEL=swap2, UUID=1f0e66b2-6423-4115-a20d-c0d4957586ff
[root@centos7 ~]#blkid  注:查看是否创建成功
/dev/sda2: UUID="e8d7cbe2-0fd0-4355-b535-a7b54c3febd9" TYPE="xfs" 
/dev/sda1: UUID="637077c6-3003-40e0-8689-1556bb4fa00e" TYPE="xfs" 
/dev/sda5: UUID="52ceaf06-70a8-4ce2-9bea-e4be30b6af18" TYPE="swap" 
/dev/sr0: UUID="2016-12-05-13-52-39-00" LABEL="CentOS 7 x86_64" TYPE="iso9660" PTTYPE="dos" 
/dev/sda3: UUID="4ca027ad-66c8-4132-809f-9ef47aa068b8" TYPE="xfs" 
/dev/sdb1: LABEL="swap2" UUID="1f0e66b2-6423-4115-a20d-c0d4957586ff" TYPE="swap" 

4.对/etc/fatab进行增加写入,让系统开机进行识别挂载。


对应相应的格式写入
5.查看swap的分区挂载。

[root@centos7 ~]#swapon -s  注:默认修改fstab没有生效
Filename                Type        Size    Used    Priority
/dev/sda5              partition    2097148 4   -1

6.使用swapon -a 激活交换空间

[root@centos7 ~]#swapon -a
[root@centos7 ~]#swapon -s  注:成功激活swap
Filename                Type         Size    Used Priority
/dev/sda5               partition   2097148 4   -1
/dev/sdb1               partition   2097148 0   -2

到这里基本完成,如需更改优先级
则可在fstab里更改
如:



这里的数字越大表示优先级越高,设置完后使之生效,这里先禁用swap分区

[root@centos7 ~]#swapoff /dev/sdb1
[root@centos7 ~]#swapon -s
Filename                Type        Size    Used    Priority
/dev/sda5               partition   2097148 4   -1
[root@centos7 ~]#swapon -a    注:重新激活swap,优先级更改
[root@centos7 ~]#swapon -s
Filename                Type        Size    Used    Priority
/dev/sda5              partition    2097148 4   -1
/dev/sdb1              partition    2097148 0   1

到这里就设置完毕了。

二,用文件做swap分区使用

1,先创建一个大文件我们可以用dd这条命令来实现

[root@centos7 ~]#dd if=/dev/zero  of=swapfile bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 5.59941 s, 192 MB/s
[root@centos7 ~]#ll -h swapfile 
-rw-r--r--. 1 root root 1.0G Jun 27 13:36 swapfile
注:
if=/dev/zero : /dev/zero文件代表一个永远输出 0的设备文件
of=swapfile :写入到以swapfile命名的文件中

2.使用mkswap写入特殊签名

[root@centos7 ~]#mkswap swapfile
Setting up swapspace version 1, size = 1048572 KiB
no label, UUID=d07f3864-5bd1-4a08-b456-bd29506f0684
[root@centos7 ~]#vim /etc/fstab 注:添加到fstab中
UUID=e8d7cbe2-0fd0-4355-b535-a7b54c3febd9 /                       xfs     defaults        0 0
UUID=4ca027ad-66c8-4132-809f-9ef47aa068b8 /app                    xfs     defaults        0 0
UUID=637077c6-3003-40e0-8689-1556bb4fa00e /boot                   xfs     defaults        0 0
UUID=52ceaf06-70a8-4ce2-9bea-e4be30b6af18 swap                    swap    defaults        0 0
UUID=1f0e66b2-6423-4115-a20d-c0d4957586ff swap                    swap    defaults,pri=1       0 0
UUID=d07f3864-5bd1-4a08-b456-bd29506f0684 swap                    swap    defaults        0 0

[root@centos7 ~]#swapon -a   注:激活swapfile分区
swapon: /root/swapfile: insecure permissions 0644, 0600 suggested.
[root@centos7 ~]#swapon -s  注:查看是否激活成功
Filename                Type          Size   Used    Priority
/dev/sda5               partition   2097148 4      -1
/dev/sdb1               partition   2097148 0      1
/root/swapfile           file       1048572 0      -2

到了这里两种方法就设置完毕了......

如有不足请多多指教!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,402评论 6 499
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,377评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 162,483评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,165评论 1 292
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,176评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,146评论 1 297
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,032评论 3 417
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,896评论 0 274
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,311评论 1 310
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,536评论 2 332
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,696评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,413评论 5 343
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,008评论 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,659评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,815评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,698评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,592评论 2 353

推荐阅读更多精彩内容