Unix/Ubuntu

Virtual Box

ForceCore 2009. 1. 4. 22:18
너무 쉽다 -_-;;; aptitude에 virtualbox라고 아예 패키지가 있다. 하하하.
윈도우에서와 마찬가지로 너무나도 잘 된다...
until...

필자는 bridged 설정으로 guest가 직접 공유기에 접속할 수 있도록 하고 싶었다.
이건 우분투에서 어떻게 해야 하는가?!

http://thekoos.tistory.com/entry/Ubuntu%EC%9D%98-VirtualBox%EC%97%90%EC%84%9C-Bridge-%EC%84%A4%EC%A0%95
이 글을 컨닝.

좀 낡아뵈는데...
http://ubuntuforums.org/showthread.php?t=995615
http://dirn.name/2008/11/network-bridge-setting-for-virtualbox-on-ubuntu-810-static-ip-intrepid-ibex/
https://help.ubuntu.com/community/VirtualBox
아래의 우분투 공식 help가 가장 권위있고 최신 것 같군.
하지만 필자의 환경처럼 bridge, eth0 모두 가상으로 하는건... 없어보이는데 ㄷㄷㄷ
조합으로 만들면 되겠지.

$ sudo apt-get install bridge-utils
그 뒤, /etc/network/interfaces를 백업해둔다. 공유기 환경이라면...
이런 식으로 설정하면 된다고 한다.
auto eth0
iface eth0 inet manual

auto br0
iface br0 inet dhcp
bridge_ports eth0 vbox0

# The loopback network interface
auto lo
iface lo inet loopback
br0는 dhcp이고 어쩌구 저쩌구...
eth0는 dhcp가 아니라 manual (!)

vbox0는 임의의 virtual box tap으로 사용될 interface 이름이다. tap수가 늘어나면 vbox1 vbox2뭐 기타 등등의 이름을 bridge_ports eth0 vbox0 vbox1 vbox2 ... 이렇게 한 줄에 적으면 된다고 한다...

위 설정은 틀리지 않았다. w00t...
이제 또 해야 하는 일이.

$ sudo VBoxAddIF vbox0 사용자ID br0

이렇게 vbox0 interface를 생성해주는 일이다.
만약 엉터리로 하게 되면 간단히, /etc/vbox/interfaces에서 조금 수정해주면 된다.
인터넷도 되고, br0도 있는 상태로 어떻게든 만들라. ( $ ifconfig -a 에서 보이면 된다. )

여기까진 OK.
이제 vbox0 interface를 virtualbox에서 쓴다고 해주고...
켜보면... 안된다.
chmod 0666 /dev/net/tun 을 하든지,
아까 사용한 사용자 id가, vboxusers그룹에 있게 하든가.
그룹을 해야겠군.

$ sudo gpasswd -a 사용자id vboxusers


이렇게.
그래도 안 된다 ㄱ-;;

$ sudo /etc/init.d/virtualbox-ose restart
이것도 해준다. 패키지로 설치했다면...

그래도 안 된다;;
chmod 0666을 하니 된다. 왜?!

다시 그룹으로 하는 방법에 도전 ㄱ-...
아니다... 통할리 없지. 제대로 되어있는데 안 되는거니;;
로그아웃 했다 로그인 하면 될 지도 모르겠군...

그렇다. 로그아웃했다 로그인 하니 잘 된다.
그룹이 바뀐 것이 적용되려면 로그아웃 했다가 로그인 해야 한다;

2009.02.21 추가:
Virtual Box 를 closed source 최신판으로 깔면, VBoxAddIF를 안 해도, br0에 bind시키기만 하면 잘만 되는 것이 확인 되었다. br0도 안 만들어도 되는 것 같기도 하다... 그것까진 귀찮아서 안 해봤다. 새로 설치된 시스템이면 이 실험을 해보는데 ㅋ_ㅋ;;