佐賀人のIT技術者のブログ

IT技術、日常のブログです。たまに地元・佐賀について書きます。

Linuxでlvmのパーティションサイズを増やす

状況(物理ボリューム確認)

[alma@vbox ~]$ lsblk -ia
NAME                    MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
sda                       8:0    0   30G  0 disk 
|-sda1                    8:1    0  600M  0 part /boot/efi
|-sda2                    8:2    0    1G  0 part /boot
`-sda3                    8:3    0 13.4G  0 part 
  |-almalinux_vbox-root 253:0    0 11.9G  0 lvm  /                          # ←ここ
  `-almalinux_vbox-swap 253:1    0  1.5G  0 lvm  [SWAP]
sr0                      11:0    1 1024M  0 rom  

全ストレージ容量(sda)には30GBあるが、実際に割り当てられているのは13.4GBくらい。

さらに13.4GBのうち/にマウントされているalmalinux_vbox-rootは11.9GB。

今回はalmalinux_vbox-rootの容量を最大まで増やす。

拡張する

コマンドは下記。

# ディスク /dev/sda をパーティション操作ツール parted で開きます。
[alma@vbox ~]$ parted /dev/sda

# パーティション3(/dev/sda3)のサイズを、ディスクの終わりまで(100%)拡張しています。
(parted) resizepart 3 100%
Warning: Not all of the space available to /dev/sda appears to be used, you can fix the GPT to use
all of the space (an extra 31457280 blocks) or continue with the current setting? 
Fix/Ignore? Fix                                                           
Partition number? 3                                                       
End?  [16.1GB]? そのままEnter

# 拡張された確認(Number 3のSize)
(parted) print
Model: VBOX HARDDISK (scsi)
Disk /dev/sda: 32.2GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags: 

Number  Start   End     Size    File system  Name                  Flags
 1      1049kB  630MB   629MB   fat32        EFI System Partition  boot, esp
 2      630MB   1704MB  1074MB  xfs
 3      1704MB  32.2GB  30.5GB                                     lvm
(parted) quit

# 物理ボリューム /dev/sda3 のサイズを認識し直しています。
[alma@vbox ~]$ pvresize /dev/sda3

# 確認
[alma@vbox ~]$ lsblk -ia
NAME                    MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
sda                       8:0    0   30G  0 disk 
|-sda1                    8:1    0  600M  0 part /boot/efi
|-sda2                    8:2    0    1G  0 part /boot
`-sda3                    8:3    0 28.4G  0 part 
  |-almalinux_vbox-root 253:0    0 11.9G  0 lvm  /
  `-almalinux_vbox-swap 253:1    0  1.5G  0 lvm  [SWAP]
sr0                      11:0    1 1024M  0 rom  


# LVM の論理ボリューム /dev/almalinux_vbox/root に対し、利用可能な物理ボリュームの空き領域をすべて割り当てて拡張しています。
[alma@vbox ~]$ lvextend -l +100%FREE /dev/almalinux_vbox/root
[alma@vbox ~]$ lsblk -ia
NAME                    MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
sda                       8:0    0   30G  0 disk 
|-sda1                    8:1    0  600M  0 part /boot/efi
|-sda2                    8:2    0    1G  0 part /boot
`-sda3                    8:3    0 28.4G  0 part 
  |-almalinux_vbox-root 253:0    0 26.9G  0 lvm  /
  `-almalinux_vbox-swap 253:1    0  1.5G  0 lvm  [SWAP]
sr0                      11:0    1 1024M  0 rom

# 論理ボリュームに乗っている XFSファイルシステム を拡張します。
[alma@vbox ~]$ sudo xfs_growfs /dev/almalinux_vbox/root
meta-data=/dev/mapper/almalinux_vbox-root isize=512    agcount=4, agsize=780544 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=1, sparse=1, rmapbt=0
         =                       reflink=1    bigtime=1 inobtcount=1 nrext64=0
data     =                       bsize=4096   blocks=3122176, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0, ftype=1
log      =internal log           bsize=4096   blocks=16384, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
data blocks changed from 3122176 to 7054336

# 確認
[alma@vbox ~]$ df -h
Filesystem                       Size  Used Avail Use% Mounted on
devtmpfs                         4.0M     0  4.0M   0% /dev
tmpfs                            819M     0  819M   0% /dev/shm
tmpfs                            328M  4.6M  323M   2% /run
efivarfs                         256K   14K  242K   6% /sys/firmware/efi/efivars
/dev/mapper/almalinux_vbox-root   27G  3.0G   24G  12% /
/dev/sda2                        960M  376M  585M  40% /boot
/dev/sda1                        599M  7.4M  592M   2% /boot/efi
tmpfs                            164M     0  164M   0% /run/user/1000

※LVMの拡張はpartedコマンドではできないので注意!