CentOS7の自動ディスクパーティションで作られたLVMを縮小/拡張する

CentOS7のインストール時に、ディスクの構成でデフォルトの「自動ディスクパーティション」を選択すると、パーティションサイズが「/」が50GBで、「/home」が150GBといった状態になってしまう。

この状態を解消するために、「/home」を縮小し、「/」を拡張する手順をメモする。

 

以下のサイトを参考にさせていただきました。こちらを読めば大丈夫です^^
qiita.com

確認した環境

仮想化ソフト: VirtualBox 5.1.28
ゲストOS: CentOS 7.4
仮想ディスクサイズ: 80GB

手順

以下、手順を記述するが、コマンドの出力結果は省略している場合があります。

ディスクの状態を確認

//ディスクドライブの使用状況を確認する
# df -Th
/Filesystem               Type   Size   Mounted on
/dev/mapper/centos-root   xfs     50G   /
/dev/sda1                 xfs   1014M   /boot
/dev/mapper/centos-home   xfs     27G   /home

//論理ボリュームを確認する
# lvdisplay
...
LV Path     /dev/centos/home
LV Name     home
VG Name     centos
LV Status   available
LV Size     26.99GiB

...
LV Path     /dev/centos/root
LV Name     root
VG Name     centos
LV Status   available
LV Size     50.00GiB

//ボリュームグループを確認する
# vgdisplay
VG Name        centos
VG Size        <79.00GiB
PE Size        4.00MiB
Total PE       20223
Alloc PE/Size  20222 / 78.99 GiB ※80GBは割り当て済み
Free  PE/Size  1 / 4.00 MiB
...

LVMディスクの開放

//アンマウント
# umount /dev/mapper/centos-home

//ボリュームの利用を停止する
# lvchange -a n /dev/centos/home

//論理ボリュームを確認する
# lvdisplay
...
LV Path     /dev/centos/home
LV Name     home
VG Name     centos
LV Status   NOT available ※利用不可となった
LV Size     26.99GiB

//論理ボリュームを削除する
# lvremove /dev/centos/home
  Logical volume "home" successfully removed

//ボリュームグループを確認する
# vgdisplay
VG Name        centos
VG Size        <79.00GiB
PE Size        4.00MiB
Total PE       20223
Alloc PE/Size  13312 / 52.00 GiB ※割り当て済みは80GB→52GBに減少
Free  PE/Size  6911 / 27.08 GiB ※空き領域ができた
...

論理ボリューム「home」を作成

削除した論理ボリューム「/home」をサイズ指定で再作成する。

//論理ボリュームを作成
# lvcreate -L 10G -n home centos
WARNING: xfs signature detected on /dev/centos/home at offset 0. Wipe it? [y/n]:
y ※とりあえず「y」を入力
   Wiping xfs signature on /dev/centos/home.
   Logical volume "home" created.

//ファイルシステムを作成
# mkfs.xfs /dev/centos/home
...

//マウントする
# mount /dev/centos/home

//ボリュームグループを確認する
# vgdisplay
VG Name        centos
VG Size        <79.00GiB
PE Size        4.00MiB
Total PE       20223
Alloc PE/Size  15872 / 62.00 GiB ※/homeに10G割り当てた分増加
Free  PE/Size  4351 / 17.08 GiB ※残った17GBをこのあと「/」に割り当てる
...

空き領域を割り当てる

/dev/centos/rootに残りの空き領域を割り当てる

//空き領域を割り当てる
# lvextend -l +100%FREE /dev/centos/root
  Size of logical volume centos/root changed from 50.00 GiB (12800 extends) to <67.00 GiB (17151 extents).
  Logical volume centos/root successfully resized.

//XFSファイルシステムの拡大(これをしないとサイズは増えない)
# xfs_growfs /dev/mapper/centos-root
...

//ディスクドライブの使用状況を確認する
# df -Th
/Filesystem               Type   Size   Mounted on
/dev/mapper/centos-root   xfs     67G   /   ※「/」は50G→67Gに拡張された
/dev/sda1                 xfs   1014M   /boot
/dev/mapper/centos-home   xfs     10G   /home ※「/home」は27G→10Gに縮小された


以上