Rocky Linuxのディスク容量を拡張する方法(Azure VMでのOSディスク、データディスク拡張手順)
仮想マシン(Azure VM)のディスク容量を拡張してLinuxで利用するための手順です。
Rocky Linux環境で確認しています。
OSディスクを拡張した場合とデータディスクを拡張した場合の手順を紹介しています。
ファイルシステムにはLVM(Logical Volume Manager)を利用した場合の手順と、標準のパーティション管理を利用した場合の手順を確認しています。
※本記事では、Azure Virtual Machines(Azure VM)を仮想マシン、Azure Managed Disks(マネージドディスク)をディスクとして表記しています。
※Rocky Linux release 9.6 (Blue Onyx)を利用しています。
※XFSファイルシステムを使用した環境で確認しています。
※手順確認は、仮想マシンがオンラインの状態で実施しています。
Azure環境で仮想マシンのディスクサイズを拡張する場合の手順
仮想マシンのディスク容量を拡張する場合の手順については、こちらで紹介しています。
また仮想マシンにディスクを追加する場合の手順についても、別記事にて紹介しております。
Rocky LinuxのOSディスク容量(サイズ)を拡張する場合の手順(LVMの場合)
公式サイトを参考に手順を確認します。
今回は10GiBのOSディスクを32GiBまで容量を拡張します。
OS ディスクのサイズを増やす(Linux VM の仮想ハード ディスクを拡張する)
ディスクのサイズを大きくした後のOS状態を確認
容量を拡張したディスクがOSからどのように認識されているかを、lsblk、gdisk、dfコマンドを利用して確認します。
OSのディスクは/dev/nvme0n1として認識されています。
物理ディスクの容量が10GiBから32GiBに拡張されていることが確認できます。
ただし、パーティション、ボリューム、ファイルシステムは未拡張の状態であることが分かります。
|
[root@vm-01 ~]#
lsblk [root@vm-01 ~]#
pvs /dev/nvme0n1p4 |
※コマンド実行結果は抜粋して記載しています。
growpartコマンドを使用してパーティションを拡張
パーティション拡張にはgrowpartコマンドを使います。
今回は、拡張したディスクの容量をすべて割り当てます。
パーティション拡張に合わせて、物理ボリュームやボリュームグループも拡張されています。
※MarketPlaceからAzure環境上に作成した仮想マシンの場合、cloud-utils-growpart gdiskはインストール済みでした。
※物理ボリュームが拡張されない場合は、pvresizeコマンドを使用して拡張します。
※ボリュームグループが拡張されない場合は、vgextendコマンドを使用して拡張します。
|
# 未インストールの場合は、インストールします。 [root@vm-01 ~]# lsblk /dev/nvme0n1 [root@vm-01 ~]# pvs /dev/nvme0n1p4 |
※コマンド実行結果は抜粋して記載しています。
lvextendコマンドを使用して論理ボリューム(LV)とファイルシステムを拡張
論理ボリュームとフィルシステムのサイズを拡張します。
lvextendコマンドの-rオプションを利用することで、論理ボリュームの拡張に合わせて自動でファイルシステムもリサイズされます。
ファイルシステムも併せて拡張することで、OSから拡張した領域が認識され、利用できるようになります。
|
[root@vm-01 ~]# lvextend -r -l +100%FREE /dev/rocky/lvroot xfs_growfs done [root@vm-01 ~]# lvs rocky [root@vm-01 ~]# df -Th | grep rocky-lvrooton |
※コマンド実行結果は抜粋して記載しています。
—広告—
Rocky LinuxのOSディスク容量(サイズ)を拡張する場合の手順(標準パーティション管理の場合)
ディスクのサイズ変更に合わせてディスク容量も自動的に拡張される
lsblk、gdisk、dfコマンドを利用して、容量を拡張した後のOSディスクの状態を確認します。
Azure上に作成した仮想マシンの場合、操作を行うことなく、ファイルシステムが拡張されていることが確認できます。
※MarketPlaceからAzure環境上に作成したRocky Linuxの仮想マシンの場合です。拡張手順についてはデータディスクの場合の方に記載しています。
|
[root@vm-01 ~]# lsblk |
Rocky Linuxのデータディスク容量(サイズ)を拡張する場合の手順(LVMの場合)
今回は32GiBのデータディスクを64GiBまで容量を拡張します。
こちらの手順で仮想マシンに追加したデータディスクを利用しています。
ディスクのサイズを大きくした後のOS状態を確認
容量を拡張したディスクがOSからどのように認識されているかを、lsblk、gdisk、dfコマンドを利用して確認します。
データディスクは/dev/nvme0n2として認識されています。
物理ディスクの容量が32GiBから64GiBに拡張されていることが確認できます。
ただし、パーティション、ボリューム、ファイルシステムは未拡張の状態であることが分かります。
-
- lsblk : ブロックデバイスの情報を一覧表示
|
[root@vm-01 ~]#
lsblk /dev/nvme0n2 |
※データディスクの論理ボリューム名はlv_data_01、ボリュームグループ名はrocky_data_01としています。
※コマンド実行結果は抜粋して記載しています。
growpartコマンドを使用してパーティションを拡張
パーティション拡張にはgrowpartコマンドを使います。
今回は、拡張したディスクの容量をすべて割り当てます。
パーティション拡張に合わせて、物理ボリュームやボリュームグループも拡張されています。
※MarketPlaceからAzure環境上に作成した仮想マシンの場合、cloud-utils-growpart gdiskはインストール済みでした。
※物理ボリュームが拡張されない場合は、pvresizeコマンドを使用して拡張します。
※ボリュームグループが拡張されない場合は、vgextendコマンドを使用して拡張します。
|
# 未インストールの場合は、インストールします。 [root@vm-01 ~]#
growpart /dev/nvme0n2 1
CHANGED: partition=1 start=2048 old: size=67104768 end=67106815 new: size=134215647 end=134217694
[root@vm-01 ~]# partprobe /dev/nvme0n2
[root@vm-01 ~]#
lsblk /dev/nvme0n2
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
nvme0n2 259:5 0 64G 0 disk
└─nvme0n2p1 259:6 0 64G 0 part # パーティションが拡張されています
└─rocky_data_01-lv_data_01 253:0 0 32G 0 lvm /datadisk01
[root@vm-01 ~]# pvs /dev/nvme0n2p1
PV VG Fmt Attr PSize PFree
/dev/nvme0n2p1 rocky_data_01 lvm2 a– <64.00g 32.00g
|
※データディスクの論理ボリューム名はlv_data_01、ボリュームグループ名はrocky_data_01としています。
※コマンド実行結果は抜粋して記載しています。
lvextendコマンドを使用して論理ボリューム(LV)を拡張
論理ボリュームを拡張します。
論理ボリュームの拡張にはlvextendコマンドを使用します。
※lvextendコマンドの-rオプションを利用することで、論理ボリュームの拡張に合わせてファイルシステムもリサイズすることができます。具体的には、OSディスクの容量拡張例の方を参照ください。
|
[root@vm-01 ~]#
lvextend -l +100%FREE /dev/rocky_data_01/lv_data_01
Size of logical volume rocky_data_01/lv_data_01 changed from <32.00 GiB (8191 extents) to <64.00 GiB (16383 extents).
Logical volume rocky_data_01/lv_data_01 successfully resized.
[root@vm-01 ~]#
lvs rocky_data_01
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
lv_data_01 rocky_data_01 -wi-ao—- <64.00g # 論理ボリュームが拡張されています
|
※データディスクの論理ボリューム名はlv_data_01、ボリュームグループ名はrocky_data_01としています。
※コマンド実行結果は抜粋して記載しています。
xfs_growfsコマンドを利用してファイルシステムを拡張
ファイルシステムを拡張します。
ファイルシステムの拡張にはxfs_growfsコマンドを使用します。
ファイルシステムを拡張することで、OSから拡張した領域が認識され、利用できるようになります。
-
- xfs_growfs : 論理ボリュームのサイズを拡張
- df : マウントされているファイルシステムの空き領域を表示
|
[root@vm-01 ~]#
xfs_growfs /datadisk01
meta-data=/dev/mapper/rocky_data_01-lv_data_01 isize=512 agcount=4, agsize=2096896 blks
~中略~ data blocks changed from 8387584 to 16776192
[root@vm-01 ~]#
df -h | grep rocky_data_01
/dev/mapper/rocky_data_01-lv_data_01 xfs 64G 490M 64G 1% /datadisk01 # ファイルシステムが拡張されています
|
※コマンド実行結果は抜粋して記載しています。
—広告—
Rocky Linuxのデータディスク容量(サイズ)を拡張する場合の手順(標準パーティション管理の場合)
今回は32GiBのデータディスクを64GiBまで容量を拡張します。
こちらの手順で仮想マシンに追加したデータディスクを利用しています。
ディスクのサイズを大きくした後のOS状態を確認
容量を拡張したディスクがOSからどのように認識されているかを、lsblk、dfコマンドを利用して確認します。
今回、データディスクは/dev/nvme0n2として認識されています。
物理ディスクの容量が32GiBから64GiBに拡張されていることが確認できます。
ただし、パーティション、ファイルシステムは未拡張の状態であることが分かります。
|
[root@vm-01 ~]#
lsblk /dev/nvme0n2
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
nvme0n2 259:5 0 64G 0 disk # 物理ディスクのサイズが拡張されています
└─nvme0n2p1 259:6 0 32G 0 part /datadisk01 # パーティションのサイズは拡張されていません
[root@vm-01 ~]#
df -h | grep nvme0n2p1
/dev/nvme0n2p1 xfs 32G 261M 32G 1% /datadisk01 # ファイルシステムは拡張されていません
|
※コマンド実行結果は抜粋して記載しています。
growpartコマンドを利用してパーティションを拡張
パーティション拡張には、growpartコマンドを利用します。
今回は、拡張したディスクのサイズをすべて拡張しています。
パーティション拡張に合わせて、物理ボリューム、ボリュームグループも拡張されます。
※MarketPlaceからAzure環境上に作成した仮想マシンの場合、cloud-utils-growpart gdiskはインストール済みでした。
|
# 未インストールの場合は、インストールします。 [root@vm-01 ~]#
growpart /dev/nvme0n2 1
CHANGED: partition=1 start=2048 old: size=67104768 end=67106815 new: size=134215647 end=134217694
[root@vm-01 ~]#
partprobe /dev/nvme0n2
[root@vm-01 ~]#
lsblk /dev/nvme0n2
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
nvme0n2 259:5 0 64G 0 disk
└─nvme0n2p1 259:6 0 64G 0 part /datadisk01 # パーティションが拡張されています
[root@vm-01 ~]#
df -h | grep nvme0n2p1
/dev/nvme0n2p1 xfs 32G 261M 32G 1% /datadisk01 # ファイルシステムは拡張されていません
|
※コマンド実行結果は抜粋して記載しています。
xfs_growfsコマンドを利用してファイルシステムを拡張
ファイルシステムを拡張します。
ファイルシステムの拡張にはxfs_growfsコマンドを使用します。
ファイルシステムを拡張することで、OSから拡張した領域が認識され、利用できるようになります。
-
- xfs_growfs : 論理ボリュームのサイズを拡張
- df : マウントされているファイルシステムの空き領域を表示
|
[root@vm-01 ~]#
xfs_growfs /datadisk01
meta-data=/dev/nvme0n2p1 isize=512 agcount=4, agsize=2097024 blks
~中略~
data blocks changed from 8388096 to 16776955
[root@vm-01 ~]# df -Th | grep nvme0n2p1 /dev/nvme0n2p1 xfs 64G 490M 64G 1% /datadisk01 # ファイルシステムが拡張されています
|
※コマンド実行結果は抜粋して記載しています。
—広告—
最後に
Linuxの仮想マシンのディスク容量を拡張する場合の手順について、Rocky Linuxを例にまとめました。
OSディスク、データディスクそれぞれについて、標準のパーティション管理の場合とLVMを利用した場合の手順を確認しています。
引き続き、いろいろ試してみたいと思います。
Windowsでのディスク拡張手順については、こちらで紹介しています。
Windowsでのデータディスク追加手順については、こちらで紹介しています。
マネージドディスク種類とIOPS測定については、こちらで紹介しています。

