VM을 사용하다보면 초기에 생성했던 디스크 크기가 부족하여 자주 확장이 필요해진다. 이러한 경우 유용한 Volume Group으로 구성된 파일 시스템의 용량을 확장하는 방법을 정리한다.
요약
- 디스크 크기 확장
- 확장된 크기에 대한 파티션 추가
- 추가한 파티션에 대한 PV (물리 볼륨) 생성
- PV를 LV (논리 볼륨)에 추가
- LV 크기 확장
- 파일 시스템 확장
- 확인
디스크 크기 확장
VMware 등의 도구에서 VM에 할당된 disk 크기를 증가 시킨다.
파티션 추가
디스크 구성 및 파티션 확인
# fdisk -l
Disk /dev/sda: 200 GiB, 214748364800 bytes, 419430400 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 4D872925-4BF5-47C1-AC8D-793FBAD0E09B
Device Start End Sectors Size Type
/dev/sda1 2048 1230847 1228800 600M EFI System
/dev/sda2 1230848 3327999 2097152 1G Linux filesystem
/dev/sda3 3328000 167770111 164442112 78.4G Linux LVM
/dev/sda4 167770112 335544286 167774175 80G Linux filesystem
파티션 추가
fdisk /dev/sda
Command (m for help): n
Command action
e extended
p primary partition (1-5)
p
Partition number (1-5): 5
First cylinder (3917-7832, default 3917):
Using default value 3917
Last cylinder, +cylinders or +size{K,M,G} (3917-7832, default 7832):
Using default value 7832
Command (m for help): w
디스크 구성 및 파티션 확인
# fdisk -l
Disk /dev/sda: 200 GiB, 214748364800 bytes, 419430400 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 4D872925-4BF5-47C1-AC8D-793FBAD0E09B
Device Start End Sectors Size Type
/dev/sda1 2048 1230847 1228800 600M EFI System
/dev/sda2 1230848 3327999 2097152 1G Linux filesystem
/dev/sda3 3328000 167770111 164442112 78.4G Linux LVM
/dev/sda4 167770112 335544286 167774175 80G Linux filesystem
/dev/sda5 335544320 419430366 83886047 40G Linux filesystem
PV 추가
추가한 파티션 (sda5)을 PV로 생성한다.
# pvcreate /dev/sda5
LV에 PV 추가
생성한 PV를 LV에 추가한다.
LV 이름 확인
# vgdisplay
--- Volume group ---
VG Name cl
System ID
Format lvm2
Metadata Areas 2
Metadata Sequence No 9
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 <158.41 GiB
PE Size 4.00 MiB
Total PE 40552
Alloc PE / Size 40552 / <158.41 GiB
Free PE / Size 0 / 0
VG UUID S8Tldj-EF0t-Z2uz-B47H-5k5P-xAa0-UyJE8e
PV 추가
# vgextend cl /dev/sda5
LV 크기 확장
root volume의 크기를 확장하는 예시이다. 추가된 크기 모두를 root에 할당한다.
LV 확장
# lvextend -l +100%FREE /dev/cl/root
파일시스템 확장
확장된 LV에 대해 파일시스템을 구성한다.
파일시스템 확장
xfs_growfs /dev/cl/root
확장된 크기 확인
# df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 3.8G 0 3.8G 0% /dev
tmpfs 3.8G 0 3.8G 0% /dev/shm
tmpfs 3.8G 83M 3.8G 3% /run
tmpfs 3.8G 0 3.8G 0% /sys/fs/cgroup
/dev/mapper/cl-root 170G 124G 47G 73% /
/dev/mapper/cl-home 25G 224M 25G 1% /home
/dev/sda2 976M 255M 655M 28% /boot
/dev/sda1 599M 7.3M 592M 2% /boot/efi