더북(TheBook)

명령줄에서 VM 관리하기

버추얼박스는 vboxmanage 명령으로 실행할 수 있는 자체 명령줄 셸을 제공한다. 굳이 명령줄을 사용하는 이유는 무엇일까? 무엇보다도 명령줄을 이용하면 원격 서버에서 작업할 수 있어서 가능한 프로젝트의 범위가 상당히 넓어진다. vboxmanage 사용법을 알아보려면 먼저 다음과 같이 list vms 명령으로 현재 시스템에 설치된 VM 목록을 확인한다.

$ vboxmanage list vms
"Ubuntu-16.04-template" {c00d3b2b-6c77-4919-85e2-6f6f28c63d56}
"centos-7-template" {e2613f6d-1d0d-489c-8d9f-21a36b2ed6e7}
"Kali-Linux-template" {b7a3aea2-0cfb-4763-9ca9-096f587b2b20}
"website-project" {2387a5ab-a65e-4a1d-8e2c-25ee81bc7203}
"Ubuntu-16-lxd" {62bb89f8-7b45-4df6-a8ea-3d4265dfcc2f}

vboxmanage clonevm 명령은 앞에서 GUI로 설명한 VM 복제 과정을 동일하게 실행한다. 예를 들어, 다음 명령은 칼리 리눅스를 원본으로 사용하는 필자의 VM(Kali-Linux-template)을 newkali라는 이름으로 복제한다.

$ vboxmanage clonevm --register Kali-Linux-template --name newkali

vboxmanage list vms 명령을 다시 실행하면 제대로 복제되었는지 확인할 수 있다.

로컬 컴퓨터에서 새로 만든 VM만 사용한다면 이 방법은 멋지게 작동한다. 그런데 팀원이 이 VM을 똑같이 복제해 실행하고 내가 작업하던 것을 테스트하게 하려면 어떻게 해야 할까? 이럴 때는 VM을 표준 파일 형식으로 변환해야 하는데, 필자는 다음과 같이 VM을 개방형 가상화 포맷(OVF, Open Virtualization Format)으로 변환해 익스포트(export)했다.

$ vboxmanage export website-project -o website.ova ← -o 플래그는 출력 파일명을 지정하는데 여기에서는 website.ova다
0%…10%…20%…30%…40%…50%…60%…70%…80%…90%…100%  
Successfully exported 1 machine(s).
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.