////
Search

LVM(Logical Volume Manager)

리눅스에서 디스크 파티션과 스토리지를 관리하는 시스템 : 기존의 정적인 파티션 방식보다 유연하고 확장성 있게 스토리지를 사용할 수 있게끔 해줌. 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
복사