Linux LVM学习总结——扩展卷组VG,lvmvg


Linux服务器由于应用变更或需求的缘故,有可能出现分区空间不足的情况,此时往往需要进行扩容(要增加分区的空间),而采用LVM的好处就是可以在不需停机的情况下可以方便地调整各个分区大小。如下所示,分区/u05由于备份集保留的时间调整,RMAN备份时出现空间不足的情况,如下所示,

[root@getlnx01 ~]# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/VolGroup00-LogVol00
                       97G   37G   55G  41% /
/dev/mapper/VolGroup01-LogVol00
                       79G   33G   43G  44% /u01
/dev/mapper/VolGroup02-LogVol00
                      197G  168G   19G  90% /u02
/dev/mapper/VolGroup03-LogVol00
                      197G  127G   60G  68% /u03
/dev/mapper/VolGroup04-LogVol00
                      138G  126G  5.6G  96% /u04
/dev/mapper/VolGroup05-LogVol00
                      178G  104G   65G  62% /u05
/dev/sda1              99M   23M   71M  25% /boot
tmpfs                  12G     0   12G   0% /dev/shm
[root@getlnx01 ~]# vgscan
  Reading all physical volumes.  This may take a while...
  Found volume group "VolGroup05" using metadata type lvm2
  Found volume group "VolGroup04" using metadata type lvm2
  Found volume group "VolGroup03" using metadata type lvm2
  Found volume group "VolGroup02" using metadata type lvm2
  Found volume group "VolGroup01" using metadata type lvm2
  Found volume group "VolGroup00" using metadata type lvm2
[root@getlnx01 ~]# 

我在添加了一块虚拟磁盘后(虚拟机),此时使用fdisk -l查不到刚刚添加的新磁盘,此时需要运行命令echo "- - -" > /sys/class/scsi_host/host0/scan重新扫描该接口下的SCSI磁盘设备。

关于该命令它是通过/sys下的属性设置运行SCSI扫描。echo "- - -" > scan "- - -"代表channel,target和LUN编号。以上命令会导致hba4下所有channel,target以及可见LUN被扫描。

 
[root@getlnx01 ~]# echo "- - -" > /sys/class/scsi_host/host0/scan
[root@getlnx01 ~]# fdisk -l
 
Disk /dev/sda: 55.8 GB, 55834574848 bytes
255 heads, 63 sectors/track, 6788 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
 
   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1          13      104391   83  Linux
/dev/sda2              14        6788    54420187+  8e  Linux LVM
 
Disk /dev/sdb: 85.8 GB, 85899345920 bytes
255 heads, 63 sectors/track, 10443 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
 
   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1       10443    83883366    5  Extended
/dev/sdb5               1       10443    83883334+  83  Linux
 
Disk /dev/sdd: 214.7 GB, 214748364800 bytes
255 heads, 63 sectors/track, 26108 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
 
   Device Boot      Start         End      Blocks   Id  System
/dev/sdd1               1       26108   209712478+   5  Extended
/dev/sdd5               1       26108   209712447   83  Linux
 
Disk /dev/sdc: 214.7 GB, 214748364800 bytes
255 heads, 63 sectors/track, 26108 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
 
   Device Boot      Start         End      Blocks   Id  System
/dev/sdc1               1       26108   209712478+   5  Extended
/dev/sdc5               1       26108   209712447   83  Linux
 
Disk /dev/sdf: 64.4 GB, 64424509440 bytes
255 heads, 63 sectors/track, 7832 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
 
   Device Boot      Start         End      Blocks   Id  System
/dev/sdf1               1        7832    62910508+   5  Extended
/dev/sdf5               1        7832    62910477   83  Linux
 
Disk /dev/sde: 150.3 GB, 150323855360 bytes
255 heads, 63 sectors/track, 18275 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
 
   Device Boot      Start         End      Blocks   Id  System
/dev/sde1               1       18275   146793906    5  Extended
/dev/sde5               1       18275   146793874+  83  Linux
 
Disk /dev/sdg: 193.2 GB, 193273528320 bytes
255 heads, 63 sectors/track, 23497 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
 
   Device Boot      Start         End      Blocks   Id  System
/dev/sdg1               1       23497   188739621    5  Extended
/dev/sdg5               1       23497   188739589+  83  Linux
 
Disk /dev/dm-0: 107.2 GB, 107206410240 bytes
255 heads, 63 sectors/track, 13033 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
 
Disk /dev/dm-0 doesn't contain a valid partition table
 
Disk /dev/dm-1: 12.8 GB, 12884901888 bytes
255 heads, 63 sectors/track, 1566 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
 
Disk /dev/dm-1 doesn't contain a valid partition table
 
Disk /dev/sdh: 85.8 GB, 85899345920 bytes
255 heads, 63 sectors/track, 10443 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
 
Disk /dev/sdh doesn't contain a valid partition table

 

1:格式化分区

格式化磁盘设备/dev/sdh, 下面是采用逻辑扩展分区。关于格式分区时是否一定要修改分区类型为8e(LVM格式),我查了一些资料,这个不是必须的。鸟哥的Linux私房菜里面的原话为:“那个8e的出现会导致system变成Linux LMV! 其实没有设定为8e也没有关系,不过某些LMV的侦测指令可能会侦测不到该partition就是了”

[root@getlnx01 ~]# fdisk /dev/sdh
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel. Changes will remain in memory only,
until you decide to write them. After that, of course, the previous
content won't be recoverable.
 
 
The number of cylinders for this disk is set to 10443.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
   (e.g., DOS FDISK, OS/2 FDISK)
Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)
 
Command (m for help): n
Command action
   e   extended
   p   primary partition (1-4)
e
Partition number (1-4): 1
First cylinder (1-10443, default 1): 
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-10443, default 10443): 
Using default value 10443
 
Command (m for help): w
The partition table has been altered!
 
Calling ioctl() to re-read partition table.
Syncing disks.
[root@getlnx01 ~]# fdisk /dev/sdh
 
The number of cylinders for this disk is set to 10443.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
   (e.g., DOS FDISK, OS/2 FDISK)
 
Command (m for help): p
 
Disk /dev/sdh: 85.8 GB, 85899345920 bytes
255 heads, 63 sectors/track, 10443 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
 
   Device Boot      Start         End      Blocks   Id  System
/dev/sdh1               1       10443    83883366    5  Extended
 
Command (m for help): n
Command action
   l   logical (5 or over)
   p   primary partition (1-4)
l
First cylinder (1-10443, default 1): 
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-10443, default 10443): 
Using default value 10443
 
Command (m for help): w
The partition table has been altered!
 
Calling ioctl() to re-read partition table.
Syncing disks.
[root@getlnx01 ~]# 
 

 

2:新建物理卷(PV)

[root@getlnx01 ~]# pvcreate /dev/sdh5
  Physical volume "/dev/sdh5" successfully created
[root@getlnx01 ~]# pvdisplay /dev/sdh5
  "/dev/sdh5" is a new physical volume of "80.00 GB"
  --- NEW Physical volume ---
  PV Name               /dev/sdh5
  VG Name               
  PV Size               80.00 GB
  Allocatable           NO
  PE Size (KByte)       0
  Total PE              0
  Free PE               0
  Allocated PE          0
  PV UUID               LgKUuj-UddY-AHHO-ewqX-1iF1-6HYN-N5EITM

3:扩展卷组(VG)

首先查看VG的详细信息,然后扩展VG

[root@getlnx01 ~]# vgdisplay VolGroup05
  --- Volume group ---
  VG Name               VolGroup05
  System ID             
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  2
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                1
  Open LV               1
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               179.97 GB
  PE Size               32.00 MB
  Total PE              5759
  Alloc PE / Size       5759 / 179.97 GB
  Free  PE / Size       0 / 0   
  VG UUID               UNFxZH-lAGM-vqF3-jtNK-yuKT-enUX-WwL7FQ
   
 
   
[root@getlnx01 ~]# vgextend VolGroup05 /dev/sdh5
  Volume group "VolGroup05" successfully extended
[root@getlnx01 ~]# vgdisplay VolGroup05
  --- Volume group ---
  VG Name               VolGroup05
  System ID             
  Format                lvm2
  Metadata Areas        2
  Metadata Sequence No  3
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                1
  Open LV               1
  Max PV                0
  Cur PV                2
  Act PV                2
  VG Size               259.94 GB
  PE Size               32.00 MB
  Total PE              8318
  Alloc PE / Size       5759 / 179.97 GB
  Free  PE / Size       2559 / 79.97 GB
  VG UUID               UNFxZH-lAGM-vqF3-jtNK-yuKT-enUX-WwL7FQ
   
[root@getlnx01 ~]# 

4:处理文件系统

VG扩展后,/u05分区还不能实时增加空间,还需要使用resize2fs –p命令激活新增加的空间

 
[root@getlnx01 ~]# resize2fs -p  /dev/VolGroup05/LogVol00 
resize2fs 1.39 (29-May-2006)
Filesystem at /dev/VolGroup05/LogVol00 is mounted on /u05; on-line resizing required
Performing an on-line resize of /dev/VolGroup05/LogVol00 to 68141056 (4k) blocks.
 
The filesystem on /dev/VolGroup05/LogVol00 is now 68141056 blocks long.
 
[root@getlnx01 ~]# 
[root@getlnx01 ~]# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/VolGroup00-LogVol00
                       97G   37G   55G  41% /
/dev/mapper/VolGroup01-LogVol00
                       79G   33G   43G  44% /u01
/dev/mapper/VolGroup02-LogVol00
                      197G  168G   19G  90% /u02
/dev/mapper/VolGroup03-LogVol00
                      197G  127G   60G  68% /u03
/dev/mapper/VolGroup04-LogVol00
                      138G  126G  5.6G  96% /u04
/dev/mapper/VolGroup05-LogVol00
                      256G  104G  140G  43% /u05
/dev/sda1              99M   23M   71M  25% /boot
tmpfs                  12G     0   12G   0% /dev/shm
[root@getlnx01 ~]# 

 

Linux LVM学习总结——创建卷组VG

Linux LVM学习总结——删除卷组VG

Linux LVM学习总结——扩展卷组VG

相关内容