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におけるファイルシステム拡張手順は以上となります。
サーバーを構築するならVPSがおすすめです。
エンジニアのオンライン学習
ITエンジニアにおすすめの教材、オンラインスクールです。
無料からエンジニアの学習ができる教材などまとめているので参考にしてください。
おすすめオンライン教材 | |
自宅で学習ができるオンラインスクール | |
ITエンジニアの開発・検証・学習としてインターネット上で専用のサーバ(VPS)を利用しましょう!
実務経験はVPSで学べます。
コメントを残す