Start typing to search across invoices, services, domains, tickets, and more...
ディスク容量が不足したとき、システムが LVM(論理ボリュームマネージャー)を使っていれば、再インストールせず、通常は停止もせずに容量を増やせます。本記事では Linux で LVM を使ってディスクを拡張する方法を、新しいディスクをボリュームグループに追加するケースと、既存ディスクが拡大されたケースの 2 つに分けて説明し、LVM ではないルートパーティションを growpart で拡張する方法も紹介します。Debian/Ubuntu と CentOS/Rocky/AlmaLinux に対応し、root で実行します。
lvm2 と growpart を含むパッケージをインストールし、lsblk、pvs、vgs、lvs で構成を確認します。どのディスクが物理ボリューム(PV)か、ボリュームグループ(VG)名、論理ボリューム(LV)のマウント先を把握しましょう。以下では VG を vg0、LV を /dev/vg0/root として説明します。
# Debian / Ubuntu
apt update && apt install -y lvm2 cloud-guest-utils
# CentOS / Rocky / AlmaLinux
dnf install -y lvm2 cloud-utils-growpart
# Inspect the current layout
lsblk
pvs
vgs
lvs
df -hT
/dev/vdc などのディスクを追加した場合は、物理ボリュームとして初期化し、既存の VG に加えます。vgs の VFree が増えれば、割り当て可能な空き容量ができたことになります。データが入っているディスクに pvcreate を実行しないよう注意してください。
# Scenario A: a new disk /dev/vdc was added
pvcreate /dev/vdc
vgextend vg0 /dev/vdc
vgs vg0
既存ディスクの容量が増えた場合(例:40 GB → 100 GB)は、growpart でパーティションをディスク末尾まで広げ、pvresize で PV に新しい領域を認識させます。growpart ではディスク名とパーティション番号の間にスペースが必要です。
# Scenario B: the existing disk /dev/vda was enlarged and the PV is partition 2
growpart /dev/vda 2
pvresize /dev/vda2
vgs
VG に空きができたら、lvextend で対象の LV に割り当てます。-l +100%FREE は残りすべて、-L +50G は指定した容量だけ追加します。
# Give all free space in the VG to the logical volume
lvextend -l +100%FREE /dev/vg0/root
# Or add a fixed amount
lvextend -L +50G /dev/vg0/data
LV を広げただけでは df の容量は変わりません。ext4 は resize2fs に LV のパス、XFS は xfs_growfs にマウントポイントを指定します。lvextend に -r を付ければ LV とファイルシステムを一度に拡張できます。
# ext4
resize2fs /dev/vg0/root
# XFS (pass the mount point)
xfs_growfs /
# Alternative: extend LV and filesystem in one step
lvextend -r -l +100%FREE /dev/vg0/root
df -hT
多くのクラウドイメージではルートが LVM ではなく通常のパーティションです。ディスクのアップグレード後は growpart でパーティションを広げ、続けてファイルシステムを拡張するだけで、再起動なしにオンラインで完了します。
# Root partition without LVM, e.g. /dev/vda1 mounted on /
growpart /dev/vda 1
resize2fs /dev/vda1 # ext4
xfs_growfs / # XFS
df -hT /
パーティションの後ろに空き領域がない状態です。ディスク容量の変更がまだ反映されていないか、すでに最大サイズです。lsblk でディスクサイズを確認し、必要に応じて再起動してから再実行してください。
できません。XFS は拡張のみ対応です。縮小するにはバックアップしてファイルシステムを作り直す必要があります。ext4 はアンマウント状態なら縮小できますがリスクが高いため慎重に行ってください。
swap を無効化して削除し、ルートを拡張した後に swap ファイルへ切り替えるか、空き領域に swap を作り直す必要があります。上級者向けの作業のため、不安な場合はチケットでご相談ください。
上記の手順で解決しない場合は、サポートチケットを送信して IMIDC の 24 時間 365 日テクニカルサポートへお問い合わせください。サーバー IP、OS、実行したコマンド、エラー画面のスクリーンショットを添えていただくと、より迅速に対応できます。