Ubuntu 26.04 講座 / インストール済みディスク・LVM構造の確認と拡張計画の立て方

Ubuntuのストレージを増やす前には、仮想ディスク・パーティション・LVM・ファイルシステムのどの階層に余裕があるかを確認する必要があります。ディスクサイズの増加とルートファイルシステムの拡張は別であり、まずバックアップと実際の対象の特定を行います。

階層ごとの構造を実際の出力と連動させる

lsblk -o NAME,SIZE,TYPE,FSTYPE,MOUNTPOINTS
findmnt /
df -hT /
sudo pvs
sudo vgs
sudo lvs -o lv_path,lv_size,vg_name

LVMがないインストールでは、pvs・vgs・lvsに対象がないことがあり、エラーとは断定しません。LVM(Logical Volume Management、論理ボリューム管理)では、PV(Physical Volume、物理ボリューム)が管理対象のブロックデバイスを表し、VG(Volume Group、ボリュームグループ)がその領域をまとめます。LV(Logical Volume、論理ボリューム)は、その領域からファイルシステムに使う論理デバイスを割り当てます。ルートの実際のソースとLVパスを照合します。

観察された空き容量 必要な作業
VGに残った空き容量 既存LVとサポートされるファイルシステムの拡張
ディスクだけが大きくなり、PVはそのまま パーティション・PV範囲の確認後にLVを拡張
新しいディスクの追加 デバイス識別・バックアップ・PV/VG設計は別途必要
ファイルシステムのみがいっぱい 大きなファイル・ログ・inodeも先に調査

インストーラーの選択と現在の容量を比較

ガイド付きのLVMインストールではディスク全体をルートLVにすべて割り当てないことがあります。したがってdfの容量が仮想ディスクより小さくても、まずVGの余裕を確認します。逆にVGがいっぱいの場合にlvextendだけを繰り返してもスペースは増えません。

Ubuntu LVM管理ガイドでは、ボリューム階層と論理ボリュームの拡張条件を説明しています。

拡張前の復旧と対象確認

重要なファイルの独立バックアップを開き、VMの正常な状態とコンソールを準備します。デバイス名・マウント・ファイルシステムの種類・VGの空き容量・計画増設量を記録します。拡張は単純に逆コマンドで安全に取り消せる作業ではないため、縮小を復元方法として想定しません。

以下の例は、実際のLVが正確に/dev/ubuntu-vg/ubuntu-lvで、サポートされているext4ファイルシステムを使用し、VGに1GiB以上の空きがある専用の実習VMにのみ適用します。他の環境では、出力で確認したパスとサポート条件を使用する必要があります。

既存VGの空きに制限された拡張試験

sudo lvextend --size +1G --resizefs /dev/ubuntu-vg/ubuntu-lv
sudo lvs -o lv_path,lv_size,vg_name
df -hT /
findmnt /

+1Gは既存のサイズに追加する量であり、1Gとは意味が異なります。resizefsはサポートされているファイルシステムの拡張も同時に要求しますが、成功したかどうかはコマンド出力とLV・ファイルシステム両方のサイズで確認する必要があります。LVだけが大きくなり、ファイルシステムがそのままの場合は原因を調査し、同じコマンドをむやみに繰り返してはいけません。

他の階層の拡張は計画を分けること

パーティションの拡張・PVサイズの調整・新しいディスクの追加は、対象デバイスとファイルシステムによって手順が異なります。既存データがあるディスクにpvcreateの例をそのまま適用したり、ルートデバイスにフォーマットコマンドを実行したりしないでください。現在の階層と不足している階層を描き、拡張前後の予想サイズをまず記入します。

作業後に実際の読み書きや必要なサービス、予定している再起動を確認します。エラーがある場合は追加変更を停止し、ログと現在のレイアウトを保存した後、準備したバックアップの復元経路を判断します。ストレージが大きくなったという結果とデータ復元の可能性を区別して記録します。