Virtuális gépek futtatása szerveren VirtualBoxszal

Többféle virtualizációs megoldással futtathatunk monitor, billentyűzet, X, stb. nélküli szerveren virtuális gépet. Többek között VirtualBoxszal is lehetőség van erre. Ezt a megoldást a VBoxHeadless komponens nyújtja, melynek segítségével a háttérben futtathatjuk a virtuális gépet terminálból, és magát a virtuális gépet hálózaton keresztül érjük el.
(a használat, virtuális gép létrehozása Windowson futó VirtaulBox esetén is ugyanígy megy)

VirtualBox telepítése

Telepítsük a VirtualBoxot, azonban nem az Ubuntu által biztosított tárolókból, hanem a SUN tárolójából.
Nyissuk meg szerkesztésre a tárolókat tartalmazó konfigurációs fájlt

sudo nano /etc/apt/sources.list

Majd adjuk hozzá a következő sort egy új sorba (ha nem Jauntyt használunk, akkor azt írjuk át)

deb http://download.virtualbox.org/virtualbox/debian jaunty non-free
 

Töltsük le és adjuk hozzá rendszerünkhöz a tároló kulcsát:

wget -q http://download.virtualbox.org/virtualbox/debian/sun_vbox.asc -O- | sudo apt-key add -

Majd frissítsük a csomaglistákat

sudo apt-get update

Most telepítsük a VirtualBoxot, a Linux kernel fejléceit és a build-essential csomagot (ezek a VirtualBox kernel modul lefordításához kellenek), valamint a dkms csomagot, mely azért szükséges, hogy kernelfrissítéskor a VirtualBox moduljai is frissüljenek.

sudo aptitude install linux-headers-$(uname -r) build-essential virtualbox-3.0 dkms

Telepítés közben ki fog írni ilyesmit a gép:

Creating group 'vboxusers'
Users of VirtualBox must be members of that group. Host network interfaces will be assigned to that group.

Itt nyomjunk OK-ot.
Majd megkérdezi, hogy lefordítsa e a kernel modult, itt Yes-t nyomjunk

Should the vboxdrv kernel module be compiled now?

Ha kész a telepítés, már csak hozzá kell magunkat adni a vboxusers csoporthoz, mivel csak ez a csoport futtathatja a VirtualBoxot. Ezt a következő paranccsal tehetjük meg:

sudo adduser FELHASZNALONEV vboxusers

A FELHASZNALONEV helyére írjuk be a saját nevünket (vagy akinek engedélyezzük, hogy a virtualboxot futtassa)

VirtualBox kezelése terminálból

Virtuális gép létrehozása

Virtuális gépet létrehozni (és később kezelni) terminálból a VBoxManage parancs segítségével tudunk. Nézzük meg a súgóját:

VBoxManage --help

Valamit érdemes elolvasni a VirtualBox súgójának idevonatkozó részeit is.
Most létrehozok egy Ubuntu Szervert, 256 MiBájt rammal és a telepítőmédia a /home/ubuntu-9.04-server-i386.iso útvonalon van. Nézzük a parancsokat:

VBoxManage createvm -name "Ubuntu 9.04 Server" -register

Létrehoztunk egy Ubuntu 9.04 Server nevű virtuális gépet

VBoxManage modifyvm "Ubuntu 9.04 Server" -memory "256MB" -acpi on -boot1 dvd -nic1 nat

Az Ubuntu 9.04 Server nevű virtuális gépnek beállítjuk, hogy 256 MB memóriája legyen, egy hálózati kártyája, mely NAT módban megy, az ACPI engedélyezve van, és a DVD meghajtóról induljon

VBoxManage createvdi -filename "Ubuntu_9_04_Server.vdi" -size 10000 -register

Létrehoztunk egy Ubuntu_9_04_Server.vdi nevű virtuális merevlemezt, 10000 MBájt méretben (-size).

VBoxManage modifyvm "Ubuntu 9.04 Server" -hda "Ubuntu_9_04_Server.vdi"

Beállítottuk az „Ubuntu 9.04 Server virtuaális gépnek a korábban létrehozott merevlemezt hda-ként (elsődleges ATA merevlemezként).

VBoxManage registerimage dvd /home/ubuntu-9.04-server-i386.iso

Megismertetjük a VirtaulBoxszal a /home/ubuntu-9.04-server-i386.iso ISO képfájlt

VBoxManage modifyvm "Ubuntu 9.04 Server" -dvd /home/ubuntu-9.04-server-i386.iso

Beállítjuk virtuális gépünkhöz DVD meghajtóként a képfájlt.

Korábban létrehozott virtuális gép importálása

Létrehozhatjuk akár a virtuális gépet egy grafikus felületű VirtualBox segítségével, majd azt kiexportálva, a szerveren beimportálhatjuk
Másoljuk a virtuális gép tulajdonságait tartalmazó XML fájlt (pontosabban azt a mappát ami az XML fájlt tartalmazza) a ~/.VirtualBox/Machines/ mappába, a merevlemez képet pedig a ~/.VirtualBox/VDI/ mappába.
Majd importáljuk be:

VBoxManage registervm Machines/ujgep/ujgep.xml

Látható, hogy a bemásolt XML fájl elérési útját kell megadni (jelen esetben /ujgep/ujgep.xml)

Virtuális gép indítása

Most, hogy elkészítettük a virtuális gépet, indítsuk el, a VBoxHeadless segítségével. Így indítva a gépet a virtuális gép kimenetét távolról elérhetjük majd RDP protokoll használatával.

VBoxHeadless -startvm "Ubuntu 9.04 Server"

A startvm paraméterben mondjuk meg, hogy melyik virtuális gépet indítjuk.
További paraméterekről a súgó segít:

VBoxHeadless --help

vagy a VirtaulBox kézikönyve.
Távoli kapcsolódáshoz tehát egy RDP kliensre lesz szükség (Windows alatt a Távoli asztali kapcsolat, Linux alatt pl. a rdesktop). Csatlakozáskor a szerver IP címét adjuk meg (tehát ne a vendég gépét, ha már lesz neki!). Ha több gépet indítunk, akkor azok más-más porton fognak figyelni, ezt a VBoxHeadless kiírja.

8 thoughts on “Virtuális gépek futtatása szerveren VirtualBoxszal

  1. mindent így csináltam, és működik is tökéletesen, csak a
    VBoxHeadless -startvm „virtuálisgép”
    parancs után:
    Listening on port 3389
    és nem tér vissza a parancssorba, viszont a gépre rácsatizva működik minden. mi lehet a gond?

  2. [re=6295]apeelme[/re]: semmi, ez így normális. Mivel fut, ezért nem tér vissza a prompt.

  3. jah és már telepítés közben az egér el van csúszva de nagyon.
    a rendszer egyébként 9.04 server.
    neten keresztül csatizok XP-s Távoli asztal kapcsolattal.

  4. ha viszont VBoxManage startvm –type vrdp -vel indítok akkor kapok basht, de nem írja a portot, és a virtuális gép még mindig lassú

  5. [re=6296]charlie[/re]: a Virtualbox oldalán viszont ezt írja:
    VBoxHeadless –startvm „Windows XP”
    If everything worked, you should see a copyright notice. If, instead, you are returned to the command line, then something went wrong.

  6. még egy kis infó.
    ha
    VBoxManage startvm VIRTUALISGEP -–type vrdp
    paranccsal indítom a virtuális gépeket akkor egy top paranccsal ellenőrízve a processzeket a virt.gépek VBoxHeadless folyamatként futnak.hmm…

  7. Kicsit régiek a hozzászólások, de hátha van valakinek ötlete..
    VirtualBox VM 4.3.36-ot futtatok Ubuntu 64bit serveren.
    Virtuális gépet létrehoztam (Windows7 települt rá). Elérem a virtuális gépet, de azon internet kapcsolat nincs. Network beállításnál az alábbiakat adtam meg:
    VBoxManage modifyvm WIN7 –acpi on –nic1 bridged –cableconnected1 on –bridgeadapter1 eth0 –nictype1 82540EM –ostype Windows7
    Elméletben kellene a Virtuális win7-en internet elérésnek lenni, de nincs. Maximum a gazdagépet (Ubuntut) tudom elérni. DNS kiszolgálót szintén nem sikerül elérni.
    Valakinek van ötlete? Mert kicsit sokáig tartott mire eleve a hálózati adaptert (virtuális hálózati adaptert) működésre tudtam bírni. És most elakadok…

Vélemény, hozzászólás?

Az e-mail címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük

Ez az oldal az Akismet szolgáltatást használja a spam csökkentésére. Ismerje meg a hozzászólás adatainak feldolgozását .