CentOS6.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パーティションのサイズを変更するにはどうすればよいですか?
@shodanshok私を正しい方向に向けてくれてありがとう
残念ながら、私のlvmボリュームはパーティションベースであり、サイズを変更するために現在のパーティションを削除したくなかったため(すべてのデータを失った後)、別のパーティションを作成し、それを使用してlvmを拡張しました。だから私がしたことは:1)で新しいパーティションを作成しました
fdisk /dev/sdb
2)lvm管理用の物理ボリュームを次のように初期化しました:
pvcreate /dev/sdb2
3)新しい物理ボリュームをlvmグループに追加しました:
lvextend /dev/backup/lv0 /dev/sdb2
4)最後に、ファイルシステムのサイズを次のように変更しました。
resize2fs /dev/backup/lv0
使用可能なすべてのディスク領域をカバーするには、sdb1
を展開する必要があります。次に、pvresize /dev/sdb1
およびlvextend -l +100%FREE <your_volume_name>
を実行できます。
背景情報:RHEL6以前では、RedHatは、古いOSがLVMメタデータを変更するのを防ぐために「保護MBR」を作成することを提案しました。これは、LVM物理ボリュームがディスクベースではなくパーティションベースであることを意味します(あなたの場合のように)。したがって、物理ボリュームを拡張するには、最初にパーティションを拡張する必要があります。
ただし、RHEL6に付属のfdisk
バージョンは、単純なパーティションのサイズ変更をサポートしていません。 sdb1
パーティションを削除して再作成する必要があります。これは、現在のパーティションと完全に同一である必要があります(もちろん、長さ/サイズを除く)。 Istronglyは、fdisk -u
を使用することをお勧めします。これにより、シリンダーではなくセクター番号でパーティションサイズが得られます。
または、parted
を使用することもできます。これはshouldパーティションのサイズ変更をサポートします(この機能はバージョンに依存し、出荷されたかどうかは覚えていませんRHEL6でそれをサポートします)。
注意:誤って再作成されたパーティションはデータ損失を意味します。本番環境で実行する前に、テスト仮想マシンで練習することをお勧めします。
LVMが追加のディスクを認識できるようにするには、pvresizeを実行する必要があります。 pvrsize/path/to/blockdeviceと同じくらい簡単です