VMWareにマウントしたHDDの容量を増やす

# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/VolGroup00-LogVol00
                      7.2G  3.6G  3.3G  52% /
/dev/sda1              99M   19M   76M  20% /boot
tmpfs                 506M     0  506M   0% /dev/shm
.host:/               112G   90G   22G  81% /mnt/hgfs
/dev/mapper/VolGroup00-LogVol02
                      9.8G  9.3G     0 100% /data

以前10GBをマウントしていた領域

/dev/mapper/VolGroup00-LogVol02 の容量がいっぱいのため、ディスク容量を追加します。

予め

shutdown

でゲストOSを停止した上でVMWare。Playerで以下の手順でディスク容量を増やします。

  1. 仮想マシンの編集
  2. ハードディスクをクリック
  3. ユーティリティーの「拡張」をクリック
  4. 拡張したいデイスクサイズを入力して、「拡張」ボタンをクリック

今回は10GBから30GBに拡張します。

これでサクッと増やせればいいのですが、CentOS側で認識をさせる手順が必要です。

まずは状態の確認

# vgdisplay
  --- Volume group ---
  VG Name               VGroupFS01
  System ID
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  1
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                0
  Open LV               0
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               100.00 MB
  PE Size               4.00 MB
  Total PE              25
  Alloc PE / Size       0 / 0
  Free  PE / Size       25 / 100.00 MB
  VG UUID               hOBjKu-6TiH-oFW1-fLnu-QeEz-3Lvu-YC7a5u

  --- Volume group ---
  VG Name               VolGroup00
  System ID
  Format                lvm2
  Metadata Areas        2
  Metadata Sequence No  5
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                3
  Open LV               3
  Max PV                0
  Cur PV                2
  Act PV                2
  VG Size               17.75 GB
  PE Size               32.00 MB
  Total PE              568
  Alloc PE / Size       568 / 17.75 GB
  Free  PE / Size       0 / 0
  VG UUID               2Ff9i9-TbFk-dve3-itVc-Ewi5-zPPQ-gtG6MV

VolGroup00のFreeのサイズがないのでまずはここを増やします。

# fdisk /dev/sdb

The number of cylinders for this disk is set to 3916.
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/sdb: 32.2 GB, 32212254720 bytes
255 heads, 63 sectors/track, 3916 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1   *           1          13      104391   83  Linux
/dev/sdb2              14        1305    10377990   8e  Linux LVM

32.2 GBになっているので増やせそうな予感がします。

パーティションを新規に作成します。

Command (m for help): n
Command action
   e   extended
   p   primary partition (1-4)
p
Partition number (1-4): 3 #3番めが空いてそうなので・・・
First cylinder (1306-3916, default 1306):
Using default value 1306
Last cylinder or +size or +sizeM or +sizeK (1306-3916, default 3916):
Using default value 3916

Command (m for help): t
Partition number (1-4): 3 #3番めをゴニョゴニョします。
Hex code (type L to list codes): 8e
Changed system type of partition 3 to 8e (Linux LVM)

Command (m for help): p

Disk /dev/sdb: 32.2 GB, 32212254720 bytes
255 heads, 63 sectors/track, 3916 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1   *           1          13      104391   83  Linux
/dev/sdb2              14        1305    10377990   8e  Linux LVM
/dev/sdb3            1306        3916    20972857+  8e  Linux LVM

/dev/sdb3が追加されました!

適用的なことをします。

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.
Syncing disks.

認識させるためリブートします。

reboot

状況を確認します。

# pvscan
  PV /dev/sdb1   VG VGroupFS01   lvm2 [100.00 MB / 100.00 MB free]
  PV /dev/sda2   VG VolGroup00   lvm2 [7.88 GB / 0    free]
  PV /dev/sdb2   VG VolGroup00   lvm2 [9.88 GB / 0    free]
  Total: 3 [17.85 GB] / in use: 3 [17.85 GB] / in no VG: 0 [0   ]

パーティションを作ります。

# pvcreate /dev/sdb3
  Physical volume "/dev/sdb3" successfully created

確認します。

# pvscan
  PV /dev/sdb1   VG VGroupFS01      lvm2 [100.00 MB / 100.00 MB free]
  PV /dev/sda2   VG VolGroup00      lvm2 [7.88 GB / 0    free]
  PV /dev/sdb2   VG VolGroup00      lvm2 [9.88 GB / 0    free]
  PV /dev/sdb3                      lvm2 [20.00 GB]
  Total: 4 [37.85 GB] / in use: 3 [17.85 GB] / in no VG: 1 [20.00 GB]

VolGroup00に追加します。

# vgextend VolGroup00 /dev/sdb3
  Volume group "VolGroup00" successfully extended

確認します。

# vgdisplay
  --- Volume group ---
  VG Name               VGroupFS01
  System ID
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  1
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                0
  Open LV               0
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               100.00 MB
  PE Size               4.00 MB
  Total PE              25
  Alloc PE / Size       0 / 0
  Free  PE / Size       25 / 100.00 MB
  VG UUID               hOBjKu-6TiH-oFW1-fLnu-QeEz-3Lvu-YC7a5u

  --- Volume group ---
  VG Name               VolGroup00
  System ID
  Format                lvm2
  Metadata Areas        3
  Metadata Sequence No  6
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                3
  Open LV               3
  Max PV                0
  Cur PV                3
  Act PV                3
  VG Size               37.75 GB
  PE Size               32.00 MB
  Total PE              1208
  Alloc PE / Size       568 / 17.75 GB
  Free  PE / Size       640 / 20.00 GB
  VG UUID               2Ff9i9-TbFk-dve3-itVc-Ewi5-zPPQ-gtG6MV

Free Sizeが増えました。 後はこれを/dataに増築します。

# lvextend -L +19g /dev/VolGroup00/LogVol02
  Extending logical volume LogVol02 to 28.88 GB
  Logical volume LogVol02 successfully resized

# resize2fs /dev/VolGroup00/LogVol02
resize2fs 1.39 (29-May-2006)
Filesystem at /dev/VolGroup00/LogVol02 is mounted on /data; on-line resizing required
Performing an on-line resize of /dev/VolGroup00/LogVol02 to 7569408 (4k) blocks.
The filesystem on /dev/VolGroup00/LogVol02 is now 7569408 blocks long.

反映を確認します。

# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/VolGroup00-LogVol00
                      7.2G  3.6G  3.3G  52% /
/dev/sda1              99M   19M   76M  20% /boot
tmpfs                 506M     0  506M   0% /dev/shm
.host:/               112G   91G   22G  81% /mnt/hgfs
/dev/mapper/VolGroup00-LogVol02
                       29G  9.0G   19G  34% /data

/dev/mapper/VolGroup00-LogVol02が29GBになっています!

参考にしたページ

http://ossfan.net/setup/lvm-03.html