본문 바로가기

IT/Linux

리눅스 디스크/파티션 용량 증설 (확장/할당/배정) 방법

반응형

VM 혹은 신규 디스크 추가로 인해 특정 디렉토리에 용량 증설이 필요한 경우가 있다.

윈도우 같은경우 나눠둔 파티션에 추가 디스크에 대한 용량 배정이 불가하나, 리눅스의 경우 파티션 용량 증설시 할당 및 배정을 간단히 수행 할 수 있다.

아래 진행 과정은 CentOS 7 버전을 기준으로 작성 하였으나, 대다수 리눅스는 동일하게 설정 가능하다.

 

※ VM 마다 디스크 용량증설 방법은 다양하며, Nutanix 기준으로 디스크 용량을 증성 후 추가 배정 해둔 상태에서 작성하였으므로, 디스크를 추가 설치하였거나 VM에 디스크 용량을 확장하는 방법은 별도로 검색 후 진행 바랍니다.

 


* 전제 조건으로 기본 300기가의 볼륨으로 생성된 VM에 300GB를 추가하여 총 600GB의 용량을 배정 해둔 상태이다.

> 진행 과정은 아래 와 같은 순서로 진행 한다.
( 절차가 많아보이나 확인 과정을 제외 하면 실질적인 수행은 몇가지 없다.)

1. 현재 용량 확인
2. 각 파티션별로 배정된 용량확인 
3. 물리 파티션 용량 할당 툴인 growpart 설치
4. 물리 파티션 용량 추가
5. 물리 공간 논리 볼륨 그룹 정보 확인 및 PE 배정
6. 변경된 볼륨 그룹 정보 확인
7. 논리 파티션 용량 확장 및 확인

 

 

1. 현재 용량 확인

 - 아래 명령어 수행시 현재 마운트된 공간에 대한 [ Filesystem (논리파티션) / Size(할당량) / Used(사용량) / Avail (여유공간) / Use% (사용률) / Mount on (마운트경로명) ] 을 확인 할 수 있다.

#df -h

※ /home 그룹에 대해 200기가 배정중 193기가를 사용 중이므로 추가 용량을 할당 해 보겠다.

 

 

2. 파티션별 배정 용량 확인

※참고 : lsblk 명령어는 디스크 구조를 트리형태로 확인 하는 명령어이다.

#lsblk

lsblk 명령어 수행시 해당 디스크는 sda 디스크 하나에 여러 논리 파티션으로 분리되어 있는걸 확인 할 수 있으니, 해당 명령어를 통해 배정 할 공간에 대해 확인 이 필요한 경우 사용한다.

현재 확장하고자 하는 /home 디렉토리는 용량은 sda2의 centos-home 공간으로 배정된 것을 확인 할 수 있다.

* SDA의 용량은 현재 600G 현재 할당 배정된 나머지 공간은 300G ( sd1, sd2 등 ) 배정되지 않은 공간이 300G인것을 알 수있다. ( 물론 먼저 VM의 용량 증설을 해둔 상태이므로 위와 같이 나온다. ) 

 

 

3. 물리 파티션 용량 할당 툴인 growpart 설치

리눅스 용량 할당을 간편하게 도와주는 growpart 를 설치하여 진행해 보겠다. 해당 growpart는 기본 설치된 도구가 아니므로, yum을 통해 먼저 설치 가 필요하다.

# yum install cloud-utils-growpart 

※ yum 인스톨 시 오류가 나며 설치가 안되는 경우가 있는데, yum은 외부 인터넷이 정상적으로 되야 데이터를 다운받아올 수 있으니 참고 바란다. 네트워크가 되는데 안되는 경우가 있는데 이는 DNS 설정이 안되어 발생될 수 있으니 아래 내용 참고하여, DNS 설정 후 시도 하기 바랍니다.

2021.08.13 - [IT/Linux] - 리눅스 CentOS DNS 설정법

 

리눅스 CentOS DNS 설정법

리눅스 CentOS DNS 설정 방법에 대해 알아보자. Linux DNS 설정법은 대다수 동일하여, 동일한 방식으로 설정 가능 한 환경이 많다. 우선 DNS란, Domain Name Service의 약자로 흔히 말하는 영문 네임(www.tistory.

kingsong.tistory.com

 

 

4. 물리 파티션 용량 추가

SDA 의 잔여 용량을 LVM에 사용가능한 용량을 할당하기 위해 아까 설치한 디스크 파티션 확장 도구 growpart 를 통해 파티션에 배정 한다.  

* 현재 확장하고자하는 /home경로 용량은 SDA->SDA2->centos-home 절차상 순서대로 용량을 전달해준다.
#growpart /dev/sda 2

#lsblk

* 추가한 300GB 용량이 sda2에 정상적으로 배정 된 것을 알 수 있다. 

 

 

5. 물리 공간 논리 볼륨 그룹 정보 확인 및 PE 배정

이제 물리 공간에 배정된 용량을 사용 가능한 볼륨으로 변경 해보겠다. 

#vgdisplay

* vgdisplay 란 LVM에 대한 정보를 표기해주는데, LVM이란 (Logical Volume Manager의 약자로 ) 실제 리눅스의 최대 강점인 여러 물리 디스크를 마치 하나의 디스크공간처럼 사용 가능하게 하는 훌륭한 도구이다.  처음에 이야기한 내용을 참고하면, 윈도우의 경우 디스크를 추가한다고하여 그 공간을 특정 드라이버에 할당이 불가하나, 리눅스는 신규 디스크를 추가하여도 LVM을 통해 마치 원래 있던 공간처럼 여러 파티션에 배정 할 수 있다. 

명령어 수행시 위와 같이 현재 총 볼륨그룹 (VG)의 총 사이즈 , 할당 사이즈, 여유 사이즈 등을 확인 할 수 있다.
확인사항은 Free PE가 얼마나 있는지인데, SDA2까지 배정이 끝났음에도 사용가능한 공간이 1 PE / 4.0Mib 라는 점이다. ( PE : Phtsical extenet 로 디스크 공간을 4메가 단위의 PE로 구성한건데 궁금하다면 따로 찾아보는 것을 추천한다. ) 

#pvresize /dev/sda2

 

 

6. 변경된 볼륨 그룹 정보 확인

#vgdisplay

pvresize 후 pv 확인 해보면 아래와 같이 사이즈가 늘어난 것을 확인 할 수 있다.

 

 

7. 논리 파티션 용량 확장 및 확인 

마지막이다... 메모하다보니 공부하는 기분과 .. 명령어 요약만 위에 적어야겠다는 생각이 든다 ㅡㅡ;

#lvextend -L +100G /dev/mapper/centos-home

#xfs_growfs /dev/mapper/centos-home

두 명령을 수행 하고 나면 증설 할당된 용량을 확인 할 수 있다. 옵션을 통해 300기가중 100기가만 배정 하였다.

 

#df-h

마지막으로 df 명령어를 통해 리눅스 용량 할당내역을 보면 아래와 같이 정상적으로 늘어난 것을 확인 할 수 있다.

리눅스 디스크/파티션 용량 추가 할당에 대해 알아보았다. 

확인하는게 많아서 그렇지 실질적으로 확장하데 사용되는 명령어는 몇개 없으니 천천히 따라하면 쉽게 확장 할 수 있다.

끝.

반응형