Edited at

KVMの仮想ディスクを拡張する方法

More than 5 years have passed since last update.

VMware Server で運用していた仮想マシンをKVMに移行して稼働させていたのだが、元のディスク容量が小さく運用に支障をきたす程だし、新しい仮想環境はディスク容量が潤沢なので、仮想ディスクを拡張することにした。

その手順を記録しておく。


前提

仮想ディスクタイプ: raw

仮想マシンのディスク管理タイプ: LVM

拡張する容量: 10GB


仮想ディスクのバックアップ

作業を始める前に、必ず仮想ディスクをバックアップしておくこと。


仮想ディスクの拡張

# 仮想ディスクの容量を確認

qemu-img info virtual-disk.img

# 仮想ディスクの容量を拡張
qemu-img resize virtual-disk.img +10G

# 仮想ディスクの容量を再度確認
qemu-img info virtual-disk.img


gpartedでパーテーションの作成

gpartedのISOをダウンロード

$ wget "http://sourceforge.net/projects/gparted/files/gparted-live-stable/0.13.1-2/gparted-live-0.13.1-2.iso/download"

ダウンロードしたISOで仮想マシンを起動し、パーティションの作成を行う。

仮想マシンにCD-ROMドライブがない場合は、仮想マシンマネージャから追加を行う。

CD-ROM追加時にISOを指定しないとエラーになるので注意。

※ 参考URL: http://opensuse-man-ja.berlios.de/opensuse-html/cha.libvirt.config.html


fdiskで physical volume を作成

# fdisk /dev/sda3

# n 新たに領域を作成する
n

# p 領域テーブルを表示する
p

# 領域番号 (1-4):
1

# 最初 シリンダ (1-1827, default 1):
Enter

# 終点 シリンダ または +サイズ または +サイズM または +サイズK (1-1827, default 1827):
Enter

# t 領域のシステム ID を変更する
t

# 16進数コード (L コマンドでコードリスト表示):
8e

# p 領域テーブルを表示する
p

# w テーブルをディスクに書き込み、終了する
w

fdiskが終了するので再起動

# reboot


LVM物理ボリュームを作成

※ /dev/sda3はマシンやディスクタイプによってことなるので、

  pvdisplayやlvdisplay、dfコマンドなどで確認すること。

# pvcreate /dev/sda3


ボリュームグループに物理ボリュームを割り当てる

# vgextend VolGroup00 /dev/sda3


論理ボリュームを増加させる

# lvextend -L +10Gb /dev/VolGroup00/LogVol00


ファイルシステムサイズの再認識

# resize2fs /dev/VolGroup00/LogVol00


容量が増えたか確認

# df -m

※ 参考URL: http://se-suganuma.blogspot.jp/2009/04/centoslvmvmwarehdd.html