Linux6、7增加swap分区

一、新建磁盘分区作为Swap分区

大体流程如下:

1、停止所有的swap分区:

# swapoff -a 

2、新建分区并修改分区类型:

(1).用fdisk命令(例:# fdisk /dev/sdb)对磁盘进行分区;
(2).添加swap分区,n新建分区,在fdisk中用“t”命令将新添的分区id改为82(Linux swap类型);
(3).最后用w将操作实际写入硬盘(没用w之前的操作是无效的)

3、格式化swap分区,这里的sdb2要看您加完后p命令显示的实际分区设备名

# mkswap /dev/sdb2

4、激活新的swap分区:

# swapon /dev/sdb2 

5、开机自动启动:

# vi /etc/fstab,加入下面一行:

/dev/sdb2 swap swap defaults 0 0

其中1表示需要dump(转储),要是0的话则该文件系统不需要转储;
其中2表示第二个检查,如果是1则是第一个检查,3的话就是第三个检查,依次类推最大为9,如果检查顺序相同,则是由上到下依序检查。

分区示例:

[root@heiha ~]# fdisk /dev/sdb						#fdisk对磁盘进行分区并修改分区类型
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel with disk identifier 0x65d4edbc.
Changes will remain in memory only, until you decide to write them.
After that, of course, the previous content won't be recoverable.

Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)

WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
         switch off the mode (command 'c') and change display units to
         sectors (command 'u').

Command (m for help): m								#m显示参数作用
Command action
   a   toggle a bootable flag
   b   edit bsd disklabel
   c   toggle the dos compatibility flag
   d   delete a partition
   l   list known partition types
   m   print this menu
   n   add a new partition
   o   create a new empty DOS partition table
   p   print the partition table
   q   quit without saving changes
   s   create a new empty Sun disklabel
   t   change a partition's system id
   u   change display/entry units
   v   verify the partition table
   w   write table to disk and exit
   x   extra functionality (experts only)

Command (m for help): n       						#n新建分区
Command action
   e   extended
   p   primary partition (1-4)
p
Partition number (1-4): 1							#新建第一个分区
First cylinder (1-261, default 1):    
Using default value 1								#默认从1开始
Last cylinder, +cylinders or +size{K,M,G} (1-261, default 261): 
Using default value 261								#默认最大261

Command (m for help): l								#l查看分区类型(82 Linux swap)

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

Command (m for help): t								#更改系统分区id
Selected partition 1
Hex code (type L to list codes): 82
Changed system type of partition 1 to 82 (Linux swap / Solaris)

Command (m for help): p								#打印分区表(查看磁盘分区)

Disk /dev/sdb: 2147 MB, 2147483648 bytes
255 heads, 63 sectors/track, 261 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x65d4edbc

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1         261     2096451   82  Linux swap / Solaris

Command (m for help): w								#保存修改并退出
二、用文件作为Swap分区

如果已有硬盘空间已经没有空间划分新的分区,也不打算继续挂载磁盘,那么可以利用swap文件的方式增加虚拟的swap空间,但是实际性能与swap分区相比较差。

1、创建要作为swap分区的文件,则命令写法如下:
例如:增加1GB大小的交换分区(原来的swap分区不变),文件位置在/root/swapfile
其中的count等于想要的块的数量((bs=1M指定每个扇区占用1024kb(也可用512k),bs*count=文件大小)
# dd if=/dev/zero of=/root/swapfile bs=1M count=1024

2、格式化为交换分区文件:
# mkswap /root/swapfile

3、启用交换分区文件:
# swapon /root/swapfile

4、关闭交换分区文件:
# swapoff /root/swapfile

4、使系统开机时自启用:
# vi /etc/fstab	添加以下内容:
/root/swapfile swap swap defaults 0 0

其中1表示需要dump(转储),要是0的话则该文件系统不需要转储;
其中2表示第二个检查,如果是1则是第一个检查,3的话就是第三个检查,依次类推最大为9,如果检查顺序相同,则是由上到下依序检查。

三、使用 “lvextend” 扩展Swap分区

注意:使用lvextend扩展swap空间,前提是swap所在的vg组中有足够的空间

查看vg空间大小

# vgdisplay# vgs
1、停止所有的swap分区:
# swapoff -a 

2、扩展swap分区
# lvextend -l 2048 /dev/mapper/vg_name-swap_name
# lvextend -L +8G /dev/mapper/vg_name-swap_name

#(2048为vgdisplay中vg_name的pe值,pesize为4mb,2048就是8G)
3、刷新swap分区大小
(1)格式化swap分区
# mkswap /dev/mapper/vg_name-swap_name

(2)停启swap分区
# swapoff

# swapon

4、查看swap使用情况
# swapon -s
Swap空间的已用和未用资源的大小

5、启用所有的swap分区:
# swapon -a

5、使用以下命令验证更改
# cat /proc/swaps
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值