posted by 박영창 2009/01/22 00:59

 최근에 공부를 위해서 VMWare 상에서 리눅스를 설치하고 DB(오라클, db2)를 설치를 했습니다. 문제는... 이놈의 디비가 좀 큰게 아니라서 초기에 설정했던 12기가라는 파티션이 결코 크지가 않다는 것을 발견하면서부터 였습니다.

 이 글은 저와 비슷한 문제점을 가지신 분들을 위해서 작성된 것입니다. 그외에도 LVM을 이용해서 파티션을 구성한 경우라면 참고할 만 할거라고 생각합니다. (만약 파티션을 구성할때 LVM을 이용하지 않은 경우라면 용량은 증설해도 하나의 파티션 처럼 사용하긴 힘들겁니다. -_-;;; VMware Machine 지우고 재설치 고고씽~~)

 LVM 이라는 녀석을 처음으로 실재로 써본것은 HPUX 교육을 받으면서 였습니다. 그 이전에도 있다는 사실은 알았지만 사실 여러개의 명령어들이 얼키고 설켜있어서 왜 이렇게 어렵지라는 생각만 했던 것 같습니다. 물론 실제로 공부하고 보니 정말로 별게 없는게 이 LVM 으로 디스크를 관리하는 것이긴 하지만요.

df -h 명령으로 살펴본 파티션의 크기 (오라클 11g의 경우 설치만해도 12기가가 가득차더군요)

현재 실습으로 삼은 VMWare 상의 리눅스의 파티션은 모자라지 않습니다. 그냥 추가하는 작업을 해볼 생각이니 참고만 하세요. ㅎㅎ


보시는 바와 같이 현재 LVM이 잡고 있는 볼륨 그룹에는 Free PE 가 전혀 없습니다. 따라서 용량을 더이상 추가할 수가 없는 것이죠. 여기서 우리는 VMWare 가 사용하는 디스크 파일의 크기를 좀더 늘려줄 필요가 있습니다.

VMWare 에서 디스크 용량의 크기를 늘려주는 기능은 GUI 환경상에서 찾을수는 없고, VMWare 디렉토리상에서 찾아야합니다. 디렉토리로 이동해 보면 vmware-vdiskmanager.exe라는 파일을 찾을 수 있으며, 이 프로그램이 VMWare 상에서 인식하는 하드디스크의 용량을 증가시켜주는 툴입니다.


 여기에서 아래와 같은 방식으로 용량을 늘이고자하는 디스크 파일을 직접 입력하고 -x 옵션으로 늘이려고 하는 용량 만큼을 명시하면 됩니다. VMWare 가 실행중인 상태에서는 수행이 안돼기 때문에 VMWare를 suspend 시키고서 실행하면 됩니다. (디렉토리 이름에 공백이 들어간 경우라면 " 로 감싸야한다는 걸 잊지마시길...) 

 실행은 되어도 실제로 디스크의 용량을 인식시키려면 재부팅하는 과정을 거쳐야하기 때문에 가능하면 OS를 내리고서 작업하시길 권합니다.

저의 경우에는 아래의 옵션을 주었습니다. -t 옵션의 경우에는 처음 VMWare 에서 디스크를 만들때 사용하는 옵션에 맞추어서 사용하면 됩니다. -x 옵션을 줄때 주의할 점은 추가분이 아니라 만들고자하는 디스크의 총량을 명시한다는 사실입니다.

vmware-vdiskmanager.exe
-x 18GB
-t 3
"D:\@Admin.Doc\My Virtual Machines\db2_95_on_linux\oracle_11g_on_linux-cl1.vmdk"



VMWare 로 OS 를 기동합니다. 이제 디스크를 늘였으니 디스크의 상태를 봐볼까요?

디스크의 총용량이 18G로 증가했음을 확인할 수 있습니다. 현재까지 만들어진 물리 파티션의 한계는 12기가이구요.


여기서 이제 저희가 해야할 일은 증가된 용량의 크기만큼은 6기가 분량의 디스크 공간을 Physical Volume 으로 만들고 해당 볼륨을 기존에 설정되었던 Volume Group 00 으로 추가하는 작업을 해야합니다. 일단 물리 볼륨을 작업하기 전에 잔여 용량을 파티션으로 작성해야하기 때문에 fdisk  상에서 작업을 합니다.

작업을 마친후에는 리부팅합니다.

더보기

일단 여기까지 마치면 대충 용량을 증설하는 작업이 거의 완료된 거나 마찬가지 입니다.

볼륨그룹에 추가 용량을 더하기 전에 Physical Volume 을 추가하기 위해서 pvcreate 작업을 실시합니다.
추가된 물리 볼륨을 vgextend 를 이용해서 기존의 VolGroup00  추가합니다.


보시는대로 처럼 추가된 물리 볼륨 만큼의 Free PE 가 생겨난 것을 확인할 수 있습니다. 여기에서 이제 논리 볼륨을 증가시키고 실제로 ext3 의 파티션 공간을 늘여주는 작업을 하면 용량 증설 작업이 종료됩니다.


여기까지 완료되면 일단 물리적으로 용량의 증설을 모두 끝난 상태입니다. 다음의 파일 시스템의 영역에서 실제 사용가능한 용량의 범위를 증설하는 작업입니다. 당연히 파일 시스템이 용량 증가하는 방식을 제공해야합니다. 보통 리눅스에서 많이 사용하면 ext2, ext3 와 같은 파일 시스템은 해당 툴이 존재하기 때문에 간편하게 사용가능합니다.
(사용하는 프로그램은 OS의 버전과 파일시스템에 따라서 상이할 수 있습니다. CentOS 5에서 설치했던저는 resize2fs라는 툴을 이용해서 변경하였습니다.)


이상입니다. 대충 이런식인데요 적당히 따라만 해보시면 됩니다. 설마 이런 작업 할일이 많겠습니까? ㅋㅋㅋ
그냥 이런 방식으로 쓸수도 있구나 하고 생각해두세요.

크리에이티브 커먼즈 라이선스
Creative Commons License