【CentOS8】ボリューム拡張手順(/dev/mapper/cl-root)ESXi7.0環境
VMware ESXi7.0環境において、CentOS8の仮想マシンを構築し、追加でボリュームを増量し拡張する手順をメモしました。
拡張する対象のファイルシステムは「/dev/mapper/cl-root」となります。
vSphere7.0環境で追加したボリュームをCentOS8でボリューム拡張する手順
対象の仮想マシンを右クリック>「設定の編集」をクリックします。
「設定の編集」画面が表示されるので、ハードディスクの容量を100GB→150GBに増設しました。
仮想マシンのCentOS8へアクセス
次に仮想マシン(CentOS8)へアクセスし、以下コマンドを実行します。
[root@centos8-test ~]# df -hT
ファイルシス タイプ サイズ 使用 残り 使用% マウント位置
devtmpfs devtmpfs 3.8G 0 3.8G 0% /dev
tmpfs tmpfs 3.8G 0 3.8G 0% /dev/shm
tmpfs tmpfs 3.8G 8.7M 3.8G 1% /run
tmpfs tmpfs 3.8G 0 3.8G 0% /sys/fs/cgroup
/dev/mapper/cl-root xfs 50G 2.6G 48G 6% /
/dev/mapper/cl-home xfs 41G 322M 41G 1% /home
/dev/sda2 ext4 976M 202M 708M 23% /boot
/dev/sda1 vfat 599M 6.9M 592M 2% /boot/efi
tmpfs tmpfs 777M 0 777M 0% /run/user/0
上記では「/dev/mapper/cl-root」が50Gが付与されており、「/dev/mapper/cl-
home」とそのほかのファイルシステムを合わせても100GBから容量が増えていません。
追加した50GBを「/dev/mapper/cl-root」で拡張子100GBに増やします。
「fdisk」コマンドで現状のラベルを確認
「fdisk -l」コマンドを実行すると以下で「サイズが合致しません」という警告が発生しています。
こちらは後の「fdisk」コマンドで修正できます。
また、今回拡張するラベルは13行目の「/dev/sda3」となります。
[root@centos8-test ~]# fdisk -l
GPT PMBR のサイズが合致していません (209715199 != 314572799) が、w (書き込み) コマンドで修正されます。
ディスク /dev/sda: 150 GiB, 161061273600 バイト, 314572800 セクタ
単位: セクタ (1 * 512 = 512 バイト)
セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
ディスクラベルのタイプ: gpt
ディスク識別子: 99C8BEE2-291F-4AD1-881F-8AC428E9A2E1
デバイス 開始位置 終了位置 セクタ サイズ タイプ
/dev/sda1 2048 1230847 1228800 600M EFI システム
/dev/sda2 1230848 3327999 2097152 1G Linux ファイルシステム
/dev/sda3 3328000 209713151 206385152 98.4G Linux LVM
ディスク /dev/mapper/cl-root: 50 GiB, 53687091200 バイト, 104857600 セクタ
単位: セクタ (1 * 512 = 512 バイト)
セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
ディスク /dev/mapper/cl-swap: 7.9 GiB, 8493465600 バイト, 16588800 セクタ
単位: セクタ (1 * 512 = 512 バイト)
セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
ディスク /dev/mapper/cl-home: 40.5 GiB, 43486543872 バイト, 84934656 セクタ
単位: セクタ (1 * 512 = 512 バイト)
セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
増設したディスクへラベルを割り当てる
次に増設した分のディスク容量(50GB)にラベルを割り当てます。
コマンドは「fdisk /dev/sda」となります。
次に以下手順を実行します。
- 9行目:「p」コマンドで現在のパーティションの状況を確認
- 23行目:「n」コマンドを実行します。
- 24行目:パーティションタイプの選択で「既定値」の「4」を選択します。
- 30行目:「t」コマンドを実行し、「l」コマンドで確認した「/dev/sda3」と同じタイプ「Linux LVM」の「31」を入力します。
- 31行目:「w」コマンドでラベルの書き込みをし、fdiskコマンドを終了します。
[root@centos8-test ~]# fdisk /dev/sda
fdisk (util-linux 2.32.1) へようこそ。
ここで設定した内容は、書き込みコマンドを実行するまでメモリのみに保持されます。
書き込みコマンドを使用する際は、注意して実行してください。
GPT PMBR のサイズが合致していません (209715199 != 314572799) が、w (書き込み) コマンドで修正されます。
コマンド (m でヘルプ): p
ディスク /dev/sda: 150 GiB, 161061273600 バイト, 314572800 セクタ
単位: セクタ (1 * 512 = 512 バイト)
セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
ディスクラベルのタイプ: gpt
ディスク識別子: 99C8BEE2-291F-4AD1-881F-8AC428E9A2E1
デバイス 開始位置 終了位置 セクタ サイズ タイプ
/dev/sda1 2048 1230847 1228800 600M EFI システム
/dev/sda2 1230848 3327999 2097152 1G Linux ファイルシステム
/dev/sda3 3328000 209713151 206385152 98.4G Linux LVM
コマンド (m でヘルプ): n
パーティション番号 (4-128, 既定値 4): 4
最初のセクタ (209713152-314572766, 既定値 209713152):
最終セクタ, +セクタ番号 または +サイズ{K,M,G,T,P} (209713152-314572766, 既定値 314572766):
新しいパーティション 4 をタイプ Linux filesystem、サイズ 50 GiB で作成しました。
コマンド (m でヘルプ): t
パーティション番号 (1-4, 既定値 4): 4
パーティションのタイプ (L で利用可能なタイプを一覧表示します): 31
パーティションのタイプを 'Linux filesystem' から 'Linux LVM' に変更しました。
コマンド (m でヘルプ): w
パーティション情報が変更されました。
ディスクを同期しています。
以下コマンドで、新規に「/dev/sda4」が作成されたことを確認します。
[root@centos8-test ~]# fdisk -l
ディスク /dev/sda: 150 GiB, 161061273600 バイト, 314572800 セクタ
単位: セクタ (1 * 512 = 512 バイト)
セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
ディスクラベルのタイプ: gpt
ディスク識別子: 99C8BEE2-291F-4AD1-881F-8AC428E9A2E1
デバイス 開始位置 終了位置 セクタ サイズ タイプ
/dev/sda1 2048 1230847 1228800 600M EFI システム
/dev/sda2 1230848 3327999 2097152 1G Linux ファイルシステム
/dev/sda3 3328000 209713151 206385152 98.4G Linux LVM
/dev/sda4 209713152 314572766 104859615 50G Linux LVM
ディスク /dev/mapper/cl-root: 50 GiB, 53687091200 バイト, 104857600 セクタ
単位: セクタ (1 * 512 = 512 バイト)
セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
ディスク /dev/mapper/cl-swap: 7.9 GiB, 8493465600 バイト, 16588800 セクタ
単位: セクタ (1 * 512 = 512 バイト)
セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
ディスク /dev/mapper/cl-home: 40.5 GiB, 43486543872 バイト, 84934656 セクタ
単位: セクタ (1 * 512 = 512 バイト)
セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
拡張用のボリュームを物理ボリューム(PV)に反映
次に物理ボリューム(PV)に追加したボリュームを反映させます。
「pvdisplay」コマンドで、現在のPVの状態を確認します。
[root@centos8-test ~]# pvdisplay
--- Physical volume ---
PV Name /dev/sda3
VG Name cl
PV Size 98.41 GiB / not usable 2.00 MiB
Allocatable yes (but full)
PE Size 4.00 MiB
Total PE 25193
Free PE 0
Allocated PE 25193
PV UUID Fczg2W-Uzuy-xsQH-rFhM-b4ap-0NaQ-eIOTZn
上記で現在のボリューム「100GB」のみが表示されます。
新規で作成した「/dev/sda4」をpvcreateコマンドで物理ボリュームとして作成します。
[root@centos8-test ~]# pvcreate /dev/sda4
Physical volume "/dev/sda4" successfully created.
上記で「successfully created.」となれば成功です。
再度「pvdisplay」を実行すると新規で「/dev/sda4」として追加分の50GBのボリュームが反映されます。
[root@centos8-test ~]# pvdisplay
--- Physical volume ---
PV Name /dev/sda3
VG Name cl
PV Size 98.41 GiB / not usable 2.00 MiB
Allocatable yes (but full)
PE Size 4.00 MiB
Total PE 25193
Free PE 0
Allocated PE 25193
PV UUID Fczg2W-Uzuy-xsQH-rFhM-b4ap-0NaQ-eIOTZn
"/dev/sda4" is a new physical volume of "50.00 GiB"
--- NEW Physical volume ---
PV Name /dev/sda4
VG Name
PV Size 50.00 GiB
Allocatable NO
PE Size 0
Total PE 0
Free PE 0
Allocated PE 0
PV UUID rDnmSz-jUAe-5w7g-C3wN-KmnW-JaRx-f2NlLp
ボリュームグループ(VG)拡張
次にボリュームグループを拡張します。
「vgdisplay」コマンドでVGのサイズを確認します。
現状は「98.41 GiB」となっています。
[root@centos8-test ~]# vgdisplay
--- Volume group ---
VG Name cl
System ID
Format lvm2
Metadata Areas 1
Metadata Sequence No 4
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 3
Open LV 3
Max PV 0
Cur PV 1
Act PV 1
VG Size 98.41 GiB
PE Size 4.00 MiB
Total PE 25193
Alloc PE / Size 25193 / 98.41 GiB
Free PE / Size 0 / 0
VG UUID S0Wbgt-3buq-1w0t-f8dg-oGna-fULe-Px4FcX
このVGに追加分の50GBを拡張します。
VG Nameが「cl」となるので、以下のコマンドを実行し、VGのボリュームを拡張します。
[root@centos8-test ~]# vgextend cl /dev/sda4
Volume group "cl" successfully extended
再度、「vgdisplay」を実行すると「VG Size」が「148.41 GiB」と「50GiB」分拡張されたことが確認できます。
[root@centos8-test ~]# vgdisplay
--- Volume group ---
VG Name cl
System ID
Format lvm2
Metadata Areas 2
Metadata Sequence No 5
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 3
Open LV 3
Max PV 0
Cur PV 2
Act PV 2
VG Size <148.41 GiB
PE Size 4.00 MiB
Total PE 37992
Alloc PE / Size 25193 / 98.41 GiB
Free PE / Size 12799 / <50.00 GiB
VG UUID S0Wbgt-3buq-1w0t-f8dg-oGna-fULe-Px4FcX
論理ボリューム(LV)拡張
次に論理ボリューム(LV)の拡張を実施します。
今回対象のファイルパス「/dev/mapper/cl-root」を拡張します。
[root@centos8-test ~]# df -h
ファイルシス サイズ 使用 残り 使用% マウント位置
devtmpfs 3.8G 0 3.8G 0% /dev
tmpfs 3.8G 0 3.8G 0% /dev/shm
tmpfs 3.8G 8.7M 3.8G 1% /run
tmpfs 3.8G 0 3.8G 0% /sys/fs/cgroup
/dev/mapper/cl-root 50G 2.6G 48G 6% /
/dev/mapper/cl-home 41G 322M 41G 1% /home
/dev/sda2 976M 202M 708M 23% /boot
/dev/sda1 599M 6.9M 592M 2% /boot/efi
tmpfs 777M 0 777M 0% /run/user/0
拡張サイズは今回追加した50GBすべての空き領域を割り当てます。
以下コマンドを実行します。
[root@centos8-test ~]# lvextend -l +100%FREE /dev/mapper/cl-root
Size of logical volume cl/root changed from 50.00 GiB (12800 extents) to <100.00 GiB (25599 extents).
Logical volume cl/root successfully resized.
拡張が成功すると「Logical volume cl/root successfully resized.」と表示されます。
「lvdisplay」コマンドを実行し、「/dev/cl/root」のボリュームが50GB>100GBへ拡張されたことが確認できます。
[root@centos8-test ~]# lvdisplay
------中略------
--- Logical volume ---
LV Path /dev/cl/root
LV Name root
VG Name cl
LV UUID UAVzab-ABpi-5XzZ-iXyE-fl5B-xbA1-Ncdd2R
LV Write Access read/write
LV Creation host, time centos8-test, 2021-04-15 15:03:16 +0900
LV Status available
# open 1
LV Size <100.00 GiB
Current LE 25599
Segments 2
Allocation inherit
Read ahead sectors auto
- currently set to 8192
Block device 253:0
ファイルシステムでのサイズ拡張を反映(CentOS8)
上記で「/dev/mapper/cl-root」のボリュームサイズは拡張されましたが、以下コマンドでファイルシステムでのサイズは拡張されていません。
[root@centos8-test ~]# df -h
ファイルシス サイズ 使用 残り 使用% マウント位置
devtmpfs 3.8G 0 3.8G 0% /dev
tmpfs 3.8G 0 3.8G 0% /dev/shm
tmpfs 3.8G 8.7M 3.8G 1% /run
tmpfs 3.8G 0 3.8G 0% /sys/fs/cgroup
/dev/mapper/cl-root 50G 2.6G 48G 6% /
/dev/mapper/cl-home 41G 322M 41G 1% /home
/dev/sda2 976M 202M 708M 23% /boot
/dev/sda1 599M 6.9M 592M 2% /boot/efi
tmpfs 777M 0 777M 0% /run/user/0
ファイルシステム側に増設した論理ボリューム(LV)を認識させないといけません。
「CentOS8」では「xfs_growfs」コマンドを実行し認識させます。
[root@centos8-test ~]# xfs_growfs /
meta-data=/dev/mapper/cl-root isize=512 agcount=4, agsize=3276800 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=1, sparse=1, rmapbt=0
= reflink=1
data = bsize=4096 blocks=13107200, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0, ftype=1
log =internal log bsize=4096 blocks=6400, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
data blocks changed from 13107200 to 26213376
再度ファイルシステムの確認をすると「/dev/mapper/cl-root」が100Gに拡張されたことを確認できます。
[root@centos8-test ~]# df -h
ファイルシス サイズ 使用 残り 使用% マウント位置
devtmpfs 3.8G 0 3.8G 0% /dev
tmpfs 3.8G 0 3.8G 0% /dev/shm
tmpfs 3.8G 8.7M 3.8G 1% /run
tmpfs 3.8G 0 3.8G 0% /sys/fs/cgroup
/dev/mapper/cl-root 100G 3.0G 98G 3% /
/dev/mapper/cl-home 41G 322M 41G 1% /home
/dev/sda2 976M 202M 708M 23% /boot
/dev/sda1 599M 6.9M 592M 2% /boot/efi
tmpfs 777M 0 777M 0% /run/user/0
CentOS8におけるファイルシステム拡張手順は以上となります。
Discussion