はじめに
Ubuntu Serverを運用していると、ログファイルやアプリケーションデータの増加によりディスク容量が不足する場合があります。
今回、Ubuntu Serverのディスク容量拡張作業を実施しました。
私はLinux初心者だったため、LVM(Logical Volume Manager)の仕組みを学習しながら、ChatGPTを活用して作業手順や確認ポイントを整理しました。
その後、実際のUbuntu Server環境でコマンドを実行し、結果を確認しながら作業を進めました。
本記事では、単なるコマンド手順だけではなく、以下を初心者目線でまとめます。
- なぜディスク容量が増えないのか
- VirtualBoxとUbuntu Server側の容量管理の違い
- LVM構成で必要になる拡張作業
- 実際に実行したコマンドと結果
1. 作業環境
- 仮想環境:VirtualBox 7.2.12
- OS:Ubuntu Server 26.04 LTS
- ディスク管理:LVM
- ファイルシステム:ext4
※ 環境によってディスク構成やボリューム名は異なります。
2. 今回の作業概要
今回の作業では、VirtualBox側の仮想ディスク容量変更は実施していません。
VirtualBoxで作成した仮想ディスクには、あらかじめ50GBの容量が割り当てられていました。
しかし、Ubuntu Server内部のLVMでは、VG(Volume Group)48GBのうち、24GBだけがLV(Logical Volume)として割り当てられている状態でした。
つまり、ディスク容量自体は存在していますが、まだUbuntu Serverで利用できる領域としてすべて割り当てられていませんでした。
仮想ディスク
50GB
└─ LVM(VG)
48GB
├─ LV(論理ボリューム)
│ 24GB(利用中)
│
└─ 未割り当て領域
24GB
このVG内の未割り当て領域をLVへ追加し、その後ファイルシステムを拡張しました。
仮想ディスク
50GB
└─ LVM(VG)
48GB
└─ LV(論理ボリューム)
48GB
└─ ファイルシステム
48GB(利用可能)
作業の流れ:
- ディスク構成確認
- LVM空き容量確認
- 論理ボリューム拡張
- ファイルシステム拡張
- 拡張結果確認
3. LVMについて
今回のディスク拡張では、LVM(Logical Volume Manager)という仕組みを利用しています。
LVMとは、Linuxでディスク容量を柔軟に管理するための仕組みです。
通常のディスク管理では以下のような構成になります。
ディスク
↓
パーティション
↓
ファイルシステム
↓
データ保存
一方、LVMでは以下のような階層で管理します。
物理ディスク
↓
PV(Physical Volume)
↓
VG(Volume Group)
↓
LV(Logical Volume)
↓
ファイルシステム
↓
データ保存
それぞれの役割:
| 名称 | 役割 |
|---|---|
| PV(Physical Volume) | LVMとして利用するディスク領域 |
| VG(Volume Group) | ディスク容量をまとめて管理する領域 |
| LV(Logical Volume) | OSが利用する論理的なディスク領域 |
| ファイルシステム | 実際にファイルを保存する仕組み |
今回の作業では、
- VG内に存在する空き容量を確認
- LVへ空き容量を追加
- ファイルシステムを拡張
という流れで作業しました。
4. ディスク構成確認
現在Ubuntu Serverが認識しているディスク状態を確認します。
※ 以下の実行結果は説明用の例です。実際の環境ではディスク名や容量、ボリューム名は異なります。
lsblk
NAME SIZE TYPE MOUNTPOINT
sda 50G disk
├─sda1 1G part /boot
├─sda2 2G part
└─sda3 48G part
└─ubuntu--vg-ubuntu--lv 24G lvm /
確認ポイント:
| 確認項目 | 内容 |
|---|---|
| sda | ディスク全体の容量 |
| sda3 | LVMとして利用している領域 |
| ubuntu--vg-ubuntu--lv | 現在利用中の論理ボリューム |
今回の場合、
- ディスク容量:50GB
- LVM領域 (VG):48GB
- 論理ボリューム (LV):24GB
でした。
つまり、VG(Volume Group)には48GBの容量がありますが、そのうち24GBだけがLV(Logical Volume)として割り当てられており、残り24GBはまだLVへ割り当てられていない状態でした。
5. LVM空き容量確認
LVM内部に利用可能な空き容量があるか確認します。
sudo vgs
VG #PV #LV #SN Attr VSize VFree
ubuntu-vg 1 1 0 wz--n- <48.00g 24.00g
確認項目:
| 項目 | 意味 |
|---|---|
| VSize | VG全体の容量 |
| VFree | 論理ボリュームへ追加可能な容量 |
今回、
VFree 24.00g
だったため、VFree 24GB分を論理ボリュームへ追加できます。
6. 論理ボリューム拡張
空き容量を論理ボリュームへ追加します。
この操作では、LVM上の論理ボリューム(LV)のサイズだけを拡張します。
まだファイルシステムのサイズは変更されていないため、この後にファイルシステム拡張が必要です。
sudo lvextend -l +100%FREE /dev/ubuntu-vg/ubuntu-lv
コマンドの意味:
| 指定 | 内容 |
|---|---|
| lvextend | 論理ボリュームを拡張するコマンド |
| -l +100%FREE | VG内の空き容量をすべて使用 |
| ubuntu-lv | 拡張対象 |
※ 環境によって論理ボリューム名(/dev/ubuntu-vg/ubuntu-lv)は異なります。
実行前に sudo lvs などで対象を確認してください。
確認:
sudo lvs
7. ファイルシステム確認
現在使用しているファイルシステムを確認します。
df -T
Filesystem Type Mounted on
/dev/mapper/ubuntu--vg-... ext4 /
今回はext4でした。
8. ファイルシステム拡張
ext4の場合
sudo resize2fs /dev/ubuntu-vg/ubuntu-lv
XFSの場合
sudo xfs_growfs /
※ 使用しているファイルシステムによってコマンドが異なります。
※ resize2fsはext4などのext系ファイルシステムで利用します。
XFSの場合はxfs_growfsを利用します。
lvextendで論理ボリュームを大きくしただけでは、ファイルシステムは以前のサイズのままなので、この作業を行うことでOSから利用可能な容量が増えます。
9. 拡張結果確認
利用可能な容量を確認します。
df -h
実行例:
Filesystem Size
/dev/mapper/ubuntu--vg-... 24G
Filesystem Size
/dev/mapper/ubuntu--vg-... 48G
容量が増えていれば作業完了です。
10. 作業を通して理解したこと
ディスク容量は複数の場所で管理されている
今回の構成では、以下のような階層があります。
VirtualBox
↓
仮想ディスク
↓
Ubuntu Server
↓
パーティション
↓
PV(Physical Volume)
↓
VG(Volume Group)
↓
LV(Logical Volume)
↓
ファイルシステム
そのため、
「ディスク容量が存在する」ことと、「OSで利用できる」ことは別になります。
LVMでは2段階の拡張が必要
今回の作業で特に理解が深まった点です。
LVM構成では、
- 論理ボリューム(LV)を拡張する
- ファイルシステムを拡張する
という2段階の作業が必要でした。
LVだけ拡張しても、ファイルシステムが拡張されていなければ、OSから利用できる容量は増えません。
11. 注意事項
今回の作業では、ChatGPTを活用して手順を整理し、実際の環境で確認しながら作業しました。
作業前のバックアップやスナップショット取得については、今回整理した手順には含めていなかったため、事前取得は実施していませんでした。
今回の作業では問題なく完了しましたが、ディスク変更作業では事前に復旧手段を確認しておくことの重要性を学びました。
作業前には以下を確認することを推奨します。
- 対象ディスクが正しいか
- 拡張対象の論理ボリュームが正しいか
- ファイルシステム種類を確認しているか
- 作業後に容量が増えているか
まとめ
今回、Linux初心者としてUbuntu Serverのディスク拡張作業を実施しました。
作業前は、「ディスク容量が確保されていれば、そのまま利用できる」と思っていました。
しかし実際には、
- 仮想ディスク容量
- LVM管理領域
- 論理ボリューム
- ファイルシステム
それぞれで容量管理されていることを理解しました。
LVM構成では、
- 論理ボリュームを拡張する
- ファイルシステムを拡張する
という2段階の作業が必要です。
今回の経験を通して、Linuxサーバー作業ではコマンドを実行するだけではなく、現在の構成を理解してから作業することの重要性を学びました。
著者: T.Y (株式会社ウィズツーワン)