[Linux Ubuntu] VirtualBox VM Dynamic Disk Extention : VM 동적 디스크 확장하기
Dynamic Disk Extention
CentOS와 Ubuntu와 조금은 다르지만, 일단 이 카테고리는 Ubuntu라서 UbuntuOS기준으로 진행하고자 한다. 굉장히 헷갈리지만, 자주 쓰이는 기능이므로 정리를 하고자 한다.
상황은 이렇다.
- 처음 Ubuntu VM 생성 시, 10GB를 할당했는데 생각보다 너무 낮았다.
- 기존 데이터는 살려두고 추가적으로 용량을 붙여야하는 작업이 필요하다.
아래의 글이 캡쳐사진으로 길 수 있지만, "그림 1-2"을 참고하면 이해하기에 쉬울 것이며 아래의 순차적인 과정으로 진행하여 정리할 예정이다.
- 1) Partition 추가
- 2) Physical Volume 추가 인식
- 3) Volume Group 추가 인식
- 4) Logical Volume 추가 인식
- 5) resize2fs 확장 처리
- 환경 : Ubuntu 20.04.1
1. 논리적 볼륨 vs 물리적 볼륨에 있는 명령어 간단 맛보기.
아래에서 논리적 볼륨, 물리적 볼륨 등을 관리하는 명령어들이 등장하는데 아래의 3가지 정도가 되겠다. 디스크를 관리하는 구조인 그림1-2에서 각 영역을 담당하는 명령어다라고 이해하고만 넘어가면 될 듯 하다.
- 논리적 볼륨을 관리하는 명령어는 "lv~" : Logical Volume.
- 물리적 볼륨을 관리하는 명령어는 "pv~" : Physical Volume.
- 볼륨 그룹을 관리하는 명령어는 "vg~" : Volume Group.
2. VirtualBox 동적 할당 디스크 늘리기
2.1. 우선 가장 먼저 해야 할 일은, OS에서 인식되는 물리적 디스크를 늘려주는 것인데, 이것은 VirtualBox에서 하는 작업이므로 아래의 그림 2-1를 참고하면 되겠다. 옵션에서 "미디어"에 들어간다.
2.2. 그림 2-2을 참고하여 원하는 크기만큼 늘려준다.
3. Partiotion 추가
3.1. 아래의 그림을 보면 15GB를 할당했지만, 기존의 10GB만 부여되어 있음을 확인할 수 있다.
3.2. 이 글에서는 기존 파티션의 데이터는 그대로 두고 확장만 할 것이라서 파티션을 지우는 작업은 없다. 파티션을 새롭게 만들 것이다. 위의 그림3-1과 비교하면 /dev/sda4가 늘어 났음을 볼 수 있다.
- "# fdisk /dev/sda"을 통해서 파티션 관리에 들어간다.
- "n" 옵션을 넣어서, 원하는 사이즈 주소를 넣으면 되는데 엔터를 두번 입력하면 처음과 끝 알아서 넣어준다.
- 다시 "p" 옵션을 넣으면, /dev/sda4가 늘어났음을 볼 수 있다.
- 이렇게 설정이 끝나면 "w" 옵션을 주고 변경된 구조를 저장하고 나가기한다.
4. Physical Volume 추가 인식
4.1. 아래의 그림을 참고해서 설명을 하면
- "# pvscan"을 통해서 현재 물리 볼륨을 스캔한다. 인식을 못했기 때문에 9GB만 있는 모습이다.
- "# pvcreate /dev/sda4" pvcreate를 통해 물리 볼륨을 추가할 것인데, 아까 파티션에서 생성한 경로를 넣는다.
- "# pvscan"을 통해서 추가된 물리 볼륨을 확인한다.
5. Volume Group 추가 인식
5.1. 4번에서 생성한 물리볼륨을 현재 OS의 Group 볼륨에 추가를 해준다.
- "# vgdisplay {volume group name}"을 입력하면 내용들이 보이는데 "VG Size"을 보면 9GB로 되어있다.
- "# vgextend {volume group name} {추가한 파티션}"을 실행하여 그룹 볼륨에 추가한다.
- "# vgdisplay {volume group name}"을 입력해서 VG Size를 확인하면 늘어난 사이즈인 14GB로 되어있다.
6. Logical Volume 추가 인식
6.1. 위 5번에서 물리적 볼륨을 인식이 되었다면, 논리적 볼륨에도 인식시켜야 한다.
- "# lvsvan"을 하면, 9GB만 인식됨을 볼 수 있다.
- "# lvextend -l +100%FREE -n /dev/ubuntu-vg/ubuntu-lv"로 논리적 볼륨을 추가 인식한다.
- 다시 "# lvsvan"을 하면 추가적인 공간도 인식되었음을 볼 수 있다.
7. resize2fs 확장 처리
7.1. 모두 다 끝났고, 마지막으로 적용 처리만 하면 된다.
- "# resize2fs {vg에 할당된 lv 경로}" 명령어를 실행하고
- "# df -h"로 증가된 용량을 확인할 수 있다.
참고 : https://moonoostar.tistory.com/84