Linux

添加虛擬磁碟空間後增加 LVM 的大小

  • December 25, 2019

我已要求為執行 centos 6.5 的虛擬伺服器升級硬碟

我可以看到空間已經增加,因為 /dev/sdb 現在是 214.7GB,以前是 150.3GB

root@webhost [/sys/class/block/sdb/device]# fdisk -l

Disk /dev/sda: 85.9 GB, 85899345920 bytes
64 heads, 32 sectors/track, 81920 cylinders
Units = cylinders of 2048 * 512 = 1048576 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x000390ad

  Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           2         501      512000   83  Linux
Partition 1 does not end on cylinder boundary.
/dev/sda2             502        3573     3145728   82  Linux swap / Solaris
Partition 2 does not end on cylinder boundary.
/dev/sda3            3574       81920    80227328   83  Linux

Disk /dev/sdb: 214.7 GB, 214748364800 bytes
64 heads, 32 sectors/track, 204800 cylinders
Units = cylinders of 2048 * 512 = 1048576 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x796ffff3

  Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1      143360   146800624   83  Linux

Disk /dev/mapper/backup-lv0: 150.3 GB, 150319661056 bytes
255 heads, 63 sectors/track, 18275 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: 0x00000000

root@webhost [/sys/class/block/sdb/device]#

如您所見,目前 lvm 大小為 140GB

 --- Volume group ---
 VG Name               backup
 System ID             
 Format                lvm2
 Metadata Areas        1
 Metadata Sequence No  15
 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               140.00 GiB
 PE Size               4.00 MiB
 Total PE              35839
 Alloc PE / Size       35839 / 140.00 GiB
 Free  PE / Size       0 / 0   
 VG UUID               9WAEQb-oEXG-QdJ0-MIK9-ZEu1-x176-U76PzS

root@webhost [/sys/class/block/sdb/device]# 

如何調整 lvm 分區的大小以匹配驅動器的大小?

您需要擴展sdb1以覆蓋所有可用的磁碟空間。然後,您可以pvresize /dev/sdb1lvextend -l +100%FREE <your_volume_name>

背景資訊:在 RHEL6 和之前的版本中,RedHat 建議創建一個“保護 MBR”以防止舊作業系統修改 LVM 元數據。這意味著 LVM 物理卷基於分區,而不是基於磁碟(如您的情況)。所以,要擴展物理卷,首先需要擴展分區。

但是,fdiskRHEL6 附帶的版本不支持簡單的分區大小調整。您需要刪除並重新創建sdb1分區,該分區必須與您現在擁有的完全相同(當然,長度/大小除外)。我強烈建議您使用fdisk -u,它將為您提供扇區號而不是柱面的分區大小。

或者,您可以使用partedwhich should support partition resize(此功能取決於版本,我不記得 RHEL6 附帶的是否支持它)。

**注意:錯誤地重新創建的分區會導致數據失去。**我建議您在生產之前先在測試虛擬機上進行練習。

您需要執行 pvresize 以允許 LVM 辨識附加磁碟。它就像 pvrsize /path/to/blockdevice 一樣簡單

引用自:https://serverfault.com/questions/996659