본문 바로가기
IT/리눅스

LVM 파일시스템 용량 증설

by Itlee 2024. 5. 30.
반응형

리눅스 시스템에서 디스크를 추가하고, 논리 볼륨(Logical Volume, LV)을 확장하는 과정입니다. 각각의 단계는 다음과 같습니다

목차

  1. 디스크 인식
  2. 추가된 디스크 확인
  3. 추가된 디스크에서 PV 생성
  4. 추가할 LV 확인
  5. VG에 추가
  6. 용량을 확장할 디바이스 경로 확인
  7. 용량 증설
  8. 파일 시스템 타입 확인
  9. 파일 시스템 크기 조정

1. 디스크 인식

새 디스크를 시스템에서 인식시키려면 아래 명령어를 사용합니다. 디스크가 자동으로 인식되지 않는 경우, 수동으로 인식시킬 수 있습니다:

 echo "- - -" > /sys/class/scsi_host/host0/scan

디스크가 여전히 인식되지 않으면 hostX 값을 0에서 5까지 변경하며 시도합니다:

 echo "- - -" > /sys/class/scsi_host/host1/scan
 echo "- - -" > /sys/class/scsi_host/host2/scan
 echo "- - -" > /sys/class/scsi_host/host3/scan
 echo "- - -" > /sys/class/scsi_host/host4/scan
 echo "- - -" > /sys/class/scsi_host/host5/scan

 

2. 추가된 디스크 확인

다음 명령어를 통해 추가된 디스크를 확인합니다.

 fdisk -l | grep sd

출력 예시는 다음과 같습니다:

Disk /dev/sda: 21.5 GB, 21474836480 bytes, 41943040 sectors
/dev/sda1   *        2048     2099199     1048576   83  Linux
/dev/sda2         2099200    41943039    19921920   8e  Linux LVM
Disk /dev/sdb: 10.7 GB, 10737418240 bytes, 20971520 sectors
Disk /dev/sdc: 5368 MB, 5368709120 bytes, 10485760 sectors

3. 추가된 디스크에서 PV 생성

새로 추가된 디스크에서 물리 볼륨(Physical Volume, PV)을 생성합니다.

 pvcreate /dev/sdc

출력 예시

Physical volume "/dev/sdc" successfully created.

4. 추가할 LV 확인

현재 시스템의 논리 볼륨을 확인합니다

lsblk
NAME             MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda                8:0    0   20G  0 disk 
├─sda1             8:1    0    1G  0 part /boot
└─sda2             8:2    0   19G  0 part 
  ├─centos-root  253:0    0   17G  0 lvm  /
  └─centos-swap  253:1    0    2G  0 lvm  [SWAP]
sdb                8:16   0   10G  0 disk 
├─vgname-lvname  253:2    0    3G  0 lvm  /lvname
├─vgname-lvname2 253:3    0    3G  0 lvm  /lvname2
└─vgname-lvname3 253:4    0    3G  0 lvm  /lvname3
sdc                8:32   0    5G  0 disk 
sr0               11:0    1 1024M  0 rom

5. VG에 추가

새로 생성한 PV를 볼륨 그룹(VG)에 추가합니다.

vgextend vgname /dev/sdc

출력 예시

Volume group "vgname" successfully extended

 

6. 용량을 확장할 디바이스 경로 확인

현재 활성화된 논리 볼륨을 확인합니다.

lvscan

출력 예시

ACTIVE            '/dev/vgname/lvname' [3.00 GiB] inherit
ACTIVE            '/dev/vgname/lvname2' [3.00 GiB] inherit
ACTIVE            '/dev/vgname/lvname3' [3.00 GiB] inherit
ACTIVE            '/dev/centos/root' [<17.00 GiB] inherit
ACTIVE            '/dev/centos/swap' [2.00 GiB] inherit

 

7. 용량 증설

논리 볼륨의 용량을 확장합니다.

 lvextend -l +100%FREE -n /dev/vgname/lvname3

출력 예시

Size of logical volume vgname/lvname3 changed from 3.00 GiB (768 extents) to 8.99 GiB (2302 extents).
Logical volume vgname/lvname3 successfully resized.

8. 파일 시스템 타입 확인

현재 파일 시스템 타입을 확인합니다.

 df -Th

출력 예시

Filesystem                 Type      Size  Used Avail Use% Mounted on
devtmpfs                   devtmpfs  894M     0  894M   0% /dev
tmpfs                      tmpfs     910M     0  910M   0% /dev/shm
tmpfs                      tmpfs     910M   10M  900M   2% /run
tmpfs                      tmpfs     910M     0  910M   0% /sys/fs/cgroup
/dev/mapper/centos-root    xfs        17G  5.3G   12G  31% /
/dev/sda1                  xfs      1014M  233M  782M  23% /boot
/dev/mapper/vgname-lvname3 ext4      2.9G  9.0M  2.8G   1% /lvname3
/dev/mapper/vgname-lvname2 ext4      2.9G  9.0M  2.8G   1% /lvname2
/dev/mapper/vgname-lvname  ext4      2.9G  9.0M  2.8G   1% /lvname
tmpfs                      tmpfs     182M     0  182M   0% /run/user/0

9. 파일 시스템 크기 조정

확장한 논리 볼륨의 파일 시스템을 확장합니다. lvname3이 ext4 파일 시스템을 사용하므로 다음 명령어를 실행합니다:

 resize2fs /dev/vgname/lvname3

출력 예시

resize2fs 1.42.9 (28-Dec-2013)
Filesystem at /dev/vgname/lvname3 is mounted on /lvname3; on-line resizing required
old_desc_blocks = 1, new_desc_blocks = 2
The filesystem on /dev/vgname/lvname3 is now 2357248 blocks long.

파일 시스템이 xfs인 경우에는 다음 명령어를 사용합니다:

xfs_growfs /dev/vgname/lvname3

이로써 새로운 디스크를 추가하고 논리 볼륨의 크기를 확장하는 작업이 완료되었습니다.

반응형