리눅스에서 디스크 파티션과 스토리지를 관리하는 시스템 : 기존의 정적인 파티션 방식보다 유연하고 확장성 있게 스토리지를 사용할 수 있게끔 해줌. LVM을 이용해 디스크 공간을 논리적 볼륨(Logical Volume)으로 나누고, 필요에 따라 크기를 조정하거나 디스크를 추가하는 등의 작업을 보다 쉽게 수행 가능
LVM이 논리 볼륨을 이용해 필요에 따라 크기를 조정할 수 있다는게 무슨 뜻일까?
디스크 파티션의 크기를 유연하게 변경할 수 있다!
일반적인 디스크 파티션에서는 파티션 크기를 고정해두면 쉽게 변경하기 어렵지만, LVM에서는 논리 볼륨의 크기를 동적으로 늘리거나 줄일 수 있어서, 디스크 사용량에 따라 효율적으로 관리 가능
LVM의 주요 개념 & 구조
1. Physical Volume (PV)
•
실제 물리적인 하드디스크 또는 디스크 파티션
2. Volume Group (VG)
•
하나 이상의 Physical Volume을 묶어 사용하는 논리적인 공간
•
여러 개의 PV를 결합하여 하나의 VG로 만들면, VG 내에서 자유롭게 논리 볼륨을 생성하고 관리 가능
3. Logical Volume (LV)
•
사용자가 실제로 데이터를 저장하는 논리 파티션
•
일반 파티션과 비슷하게 파일 시스템을 생성하고 데이터를 저장할 수 있으며, 필요에 따라 LV의 크기를 동적으로 조정 가능
4. Extent
•
LVM에서 가장 작은 할당 단위
•
PV & LV은 여러 개의 Extent로 나뉘어 있음
◦
Extent를 통해 디스크 공간을 할당하고 관리하므로, 더 효율적이고 유연하게 볼륨을 관리
LVM 사용 예시
1. PV 생성
pvcreate /dev/sdb
pvcreate /dev/sdc
Shell
복사
2. VG 생성
vgcreate my_volume_group /dev/sdb /dev/sdc
Shell
복사
3. LV 생성
lvcreate -L 10G -n my_logical_volume my_volume_group
Shell
복사
4. 파일 시스템 생성
논리 볼륨에 파일 시스템을 생성한 후, 마운트하여 사용 가능
mkfs.ext4 /dev/my_volume_group/my_logical_volume
mount /dev/my_volume_group/my_logical_volume /mnt/mydata
Shell
복사
5. 크기 조정
볼륨의 크기를 조정할 때는 lvresize 명령어를 사용하며, 필요에 따라 VG에 새로운 PV를 추가하여 확장 가능
lvextend -L +5G /dev/my_volume_group/my_logical_volume
resize2fs /dev/my_volume_group/my_logical_volume
Shell
복사
