본문 바로가기
INFRA/LINUX

[LINUX]LVM에 대하여

by 근현대사 2023. 6. 26.
반응형

LVM은 Logical Volume Manager의 약어로, 리눅스 시스템에서 디스크 관리를 용이하게 하는 기술입니다. LVM을 사용하면 여러 개의 물리적 디스크를 하나의 가상 디스크로 결합하고, 그 위에 논리적인 볼륨을 생성하여 파일 시스템을 구성할 수 있습니다.

LVM의 핵심 개념은 다음과 같습니다:

  1. 물리적 볼륨(Physical Volume, PV): 물리적 디스크를 LVM 등록한 것을 말합니다. LVM 이러한 물리적 볼륨들을 하나로 그룹화합니다.
  2. 볼륨 그룹(Volume Group, VG): 하나 이상의 물리적 볼륨을 묶어서 생성한 가상의 디스크입니다. 볼륨 그룹은 논리적 볼륨을 생성하는 사용됩니다.
  3. 논리적 볼륨(Logical Volume, LV): 볼륨 그룹 내에서 생성된 가상의 디스크입니다. 논리적 볼륨은 파일 시스템을 생성하고 데이터를 저장하는 사용됩니다.

LVM을 사용하면 디스크 공간을 동적으로 관리할 수 있습니다. 예를 들어, 물리적 디스크에 새로운 디스크를 추가하고 이를 물리적 볼륨으로 등록한 다음, 해당 볼륨 그룹에 새로운 논리적 볼륨을 생성하여 파일 시스템을 확장할 수 있습니다. 또한, 논리적 볼륨의 크기를 조정하거나 볼륨 그룹에서 물리적 디스크를 제거할 수도 있습니다.

LVM은 데이터의 유연한 관리를 가능하게 해주어 시스템 관리자들에게 유용합니다. 예를 들어, 스냅샷(snapshot)이라는 기능을 사용하여 파일 시스템의 상태를 특정 시점으로 복원하거나, 논리적 볼륨을 다른 시스템으로 이동시킬 수도 있습니다.

요약하자면, LVM 리눅스 시스템에서 디스크 관리를 용이하게 하는 유연한 기술로, 물리적 디스크를 볼륨 그룹과 논리적 볼륨으로 관리할 있습니다. 이를 통해 디스크 공간의 유연한 할당과 관리, 그리고 데이터의 안전한 보관 등을 가능하게 합니다.

 

LVM 생성 방법

 

물리적 볼륨 생성:

새로운 디스크를 물리적 볼륨로 등록합니다. 이를 위해 pvcreate 명령을 사용합니다. 예를 들어, /dev/sdb1을 물리적 볼륨로 등록하려면 다음과 같이 실행합니다

pvcreate /dev/sdb1

볼륨 그룹 생성:

물리적 볼륨을 묶어서 볼륨 그룹을 생성합니다. vgcreate 명령을 사용하여 볼륨 그룹을 생성합니다. 예를 들어, myvg라는 이름의 볼륨 그룹을 생성하려면 다음과 같이 실행합니다

◼︎ vgcreate myvg /dev/sdb1

논리적 볼륨 생성:

볼륨 그룹 내에서 논리적 볼륨을 생성합니다. lvcreate 명령을 사용하여 논리적 볼륨을 생성합니다. 예를 들어, mylv라는 이름의 논리적 볼륨을 크기 10GB로 생성하려면 다음과 같이 실행합니다

◼︎ lvcreate -L 10G -n mylv myvg

파일 시스템 생성:

논리적 볼륨에 파일 시스템을 생성합니다. 파일 시스템은 논리적 볼륨을 사용하여 데이터를 저장하는 데 사용됩니다. mkfs 명령을 사용하여 파일 시스템을 생성할 수 있습니다. 예를 들어, ext4 파일 시스템을 생성하려면 다음과 같이 실행합니다

◼︎ mkfs -t ext4 /dev/myvg/mylv

마운트:

생성한 파일 시스템을 마운트하여 사용할 수 있습니다. 마운트할 디렉토리를 만든 후 mount 명령을 사용하여 마운트합니다. 예를 들어, /mnt/mylv 디렉토리에 마운트하려면 다음과 같이 실행합니다

◼︎ mkdir /mnt/mylv

◼︎ mount /dev/myvg/mylv /mnt/mylv

 

LV용량 추가

1. 물리적 디스크를 LVM에 추가

pvcreate 명령을 사용하여 새로운 물리적 디스크를 물리적 볼륨로 등록합니다. 예를 들어, /dev/sdc1을 추가하려면 다음과 같이 실행합니다
pvcreate /dev/sdc1

2. 기존의 볼륨 그룹에 추가

vgextend 명령을 사용하여 새로운 물리적 볼륨을 기존의 볼륨 그룹에 추가합니다. 예를 들어, myvg라는 볼륨 그룹에 /dev/sdc1을 추가하려면 다음과 같이 실행합니다

vgextend myvg /dev/sdc1

3. 논리적 볼륨에 용량을 추가

lvextend 명령을 사용하여 논리적 볼륨에 추가 용량을 할당합니다. 예를 들어, myvg 볼륨 그룹의 mylv 논리적 볼륨에 10GB의 용량을 추가하려면 다음과 같이 실행합니다:

lvextend -L +10G /dev/myvg/mylv

+ 기호를 사용하여 추가할 용량을 지정합니다. 위의 예에서는 10GB를 추가하였습니다.

 

4. 파일 시스템을 확장합니다

파일 시스템 자체도 추가한 용량에 맞게 확장해야 합니다. 파일 시스템에 따라 다른 도구와 명령이 사용될 수 있습니다. 예를 들어, XFS 파일 시스템을 확장하려면 xfs_growfs 명령을 사용합니다

xfs_growfs /dev/myvg/mylv

5. 확장된 용량을 확인

df -h 명령을 사용하여 논리적 볼륨의 확장된 용량을 확인합니다. 파일 시스템의 용량이 성공적으로 확장되었는지 확인할 있습니다.

반응형

'INFRA > LINUX' 카테고리의 다른 글

RAID에 대하여  (0) 2023.06.27
리눅스 명령어3  (0) 2023.06.26
Docker에 대해서  (0) 2023.06.23
리눅스 명령어2  (0) 2023.06.22
inode에 대하여  (0) 2023.06.21