CentOS LVM扩容磁盘步骤

发布于 2021-07-09  1.78k 次阅读


一.使用背景

二.使用方法

1.查看卷组名称及卷组使⽤情况

[root@localhost ~]# vgdisplay
File descriptor 3 (socket:[6108435]) leaked on vgdisplay invocation. Parent PID 28026: -bash
  --- Volume group ---
  VG Name               centos
  System ID             
  Format                lvm2
  Metadata Areas        2
  Metadata Sequence No  5
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                2
  Open LV               2
  Max PV                0
  Cur PV                2
  Act PV                2
  VG Size               48.99 GiB
  PE Size               4.00 MiB
  Total PE              12542
  Alloc PE / Size       12542 / 48.99 GiB
  Free  PE / Size       0 / 0   
  VG UUID               9Ly7Rg-wz0Y-eFSh-0KIn-dX49-C1g1-Dw32rd

2 查看当前逻辑卷的空间状态

lvdisplay
[root@localhost ~]# lvdisplay
File descriptor 3 (socket:[6108435]) leaked on lvdisplay invocation. Parent PID 28026: -bash
  --- Logical volume ---
  LV Path                /dev/centos/swap
  LV Name                swap
  VG Name                centos
  LV UUID                YdCZkD-AdpY-h5vV-3cPg-6U4v-QDRY-fAIc1k
  LV Write Access        read/write
  LV Creation host, time localhost, 2020-05-19 13:58:04 +0800
  LV Status              available
  # open                 2
  LV Size                1.00 GiB
  Current LE             256
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:1
   
  --- Logical volume ---
  LV Path                /dev/centos/root
  LV Name                root
  VG Name                centos
  LV UUID                GF6WxC-kJdq-ttUH-CO0L-8pZM-j6Qs-HeeXhR
  LV Write Access        read/write
  LV Creation host, time localhost, 2020-05-19 13:58:04 +0800
  LV Status              available
  # open                 1
  LV Size                47.99 GiB
  Current LE             12286
  Segments               2
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:0

3 查看新挂载的磁盘

[root@cosmo-buckup02 ~]# fdisk -l

Disk /dev/vda: 429.5 GB, 429496729600 bytes, 838860800 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: 0x000a76b7

   Device Boot      Start         End      Blocks   Id  System
/dev/vda1   *        2048     2099199     1048576   83  Linux
/dev/vda2         2099200    20971519     9436160   8e  Linux LVM

Disk /dev/vdb: 67 MB, 67108864 bytes, 131072 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: 0x951c984e

   Device Boot      Start         End      Blocks   Id  System
/dev/vdb1            2048      131071       64512    7  HPFS/NTFS/exFAT

Disk /dev/mapper/centos-root: 8585 MB, 8585740288 bytes, 16769024 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 /dev/mapper/centos-swap: 1073 MB, 1073741824 bytes, 2097152 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

4.格式化分区

fdisk /dev/vda
[root@cosmo-buckup02 ~]# fdisk /dev/vda
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, 0 extended, 2 free)
   e   extended
Select (default p): p
Partition number (3,4, default 3): 3
First sector (20971520-838860799, default 20971520):
Using default value 20971520
Last sector, +sectors or +size{K,M,G} (20971520-838860799, default 838860799):
Using default value 838860799
Partition 3 of type Linux and of size 390 GiB is set

Command (m for help): t
Partition number (1-3, default 3):
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): 8e
Changed type of partition 'Linux' to 'Linux LVM'

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.

WARNING: Re-reading the partition table failed with error 16: Device or resource busy.
The kernel still uses the old table. The new table will be used at
the next reboot or after you run partprobe(8) or kpartx(8)
Syncing disks.

5 查看

lsblk
[root@localhost ~]# lsblk
NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sr0              11:0    1 1024M  0 rom  
vda             252:0    0   80G  0 disk 
vda1          252:1    0    1G  0 part /boot
vda2          252:2    0    9G  0 part 
  centos-root 253:0    0   48G  0 lvm  /
  centos-swap 253:1    0    1G  0 lvm  [SWAP]
vdb             252:16   0   64M  0 disk 
vdb1          252:17   0   63M  0 part 
vdc             252:32   0   40G  0 disk 
vdc1          252:33   0   40G  0 part 
  centos-root 253:0    0   48G  0 lvm  /
vdd             252:48   0   40G  0 disk 
vdd1          252:49   0   40G  0 part

6.命令是通知操作系统分区表的更改,当执行完该命令后再做创建PV卷的操作,则正常执行:

[root@localhost ~]#partprobe /dev/vda
[root@localhost ~]#

7.将新加的分区/dev/vdd1创建为物理卷

[root@localhost ~]# pvcreate /dev/vda3
File descriptor 3 (socket:[6108435]) leaked on pvcreate invocation. Parent PID 28026: -bash
  Physical volume "/dev/vda3" successfully created.

8.给卷组 centos-root 扩容,将物理卷 /dev/vdd1 扩展至 centos-root 卷组

[root@localhost ~]# vgextend centos /dev/vda3
File descriptor 3 (socket:[6226904]) leaked on vgextend invocation. Parent PID 58233: -bash
  Volume group "centos" successfully extended

9.将全部空间扩展至/dev/mapper/centos-root

[root@localhost ~]# lvextend -l +100%FREE /dev/mapper/centos-root
File descriptor 3 (socket:[6226904]) leaked on lvextend invocation. Parent PID 58233: -bash
  Size of logical volume centos/root changed from 47.99 GiB (12286 extents) to <87.99 GiB (22525 extents).
  Logical volume centos/root successfully resized.

10.写入文件系统,使扩容生效 xfs_growfs /dev/mapper/centos-root ;
如果是ext4文件系统,命令为 resize2fs /dev/mapper/centos-root
xfs_growfs /dev/mapper/centos-root 
resize2fs /dev/mapper/centos-root 

[root@localhost ~]# xfs_growfs /dev/mapper/centos-root
meta-data=/dev/mapper/centos-root isize=512    agcount=25, agsize=524032 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0 spinodes=0
data     =                       bsize=4096   blocks=12580864, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal               bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
data blocks changed from 12580864 to 23065600

11 查看结果

df -h 
lsblk