背景
(/)ルート領域を拡張することになった。
インストール時のパーティションは以下のとおり
- boot領域 4GB
- swap領域 1GB
- /領域 38GB
- /home領域 19GB
[root@localhost ~]# df -h
ファイルシス サイズ 使用 残り 使用% マウント位置
/dev/mapper/rhel-root 38G 20G 18G 53% /
/dev/sda1 1014M 145M 870M 15% /boot
/dev/mapper/rhel-home 19G 33M 19G 1% /home
なお今回は/領域を拡張するということで、/をアンマウントする必要がある。そのためメディアブートしてレスキューモードからオペレーションする必要がある。
いざ拡張
まずはハードディスクそのものを拡張する。今回はESXi上のVMが対象であるため、VMをシャットダウンしてからvCenterからVMのハードディスク容量を変更する(60GB -> 100GB)
※不測の事態にそなえてスナップショットの取得をお忘れなく
そうすると/にはローカルディスクではなくISOメディアボリュームがマウントされる
パーティションの管理はfdiskで行われる場合が多いが、partedのresize機能を使用することにする。
なぜならfdiskはパーティションを一度削除する必要があるため、できるだけ使いたくない。
と思ったが、どうやらRHEL7(CentOS7)ではpartedでresizeができないらしい。。。
結局fdiskでやる
どうやら拡張する際の開始セクタが同じであればデータは消えないとのことなので、fdiskを利用して
パーティションを削除->再作成することにより拡張することとする。(縮小の場合はどうするんだろう。。。)
現在のパーティションテーブルは以下の通り、/dev/sda2が/に該当するパーティションなので今回は
こちらを削除してから大きいサイズで再作成する
さようならーーーー
そして新しいパーティションを作成する
※全部デフォルトをたたけばいい感じにできます最終セクターのデフォルトは指定できるMAX値になるので
できたー
書き込みもお忘れなく
Warningがでているが、これは設定を適用したいなら再起動しろよというメッセージ。なので再起動する
もうレスキューモードは必要ないので、再起動後は通常モードで起動する
これでパーティションは拡大することができたので、論理ボリュームを拡大していく
とその前にOSを再起動してレスキューモードからぬけることをお忘れなく
OSが起動したら
パーティションサイズの変更が適用されていることを確認
確認したら、まずはPhisical Volumeから拡張する
現状PVは(約)60GBになっている
[root@localhost ~]# pvdisplay
--- Physical volume ---
PV Name /dev/sda2
VG Name rhel
PV Size <59.00 GiB / not usable 2.00 MiB
Allocatable yes
PE Size 4.00 MiB
Total PE 15103
Free PE 1
Allocated PE 15102
PV UUID v38uuP-pqb7-vBs9-GGch-JPg9-vOrv-zb0OGF
pvresizeコマンドで拡張する
[root@localhost ~]# pvresize /dev/sda2
Physical volume "/dev/sda2" changed
1 physical volume(s) resized / 0 physical volume(s) not resized
(約)100GBに拡張されたことを確認する
[root@localhost ~]# pvscan
PV /dev/sda2 VG rhel lvm2 [<99.00 GiB / 40.00 GiB free]
Total: 1 [<99.00 GiB] / in use: 1 [<99.00 GiB] / in no VG: 0 [0 ]
[root@localhost ~]# pvdisplay
--- Physical volume ---
PV Name /dev/sda2
VG Name rhel
PV Size <99.00 GiB / not usable 2.00 MiB
Allocatable yes
PE Size 4.00 MiB
Total PE 25343
Free PE 10241
Allocated PE 15102
PV UUID v38uuP-pqb7-vBs9-GGch-JPg9-vOrv-zb0OGF
LogicalVolumeを拡張する
まずは確認
[root@localhost ~]# lvdisplay
--- Logical volume ---
LV Path /dev/rhel/swap
LV Name swap
VG Name rhel
LV UUID OQzoCQ-Okea-ec9A-rXa3-OIUy-A2nR-OBZMLk
LV Write Access read/write
LV Creation host, time localhost, 2018-12-20 10:42:41 +0900
LV Status available
# open 2
LV Size <3.88 GiB
Current LE 992
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 8192
Block device 253:1
--- Logical volume ---
LV Path /dev/rhel/home
LV Name home
VG Name rhel
LV UUID cDZSgW-EjnM-zFb2-354F-Nn2k-EEpR-AHRIFN
LV Write Access read/write
LV Creation host, time localhost, 2018-12-20 10:42:41 +0900
LV Status available
# open 1
LV Size 18.08 GiB
Current LE 4629
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 8192
Block device 253:2
--- Logical volume ---
LV Path /dev/rhel/root
LV Name root
VG Name rhel
LV UUID fxnSpj-0875-X0gV-D07I-7woW-MpDT-bhLh6t
LV Write Access read/write
LV Creation host, time localhost, 2018-12-20 10:42:41 +0900
LV Status available
# open 1
LV Size <37.04 GiB
Current LE 9481
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 8192
Block device 253:0
[root@localhost ~]# lvdisplay
--- Logical volume ---
LV Path /dev/rhel/swap
LV Name swap
VG Name rhel
LV UUID OQzoCQ-Okea-ec9A-rXa3-OIUy-A2nR-OBZMLk
LV Write Access read/write
LV Creation host, time localhost, 2018-12-20 10:42:41 +0900
LV Status available
# open 2
LV Size <3.88 GiB
Current LE 992
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 8192
Block device 253:1
--- Logical volume ---
LV Path /dev/rhel/home
LV Name home
VG Name rhel
LV UUID cDZSgW-EjnM-zFb2-354F-Nn2k-EEpR-AHRIFN
LV Write Access read/write
LV Creation host, time localhost, 2018-12-20 10:42:41 +0900
LV Status available
# open 1
LV Size 18.08 GiB
Current LE 4629
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 8192
Block device 253:2
--- Logical volume ---
LV Path /dev/rhel/root
LV Name root
VG Name rhel
LV UUID fxnSpj-0875-X0gV-D07I-7woW-MpDT-bhLh6t
LV Write Access read/write
LV Creation host, time localhost, 2018-12-20 10:42:41 +0900
LV Status available
# open 1
LV Size <37.04 GiB
Current LE 9481
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 8192
Block device 253:0
今回はこの/dev/rhel/rootを拡張する
lvextendコマンドで該当するLVを拡張する(+100%FREEを指定すると、拡張可能な最大値までボリュームサイズを拡張することができる)
[root@localhost ~]# lvextend -l +100%FREE /dev/rhel/root
Size of logical volume rhel/root changed from <37.04 GiB (9481 extents) to <77.04 GiB (19722 extents).
Logical volume rhel/root successfully resized.
拡張されていることを確認する
[root@localhost ~]# lvdisplay
~割愛~
--- Logical volume ---
LV Path /dev/rhel/root
LV Name root
VG Name rhel
LV UUID fxnSpj-0875-X0gV-D07I-7woW-MpDT-bhLh6t
LV Write Access read/write
LV Creation host, time localhost, 2018-12-20 10:42:41 +0900
LV Status available
# open 1
LV Size <77.04 GiB
Current LE 19722
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 8192
Block device 253:0
40GBほど拡張されている!!
これだけだとまだファイルシステムは拡張されていない
[root@localhost ~]# df -h
ファイルシス サイズ 使用 残り 使用% マウント位置
/dev/mapper/rhel-root 38G 20G 18G 53% /
devtmpfs 1.9G 0 1.9G 0% /dev
tmpfs 1.9G 0 1.9G 0% /dev/shm
tmpfs 1.9G 8.6M 1.9G 1% /run
tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup
/dev/sda1 1014M 145M 870M 15% /boot
/dev/mapper/rhel-home 19G 33M 19G 1% /home
tmpfs 380M 0 380M 0% /run/user/0
最後にファイルシステムのリサイズを実行
[root@localhost ~]# xfs_growfs /dev/rhel/root
meta-data=/dev/mapper/rhel-root isize=512 agcount=4, agsize=2427136 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=0 spinodes=0
data = bsize=4096 blocks=9708544, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal bsize=4096 blocks=4740, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
ファイルシステムサイズが変更されたことを確認する
[root@localhost ~]# df -h
ファイルシス サイズ 使用 残り 使用% マウント位置
/dev/mapper/rhel-root 78G 20G 58G 26% /
devtmpfs 1.9G 0 1.9G 0% /dev
tmpfs 1.9G 0 1.9G 0% /dev/shm
tmpfs 1.9G 8.6M 1.9G 1% /run
tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup
/dev/sda1 1014M 145M 870M 15% /boot
/dev/mapper/rhel-home 19G 33M 19G 1% /home
tmpfs 380M 0 380M 0% /run/user/0
おつかれさまでーす