가상화 · 4 min read · Dec 31, 2025
VBoxHeadless - VirtualBox 4.0을 사용하여 헤드리스 CentOS 5.6 서버에서 가상 머신 실행하기
VBoxHeadless - VirtualBox 4.0을 사용하여 헤드리스 CentOS 5.6 서버에서 가상 머신 실행하기
버전 1.0
저자: Falko Timme
Twitter에서 나를 팔로우하세요
이 가이드는 VirtualBox 4.0을 사용하여 헤드리스 CentOS 5.6 서버에서 가상 머신을 실행하는 방법을 설명합니다. 일반적으로 가상 머신을 관리하기 위해 VirtualBox GUI를 사용하지만, 서버에는 데스크탑 환경이 없습니다. 다행히도 VirtualBox에는 VBoxHeadless라는 도구가 포함되어 있어 원격 데스크탑 연결을 통해 가상 머신에 연결할 수 있으므로 VirtualBox GUI가 필요하지 않습니다.
이 방법이 여러분에게 효과가 있을 것이라는 보장은 하지 않습니다!
1 사전 참고
저는 일반 사용자(이 예제에서는 사용자 이름이 admin)로 로그인한 IP 주소 192.168.0.100의 CentOS 5.6 서버(호스트 시스템)에서 이 작업을 테스트했습니다.
루트 계정만 있고 일반 사용자 계정이 없는 경우, 다음과 같이 하나를 생성하세요(사용자 admin, 그룹 admin)…
# groupadd admin
# useradd -d /home/admin -m -g admin -s /bin/bash admin… 새 사용자에 대한 비밀번호를 생성하세요…
# passwd admin… 그리고 해당 사용자로 로그인하세요.
2 VirtualBox 설치하기
CentOS 5.6 서버에 VirtualBox 4.0을 설치하려면 루트 권한이 필요하므로 다음을 실행합니다.
$ su이제 dkms 패키지(Dynamic Kernel Module Support Framework - 이 패키지는 VirtualBox 커널 모듈을 빌드하는 데 필요함)가 공식 CentOS 5.6 리포지토리에 없으므로 CentOS 시스템에서 RPMforge 리포지토리를 활성화합니다:
# rpm --import http://apt.sw.be/RPM-GPG-KEY.dag.txt# cd /tmp
# wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.2-2.el5.rf.x86_64.rpm
# rpm -ivh rpmforge-release-0.5.2-2.el5.rf.x86_64.rpm(위 링크가 더 이상 작동하지 않으면 현재 버전의 rpmforge-release를 여기에서 찾을 수 있습니다: http://packages.sw.be/rpmforge-release/)
그런 다음 VirtualBox 4.0의 종속성을 다음과 같이 설치합니다:
# yum groupinstall 'Development Tools'# yum groupinstall 'Development Libraries'# yum install SDL kernel-devel kernel-headers dkms마지막 명령어로 현재 사용 중인 커널의 커널 헤더를 설치했습니다. 헤더는 /usr/src/kernels/ 디렉토리에 위치하지만, 해당 디렉토리의 이름이
커널 버전을 확인하세요…
# uname -r[root@server1 kernels]# uname -r
2.6.18-238.el5
[root@server1 kernels]#… 및 아키텍처:
# uname -m[root@server1 2.6.18-238.el5]# uname -m
x86_64
[root@server1 2.6.18-238.el5]#이는 /usr/src/kernels/ 디렉토리에 2.6.18-238.el5-x86_64라는 디렉토리가 있어야 함을 의미합니다. 이제 이를 확인할 수 있습니다:
# cd /usr/src/kernels/
# ls -l[root@server1 kernels]# ls -l
total 4
drwxr-xr-x 19 root root 4096 May 19 14:26 2.6.18-238.9.1.el5-x86_64
[root@server1 kernels]#보시다시피, 저는 2.6.18-238.9.1.el5-x86_64 디렉토리는 있지만 2.6.18-238.el5-x86_64는 없습니다. 따라서 2.6.18-238.9.1.el5-x86_64를 가리키는 2.6.18-238.el5-x86_64라는 심볼릭 링크를 생성합니다:
# ln -s 2.6.18-238.9.1.el5-x86_64 `uname -r`-`uname -m`다음으로 VirtualBox 공개 rpm 키를 다운로드하고 등록합니다:
# wget -q http://download.virtualbox.org/virtualbox/debian/oracle_vbox.asc
# rpm --import oracle_vbox.asc
# rm -f oracle_vbox.asc이제 시스템에서 VirtualBox CentOS 리포지토리를 활성화합니다:
# cd /etc/yum.repos.d/
# wget http://download.virtualbox.org/virtualbox/rpm/rhel/virtualbox.repo이제 다음과 같이 VirtualBox 4.0을 간단히 설치할 수 있습니다:
# yum install VirtualBox-4.0설치가 성공하면 출력은 다음과 같이 끝납니다:
[...]
Running Transaction
Installing : VirtualBox-4.0 1/1
Creating group 'vboxusers'. VM 사용자는 해당 그룹의 구성원이어야 합니다!
No precompiled module for this kernel found -- trying to build one. Messages
emitted during module compilation will be logged to /var/log/vbox-install.log.
Stopping VirtualBox kernel modules [ OK ]
Uninstalling old VirtualBox DKMS kernel modules [ OK ]
Trying to register the VirtualBox kernel modules using DKMS [ OK ]
Starting VirtualBox kernel modules [ OK ]
Installed:
VirtualBox-4.0.x86_64 0:4.0.8_71778_rhel5-1
Complete!
[root@server1 kernels]#(설치가 실패하고 올바른 커널 헤더 디렉토리를 찾을 수 없는 경우, 출력은 다음과 같이 끝납니다:
[...]
Creating group 'vboxusers'. VM 사용자는 해당 그룹의 구성원이어야 합니다!
No precompiled module for this kernel found -- trying to build one. Messages
emitted during module compilation will be logged to /var/log/vbox-install.log.
Stopping VirtualBox kernel modules [ OK ]
Uninstalling old VirtualBox DKMS kernel modules [ OK ]
Trying to register the VirtualBox kernel modules using DKMS
Error! Your kernel headers for kernel 2.6.18-238.el5 cannot be found at
/lib/modules/2.6.18-238.el5/build or /lib/modules/2.6.18-238.el5/source.
[FAILED]
(Failed, trying without DKMS)
Recompiling VirtualBox kernel modules [FAILED]
(Look at /var/log/vbox-install.log to find out what went wrong)
Installed:
VirtualBox-4.0.x86_64 0:4.0.8_71778_rhel5-1
Complete!
[root@server1 yum.repos.d]#이 경우, 올바른 커널 심볼릭 링크를 생성한 후 다음을 실행하세요:
# /etc/init.d/vboxdrv setupVirtualBox 커널 모듈을 생성합니다.)
이제 VirtualBox를 실행할 사용자(admin 예제)를 vboxusers 그룹에 추가해야 합니다:
# /usr/sbin/usermod -G vboxusers admin이제 VirtualBox가 설치되었으며 사용 준비가 완료되었습니다.
# exit루트 계정을 종료하고 일반 사용자(admin)로 돌아가세요.
3 명령줄에서 VirtualBox 사용하기
3.1 VM 생성하기
명령줄에서 VM을 생성하려면 VBoxManage 명령을 사용할 수 있습니다. 사용 가능한 스위치 목록은 다음을 참조하세요:
$ VBoxManage --help(강력히 권장!) http://www.virtualbox.org/manual/ch08.html을 참조하세요.
이제 Ubuntu 11.04 Server VM을 512MB 메모리와 10GB 하드 드라이브로 생성하겠습니다. Ubuntu 11.04 Server iso 이미지(저는 /home/ubuntu-11.04-server-amd64.iso에 저장했습니다)에서 생성합니다:
$ VBoxManage createvm --name "Ubuntu 11.04 Server" --register
$ VBoxManage modifyvm "Ubuntu 11.04 Server" --memory 512 --acpi on --boot1 dvd --nic1 bridged --bridgeadapter1 eth0
$ VBoxManage createhd --filename Ubuntu_11_04_Server.vdi --size 10000
$ VBoxManage storagectl "Ubuntu 11.04 Server" --name "IDE Controller" --add ide
$ VBoxManage storageattach "Ubuntu 11.04 Server" --storagectl "IDE Controller" --port 0 --device 0 --type hdd --medium Ubuntu_11_04_Server.vdi
$ VBoxManage storageattach "Ubuntu 11.04 Server" --storagectl "IDE Controller" --port 1 --device 0 --type dvddrive --medium /home/ubuntu-11.04-server-amd64.iso3.2 기존 VM 가져오기
예를 들어 examplevm이라는 VM이 있고 이를 이 호스트에서 재사용하고 싶다고 가정해 보겠습니다. 이전 호스트에서 VirtualBox 디렉토리의 Machines/examplevm에 디렉토리가 있어야 하며, Machines/examplevm에는 examplevm.xml 파일이 포함되어 있어야 합니다. examplevm 디렉토리(예: examplevm.xml 파일 포함)를 새 Machines 디렉토리로 복사합니다(사용자 이름이 admin인 경우 /home/admin/.VirtualBox/Machines - 결과는 /home/admin/.VirtualBox/Machines/examplevm/examplevm.xml이어야 합니다).
또한 이전 VDI 디렉토리에서 examplevm.vdi 파일을 새 디렉토리로 복사합니다(예: /home/admin/.VirtualBox/VDI/examplevm.vdi).
그런 다음 가져온 VM을 등록해야 합니다:
$ VBoxManage registervm Machines/examplevm/examplevm.xml3.3 VBoxHeadless로 VM 시작하기
새 VM을 생성하든 이전 VM을 가져오든, 다음 명령으로 시작할 수 있습니다:
$ VBoxHeadless --startvm "Ubuntu 11.04 Server"(우분투 11.04 서버를 VM의 이름으로 바꾸세요.)
VBoxHeadless는 VM과 VRDP(가상 머신의 출력이 다른 머신에서 원격으로 보이도록 하는 VirtualBox 원격 데스크탑 프로토콜) 서버를 시작합니다.
VM을 중지하려면 다음을 실행하세요:
$ VBoxManage controlvm "Ubuntu 11.04 Server" poweroffVM을 일시 중지하려면 다음을 실행하세요:
$ VBoxManage controlvm "Ubuntu 11.04 Server" pauseVM을 재설정하려면 다음을 실행하세요:
$ VBoxManage controlvm "Ubuntu 11.04 Server" resetVBoxHeadless에 대해 더 알고 싶다면 다음을 참조하세요:
$ VBoxHeadless --help새 게시물을 받은 편지함에서 받기
스팸은 없습니다. 언제든지 구독 해지 가능합니다.