Hyper-V上のLinuxのHDD容量拡張


Hyper-VでVineLinuxを動かしているのだが、ここんとこ容量不足に度々なりサービス停止したりしていたので、思い切って拡張してみた。
VineLinux上では64Gまでなのだが、Hyper-Vでは最大120Gまで割り当ててある。

/dev/sda1 /boot
/dev/sda2 /

今回はsda2を拡張する。
LVMはこんな感じ

/dev/VolGroup00/LogVol00
/dev/VolGroup00/LogVol01

基本的にやりかたは、ここを参考にした。
http://blog.livedoor.jp/stock_value/archives/51513774.html

途中、fdiskでパーティション削除、再作成を行うので、ビビるが問題はない。

1,fdiskで/dev/sda2を削除、再作成

# fdisk
d → [Partition number] 2
n → [Command action] p → [Partition number] 2
t → [Partition number] 2 → [Hex code] 8e

2,再起動
再起動直後のpvscanが↓のようだったので、焦ったが、

# pvscan
  PV /dev/sda2   VG VolGroup00   lvm2 [63.88 GiB / 32.00 MiB free]
  Total: 1 [63.88 GiB] / in use: 1 [63.88 GiB] / in no VG: 0 [0   ]

数分後に再度pvscanすると思った通りになった。56Gの空きができた。

# pvscan
  PV /dev/sda2   VG VolGroup00   lvm2 [119.88 GiB / 56.03 GiB free]
  Total: 1 [119.88 GiB] / in use: 1 [119.88 GiB] / in no VG: 0 [0   ]

3,リサイズ
ここで、以下のコマンドで無事拡張成功。

# lvresize -L +56G /dev/VolGroup00/LogVol00
  Extending logical volume LogVol00 to 117.88 GiB
  Logical volume LogVol00 successfully resized
# pvscan
  PV /dev/sda2   VG VolGroup00   lvm2 [119.88 GiB / 32.00 MiB free]
  Total: 1 [119.88 GiB] / in use: 1 [119.88 GiB] / in no VG: 0 [0   ]
# resize2fs /dev/VolGroup00/LogVol00
  resize2fs 1.41.14 (22-Dec-2010)
  Filesystem at /dev/VolGroup00/LogVol00 is mounted on /; on-line resizing required
  old desc_blocks = 4, new_desc_blocks = 8
  Performing an on-line resize of /dev/VolGroup00/LogVol00 to 30900224 (4k) blocks.
  The filesystem on /dev/VolGroup00/LogVol00 is now 30900224 blocks long.

因みにHyper-VマシンでのVHDファイルを見ると、サイズは変わっていない。動的に増えるようなので、問題はないと思う。