Linux

LVM(Logical Volume Manager)란?

황동리 2023. 12. 18. 21:54
반응형

오늘은 LVM에 대해 알아보겠습니다.

등장배경

=> 기존에 사용하던 Storage가 Full이 될 경우 어떻게 해결할 것 인가?
Mount의 문제로 용량 확장이 불가능, 이 때 LVM을 이용하면 사용자가 File System을 이용해서 직접 디스크를 제어하지 않고 LVM이라는 논리적인 제어 시스템을 통해서 디스크를 관리


  • PV(Physical Volume): 물리적인 디스크 또는 파티션을 LVM으로 사용하겠다 선언
    	pvcreate <파티션명>
    	pvscan: 가장 간단하게 pv 상태 확인
    	pvs: 조금 더 자세하게 pv 상태 확인
    	pvdiplay: 아주 자세하게 pv 상태 확인
    	pvremove <파티션명>
  • VG(Volume Group): 물리적인 디스크 또는 파티션을 하나 또는 그 이상의 그룹으로 관리
    vgcreate <생성할 vg명> <파티션명>
        -s: extend의 사이즈 조절 가능(4MB)
    vgscan: 가장 간단하게 vg 상태 확인
    vgs: 조금 더 자세하게 vg 상태 확인
    vgdisplay: 아주 자세하게 vg 상태 확인
    vgremove <vg명>: vg 삭제
    vgreduce <vg명 | 파티션명>
    vgextent <vg명 | 파티션명>
  • LV(Logical Volume): 파티션 처럼 VG를 논리적으로 분할
    lvcreate -L <용량> -n <생성할 lv명> <vg명> 
    lvcreate -l <extend의 개수> -n <생성할 lv명> <vg명> 
    lvscan
    lvs
    lvsdisplay
    lvremove </dev/vg명/lv명>
    lvextend -L +용량(기존용량에 추가) /dev명/vg명/lv명
    lvreduce -L -용량

LVM을 사용 할 때 마운트 과정

: 파티션 -> pv -> vg -> lv -> 파일시스템 -> Mount


extend로 용량 변경 후 적용 명령어

ext방식은 lvm 용량을 변경을 하였을 때 resize2fs /dev/babo/babo1
xfs방식은 lvm 용량을 변경 하였을 때 xfs_growfs /dev/babo/babo2


그런데, 리눅스에서는 명령어로 입력한 것은 재부팅하면 저장이 안됩니다.
따라서 마운트를 모두 한 다음 저장하고 싶다면 아래와 같이 하면 됩니다.

vi /etc/fstab

#장치명				# 마운트포인트	#파일시스템 방식					#덤프 할 것인지
/dev/ksh/ksh1           /lv1            ext3            defaults        0 0

ex) 1. 연습문제

sdb를 이용해서

------파일시스템vg명lv명sizemount point

/dev/sdb1 ext3 본인이니셜 본인이니셜1 3G /lv1
- ext4 본인이니셜 본인이니셜2 3G /lv2
- xfs 본인이니셜 본인이니셜3 나머지 /lv3

 

 

df -Th로 확인 후, sdc를 추가해서 모든 파일시스템의 용량을 1G씩 추가 후 df -Th로 확인

추가 하기전 결과



코드

fdisk /dev/sdb
	: n
    : p
    : 1
    : 2048
    : default
pvcreate /dev/sdb1
vgcreate ksh /dev/sdb1
lvcreate -L +3G -n ksh1 ksh
lvcreate -L +3G -n ksh2 ksh
vgdisplay 후 ksh의 Free PE 확인 후
lvcreate -L +<Free PE> -n ksh3 ksh

1G 추가 후 결과

코드

fdisk /dev/sdc
	: n
    : p
    : 1
    : 2048
    : default
pvcreate /dev/sdc1
vgcreate ksh /dev/sdc1
lvextend -L +1G /dev/ksh/ksh1
lvextend -L +1G /dev/ksh/ksh2
lvextend -L +1G /dev/ksh/ksh3
resize2fs /dev/ksh/ksh1
resize2fs /dev/ksh/ksh2
xfs_growfs /dev/ksh/ksh3
반응형

'Linux' 카테고리의 다른 글

Quota란?  (1) 2024.01.23
[Ubuntu 20.04] DNS Master - Slave 이중화 구성  (0) 2024.01.19
Local Repository 만들기  (0) 2024.01.12
리눅스 계정 설정파일  (1) 2023.12.21
Linux 디스크 관리  (1) 2023.12.17