본문 바로가기

개발

Cent OS Root Partition Resize /, /home partition resize

728x90

Cent OS 를 사용하다 보면 가끔 /opt 영역의 용량이 부족한 경우를 겪게 된다. 그 이유는 Cent OS 의 경우 Ubuntu 등과 달리 / 영역과 /home 영역의 파티션을 다르게 나누어서 사용하기 때문이다.

 

Cent OS 에서 Hadoop 과 같이 /opt 에 많은 용량을 사용해야 하는 경우에는 Cent OS 를 재 설치해야 하는 고민에 빠지는 경우가 생기는데, 그럴 필요 없이 볼륨 용량을 다시 설정 하면 된다. 다시 말해, Hadoop 과 같이 / 영역에서 용량을 많이 사용 하는 경우 /home 은 용량이 많이 남는데 / 는 용량이 모자라는 상황이 발생한다.

 

CentOS 는 원칙적으로 / 와 /home 을 구분하여 파티션을 생성한다.

/          /dev/mapper/centos-root
/home      /dev/mapper/centos-home

 

이런 문제를 해결 하기 위선 GUI 로 설치시 파티션 설정 단계에서 /home 을 삭제하고 / 만 생성하는 것도 한 방법이다.

 

/, /home 영역의 디스크 용량을 재조정 하는 방법은 두가지가 있다.-

 

1) /home 의 할당된 partition 을 reduce 하는 방법
2) /home 의 할당된 partition을 지우고 새로 만드는 방법

 

1. /home 의 할당된 partition 을 reduce 하는 방법

아래의 명령어를 실행하는 경우 xfs not supported 라는 메세지가 나타나고 동작 되지 않는 경우가 있다. 이런 경우는 2. /home 의 할당된 partition 을 지우고 새로 만드는 방법 을 이용하면 된다.

 

$ umount /home                                 
$ lvreduce -r -L 10G /dev/mapper/centos-home  #/home의 용량을 10G 줄임 
$ lvresize -r -l+100%FREE /dev/mapper/centos-root #/의 용량을 10G 늘림 
$ mount /home

 

2. /home 의 할당된 partition 을 지우고 새로 만드는 방법

아래의 명령어는 home 의 프로세스가 동작 하고 있으면 안되니 리부팅하고(/home 영역의 프로세스를 종료 하기 위해) root 계정으로 로그인 한 후 작업해야한다. /home 영역의 프로세스를 ps 명령어로 찾아서 종료 시켜도 되지만, 리부팅이 제일 쉽다~~:)

 

$ tar -czvf /root/home.tar.gz /home     # /home 영역 백업  
$ umount /dev/mapper/centos-home        # /home unmount 
$ lvremove /dev/mapper/centos-home      # /home remove 
$ lvcreate -L 400GB -n home centos      # /home create 
$ mkfs.xfs /dev/centos/home             # /home make xfs type
$ mount /dev/mapper/centos-home         # /home mount 
$ lvextend -r -l +100%FREE /dev/mapper/centos-root  # / 용량 늘리기 
$ tar -xzvf /root/home.tar.gz -C /home  # /home 영역 백업 파일에서 복원

 

이 2 가지 방법이면 Cent OS 의 /, /home 영역의 파티션을 쉽게 재조정 할 수 있다. :)