【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」となります。

次に以下手順を実行します。

  1. 9行目:「p」コマンドで現在のパーティションの状況を確認
  2. 23行目:「n」コマンドを実行します。
  3. 24行目:パーティションタイプの選択で「既定値」の「4」を選択します。
  4. 30行目:「t」コマンドを実行し、「l」コマンドで確認した「/dev/sda3」と同じタイプ「Linux LVM」の「31」を入力します。
  5. 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におけるファイルシステム拡張手順は以上となります。




エンジニアのオンライン学習

ITエンジニアにおすすめの教材、オンラインスクールです。
無料からエンジニアの学習ができる教材などまとめているので参考にしてください。

おすすめオンライン教材
自宅で学習ができるオンラインスクール

ITエンジニアの開発・検証・学習としてインターネット上で専用のサーバ(VPS)を利用しましょう!
実務経験はVPSで学べます。



コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

ABOUT US
げんき☆ひろき
インターネット関連のSEをやっています。 ネットワーク、サーバー、ストレージ、仮想基盤まで幅広く手を出しており、MVNOの構築経験もあります。 現在は、Pythonを使ったプログラミングの開発をしネットワークの自動化ツールを作成しています! Pythonの入門書も作成しているので、ぜひ参考にしてください!