본문 바로가기

Linux

18_Linux: 디스크 관리②

1. LVM(Logical Volume Manager)

 1.1. 파티션을 Logical Volume으로 나누어 효율적/유연하게 관리하기 위한 프로그램

※ LVM을 사용하는 이유?
 - 기존에는 File System이 직접 물리적인 Block Storage에 접근해서 작업
  · 용량이 부족한 경우, 더 큰 용량의 Storage로 모든 contents를 옮겨야 함
 - LVM은 File System이 LVM을 통해 물리적인 Block Storage에 접근해서 작업
  · 기존 방식에서는 분할이 불가능했던 Block Storage가 LVM 안에서 자유롭게 분할/추가 가능
  · 이로써 용량 조절, 장치명 변경 등이 자유로워져 파티션을 효율적/유연하게 관리할 수 있게 됨
  · 이 외에도, 크기 조정이 가능한 스토리지 풀(Pool), 디스크 스트라이핑, 미러볼륨 제공 등의 장점이 있음

 1.2. 주요 개념

  1.2.1. PV(Physical Volume)

   - 파티션을 LVM에서 사용할 수 있게 변환하는 것 (Block Storage를 PV로 초기화)

   1.2.1.1. 명령어

pvcreate DEVICE
DISK를 PV로 변환
pvremove DEVICE
PV를 파티션으로 되돌림
pvs pvscan pvdisplay  PV 확인

  1.2.2. PE(Physical Extent)

   - PV를 구성하고 있는 일정한 크기의 블록

   - LVM의 가장 개선된 버전인 LVM2에서 PE는 4MB

   - LE와 1:1 대응하며, LE와 크기가 항상 같음

  1.2.3. VG(Volume Group)

   - PV들의 집합 (말 그대로 (Physical) Volum의 Group)

   - VG에서 LV를 할당할 수 있기 때문에 BaseCamp의 역할

   1.2.3.1. 명령어

vgcreate VGNAME PVNAME1...
PV를 VG로 생성
vgremove VGNAME
VG 삭제
vgextend VGNAME PVNAME1...
VG에 PV 추가
vgreduce VGNAME PVNAME1...
VG에서 PV 제거
 vgs vgscan  vgdisplay  VG 확인 

  1.2.4. LV(Logical Volume)

   - 사용자가 최종적으로 다루게 될 Logical Storage

   1.2.4.1. 명령어

lvcreate -L 용량 -n LVNAME VGNAME VG에 LV 생성
lvremove LVNAME LV 삭제
lvextend -L 용량 DEVICE 해당 장치에 용량 추가
-l EXTENTS 해당 장치에 용량(extents 수) 추가
-l 100%VG 해당 장치에 잔여 용량의 100% 추가
lvs lvscan lvdisplay  LV 확인
※ lvreduce를 사용하지 않는 이유?
 - 데이터 디스크에 순차적으로 작성되는 것이 아니라, 무작위로 작성
 - 즉, 디스크 안의 데이터의 자리(위치)를 특정할 수 없음
 - 이런 상태에서 용량을 떼어낸다면 해당 용량에 어떤 데이터가 있을지 알 수 없기 때문

  1.2.5. LE(Logical Extent)

   - LV를 구성하고 있는 일정한 크기의 블록

   - PE와 1:1 대응하며, PE와 크기가 항상 같음

 1.3. LVM 사용

  1.3.1. 5G 디스크를 LVM으로 파티션 생성

5G 디스크 확인
5G 파티셔닝
파티션 타입(system id)을 Linux LVM으로 변경
확인 및 저장

  1.3.2. PV 생성 및 확인

PV 생성 및 확인

  1.3.3. 기존 prac VG에 PV 추가 및 확인

VG 추가 및 확인

  1.3.4. /home과 /에 2G씩 추가 및 확인

LV 추가 및 확인
df -Th 에서는 미적용
xfs 파일 시스템 → xfs_growfs 사용
df -Th 반영 확인

 

 

 

[실습 예제 보러 가기]

'Linux' 카테고리의 다른 글

21_Linux: 패키지 관리①  (0) 2022.03.28
19_Linux: 디스크 관리③  (0) 2022.03.25
17_Linux: 디스크 관리①  (0) 2022.03.24
16_Linux: 사용자 계정 및 그룹 관리②  (0) 2022.03.22
15_Linux: 사용자 계정 및 그룹 관리①  (0) 2022.03.22