Linux

LVM 생성

Sungtaek, YOO 2020. 11. 6. 00:11
반응형

1. LVM 생성 순서

 -. LVM은 PV, VG, LV 순으로 만들어야하며, 트리형식으로 생각하면 된다.

 

PV를 만들면 하위에 Volume Group를 여러 개, 생성 가능하고, 각 각의 VG에 LV를 생성할 수 있다.

 

 

2. 생성하기

lsblk 명령어를 통해 LVM으로 만들 디스크를 선택한다.

pvcreate를 통해 Attachment Disk 이름을 입력해준다.(해당 디스크를 PV로 설정하는 것.)

   >> pvcreate /dev/xvdf

 

 

앞에서 xvdfPV로 설정하였으므로, xvdfVolumeGroup를 설정해준다.

아래에서 vg01은 임의로 작성한 이름이며, 사용자 목적에 맞게 네이밍한다.

  >> vgcreate vg01 /dev/xvdf

참고) 만약xvdf2개의 VG를 만들고 싶다면,

  >> vgcreate vg02 /dev/xvdf와 같이 작성.

(동일한 이름은 사용 불가함. 같은 이름을 사용하여도 Overwrite 바로 안되기때문에 걱정할 것 없음.)

 

 

lvcreate 명령어를 통해 LV를 생성 가능하며, -L 명령어는 정확한 용량을 입력해줘야함.

(-l 명령어는 Percent 단위로 사용 // -l과 -L은 차이가 있음)

(-n 명령어는 네이밍을 주기 위함. vg01lv_data라는 lv를 생성.)

 

 

LV까지 생성한 후에는 LV DISK를 필요한 타입 설정 후 초기화 시켜줘야 함.

위에서는 ext4 타입으로 초기화하였으며, disk 위치는 /dev/mapper/[VG이름-LV이름]으로 되어있음.

 

 

 

 

3. FSTAB 추가

전에도 작성했지만, fstab에 추가해줘야 재부팅이 되었을 때, 디스크가 마운팅된 상태로 시스템이 부팅됨.

blkid명령어를 통해 UUID를 확인할 수 있으며, fstab에 추가하여 Mount시켜야함.

‘/dev/mapper/vg01-lv_data=UUID(으브브브브)‘라고 써진 부분에서 UUID를 복사하여

 > ‘/etc/fstab에 추가 필요

 

 

/etc/fstab

UUID 2개 중 위는, 기본 root볼륨의 UUID이고, 아래가 추가한 UUID.

UUID / Mounting Point / Type  순으로 작성하면 되고,

defaults 0 0을 보통 입력하며 해당 옵션은 이전 글 참고.

 

Fstab 입력 후 ‘mount –a’ 혹은 ‘mount /dev/mapper/vg01-lv_data [Mounting Point]를 통해 마운트를 완료

 

4. LV 추가하기

초기에 ‘vg01-lv_data’를 만들었으며, 처음과 동일한 방식으로 lv_data2를 만들었음.

여기서 참고할 사항은 1개의 PV 안에 위치한 2개의 LV 이지만, 서로 다른 타입의 디스크를 사용해도 됨.(ext4, xfs)

  --- 특징

xfs의 경우, 디스크 크기 증가는 가능하지만, 감소는 불가.

ext4의 경우, 디스크 크기 증가 및 감소 모두 가능.

 

 

5. LV 용량 증가시키기

초기에 설정한 LV 용량이 부족하다면 명령어를 통해 용량 증가 가능.(초기화 아님)

처음 생성한 LV 용량이 부족하여 용량 증가를 하고자 한다면 아래와 같은 명령어로 가능.

  >> lvextend –r –L +40G /dev/vg/lv_data (-r 명령어는 resizefs, -L 명령어는 정확한 디스크 size)

 

  --- 참고

-L 명령어는 정확한 사이즈 입력 필요.

 

 

6. 무조건 조심해야할 주의사항

 위의 설정은 fstab을 수정해주는데, 설정이 잘못된 경우 부팅이 되지 않을 수 있으니, 테스트가 아니고서야 무조건 조심해야할 필요가 있음.

 혹시나 /etc/fstab을 잘못 설정하여 부팅이 되지 않는 경우, 포멧을 생각하지 말고

문제가 발생한 루트 디스크를 다른 장비로 마운트시켜 /'마운팅포인트'/etc/fstab 의 경로로 이동하여 fstab에서 잘못된 설정을 수정하여 다시 마운트 시키면 해결됨!

반응형