본문 바로가기

Linux

LVM (Logical Volume Manager)

LVM (Logical Volume Manager)

- 물리적인 하드디스크 파티션을 이용해서
가상의 LVM 파티션을 만들어 원하는 대로 파티션을 추가 또는 제거 하고 그 크기를 조절할 수 있다.
- 디스크 파티션을 효율적으로 관리하고 부족한 디스크 공간을 변경할 수 있다.


     /dev/sda12 ------------------------------/dev/sda13          PV(Physical Volume)
                                            |
                                            |
                                          LVM                                             VG(Volume Group)
                                            |
                                            |
      /lvdata1---------------/lvdata2--------------/ivdata3          LV(Logical Volume)


예) LVM 설정하기
#fdisk /dev/sda
-> sda10, sda11를 1GB의 용량으로 파티션 생성 -> LVM용 ID로 변경 (t) -> 8e (linux LVM) -> w (저장)
#partprobe

#pvcreate /dev/sda10
#pvcreate /dev/sda11
- PV(Physical Volume) 생성

#pvdisplay or #pvscan
- PV(Physical Volume) 확인

#vgcreate lvm /dev/sda10 /dev/sda11
- VG(Volume Group) 생성
- lvm : Volume Group명

#vgdisplay or #vgscan
- VG(Volume Group) 확인

#lvcreate -L 400M -n lvdata1 lvm
#lvcreate -L 800M -n lvdata2 lvm
- LV(Logical Volume) 생성
- -L : 용량 크기 지정
- -n : 장치 디바이스명
- lvm : Volume Group명

#lvdisplay or #lvscan
- LV(Logical Volume) 확인

#mkfs -t ext3 /dev/lvm/lvdata1
#mkfs -t ext3 /dev/lvm/lvdata2
- LVM의 파일시스템 작성을 위한 포멧

#mkdir /lvm1
#mkdir /lvm2

#mount /dev/lvm/lvdata1 /lvm1
#mount /dev/lvm/lvdata2 /lvm2

#df -h

------------------------------------------------------------------------------------------------------------------------

예) LVM 삭제시
#umount /dev/lvm/lvdata1
#umount /lvm1

#lvscan
#lvremove /dev/lvm/lvdata1

# vgscan
#vgremove lvm

#pvscan
#pvremove /dev/sda10

------------------------------------------------------------------------------------------------------------------------

예) VG(Volume Group) 확장
#fdisk /dev/sda
-> sda12를 2GB의 용량으로 파티션 생성 -> LVM용 ID로 변경 (t) -> 8e (linux LVM) -> w (저장)
#partprobe

#pvcreate /dev/sda12

#vgextend lvm /dev/sda12
- vgextend : VG(Volume Group) 확장 명령어

#vgdisplay

예) LV(Logical Group) 확장
#umount /lvm1

#lvextend -L +1000M /dev/lvm/lvdata1
- lvextend : LV(Logical Group) 확장 명령어
- -L : 크기지정
- +1000M : 용량을 추가하는 것이기 때문에 용량 앞에 "+"가 꼭 들어가야 한다.

#e2fsck -f /dev/lvm/lvdata1
- 파일시스템 체크

#resize2fs /dev/lvm/lvdata1
- 확장된 용량의 사이즈로 변경

#mount /dev/lvm/lvdata1 /lvm1

예) LV(Logical Group) 축소
#umount /lvm1

#e2fsck -f /dev/lvm/lvdata1

#resize2fs /dev/lvm/lvdata1 1G
- 변경할 용량으로 사이즈를 변경합니다.
- 1G : 변경할 용량을 넣어줍니다. 여기서는 1GB로 LV의 용량을 변경하겠습니다.

#lvresuce -L -400M /dev/lvm/lvdata1
- lvreduce : VG로 용량을 반환하는 명령어
- -400M : LV를 축소하고 남은 용량으로 lvdata1에서 반환하는 것이므로 "-"가 꼭 들어가야 한다.

#resize2fs /dev/lvm/lvdata1
- 축소된 용량의 사이즈로 변경을 해 줍니다.

#vgdisplay

#mount /dev/lvm/lvdata1 /lvm1

#df -h

------------------------------------------------------------------------------------------------------------------------

예) PV,VG,LV의 삭제
#umount /lvm1
#umount /lvm2

#lvscan
#lvremove /dev/lvm/lvdata1
#lvremove /dev/lvm/lvdata2

#vgscan
#vgremove /lvm

#pvscan
#pvremove /dev/sda10
#pvremove /dev/sda11
#pvremove /dev/sda12

#fdisk /dav/sda
- 하드디스크에서 완전삭제

#partprobe

'Linux' 카테고리의 다른 글

RPM 설치 및 삭제  (0) 2008.11.14
ntsysv - 서비스 데몬  (0) 2008.11.14
퍼미션 관리  (0) 2008.11.12
부팅순서  (0) 2008.11.12
트러블 슈팅 1 - 싱글유저모드  (0) 2008.11.11
RAID 구성하기  (0) 2008.11.10