Virtualisierung · 5 min read · Dec 01, 2025
VBoxHeadless - Virtuelle Maschinen mit VirtualBox 4.2 auf einem headless OpenSUSE 12.2 Server ausführen
VBoxHeadless - Virtuelle Maschinen mit VirtualBox 4.2 auf einem headless OpenSUSE 12.2 Server ausführen
Version 1.0
Autor: Falko Timme
Folge mir auf Twitter
Dieser Leitfaden erklärt, wie Sie virtuelle Maschinen mit VirtualBox 4.2 auf einem headless OpenSUSE 12.2 Server ausführen können. Normalerweise verwenden Sie die VirtualBox GUI, um Ihre virtuellen Maschinen zu verwalten, aber ein Server hat keine Desktop-Umgebung. Glücklicherweise kommt VirtualBox mit einem Tool namens VBoxHeadless, das es Ihnen ermöglicht, über eine Remote-Desktop-Verbindung auf die virtuellen Maschinen zuzugreifen, sodass die VirtualBox GUI nicht erforderlich ist.
Ich gebe keine Garantie, dass dies bei Ihnen funktioniert!
1 Vorbemerkung
Ich habe dies auf einem OpenSUSE 12.2 Server (Host-System) mit der IP-Adresse 192.168.0.100 getestet, wo ich als normaler Benutzer (Benutzername admin in diesem Beispiel) anstelle von root angemeldet bin.
Wenn Sie nur ein Root-Konto haben, aber kein normales Benutzerkonto, erstellen Sie eines wie folgt (Benutzer admin, Gruppe admin)…
# groupadd admin
# useradd -d /home/admin -m -g admin -s /bin/bash admin… erstellen Sie ein Passwort für den neuen Benutzer…
# passwd admin… und melden Sie sich als dieser Benutzer an.
2 Installation von VirtualBox
Um VirtualBox 4.2 auf unserem OpenSUSE 12.2 Server zu installieren, benötigen wir Root-Rechte, daher führen wir aus
$ suZuerst müssen wir herausfinden, welchen Kernel wir installiert haben:
# uname -aserver1:/home/admin # uname -a
Linux server1 3.4.6-2.10-desktop #1 SMP PREEMPT Thu Jul 26 09:36:26 UTC 2012 (641c197) x86_64 x86_64 x86_64 GNU/Linux
server1:/home/admin #Wie Sie sehen, habe ich das Kernel-Desktop-Paket installiert - wenn Sie das Kernel-Server-Paket installiert haben, ersetzen Sie desktop durch server im folgenden Befehl.
Wir installieren die Abhängigkeiten für VirtualBox 4.2 wie folgt (indem wir das Kernel-Desktop / Kernel-Server-Paket erneut installieren, stellen wir sicher, dass wir die neueste Version installiert haben):
# zypper install kernel-desktop kernel-desktop-devel kernel-source kernel-syms Xerces-c gcc makeWenn der Kernel aktualisiert wird, werden Sie aufgefordert, das System neu zu starten - in diesem Fall führen Sie aus:
# rebootMelden Sie sich erneut als normaler Benutzer an und werden Sie dann root:
$ suLaden Sie als Nächstes den öffentlichen rpm-Schlüssel von VirtualBox herunter und registrieren Sie ihn:
# wget -q http://download.virtualbox.org/virtualbox/debian/oracle_vbox.asc
# rpm --import oracle_vbox.ascJetzt aktivieren wir das VirtualBox OpenSUSE-Repository auf unserem System (es gibt keine Repo-Datei für OpenSUSE 12.2, da die Repo-Datei für 11.4 auch auf 12.2 funktioniert):
# cd /etc/zypp/repos.d/
# wget http://download.virtualbox.org/virtualbox/rpm/opensuse/11.4/virtualbox.repoWir können jetzt einfach VirtualBox 4.1 wie folgt installieren:
# zypper install VirtualBox-4.2Stellen Sie anschließend sicher, dass das vboxdrv-Kernelmodul geladen ist:
# modprobe vboxdrvDer folgende Befehl stellt sicher, dass das vboxdrv-Kernelmodul automatisch geladen wird, wann immer Sie das System starten:
# insserv vboxdrvSeit Version 4.0 hat VirtualBox sogenannte “Erweiterungspakete” eingeführt und einige Funktionen wie die Unterstützung für Remote-Desktop-Verbindungen (VRDP), die zuvor Teil der VirtualBox-Pakete vor Version 4.0 waren, in diese Erweiterungspakete ausgelagert. Da wir Remote-Desktop-Verbindungen benötigen, um unsere virtuellen Maschinen zu steuern, müssen wir jetzt das entsprechende Erweiterungspaket installieren. Gehen Sie zu http://www.virtualbox.org/wiki/Downloads, und Sie finden einen Link zu folgendem Erweiterungspaket:
VirtualBox 4.2 Oracle VM VirtualBox Extension Pack
Unterstützung für USB 2.0-Geräte, VirtualBox RDP und PXE-Boot für Intel-Karten.Laden Sie das Erweiterungspaket wie folgt herunter und installieren Sie es:
# cd /tmp
# wget http://download.virtualbox.org/virtualbox/4.2.0/Oracle_VM_VirtualBox_Extension_Pack-4.2.0-80737.vbox-extpack
# sudo VBoxManage extpack install Oracle_VM_VirtualBox_Extension_Pack-4.2.0-80737.vbox-extpack(Stellen Sie sicher, dass Sie die neueste Version von der VirtualBox-Website herunterladen.)
Jetzt müssen wir den Benutzer, der VirtualBox ausführen wird (admin in diesem Beispiel), zur vboxusers-Gruppe hinzufügen:
# /usr/sbin/usermod -G vboxusers admin(Sie müssen sich möglicherweise abmelden und wieder anmelden, um diese Änderung wirksam zu machen.)
VirtualBox ist jetzt installiert und bereit zur Verwendung.
Geben Sie
# exitein, um das Root-Konto zu verlassen und wieder ein normaler Benutzer (admin) zu werden.
3 Verwendung von VirtualBox über die Befehlszeile
3.1 Erstellen einer VM
Um eine VM über die Befehlszeile zu erstellen, können wir den Befehl VBoxManage verwenden. Siehe
$ VBoxManage --helpfür eine Liste der verfügbaren Schalter und (sehr empfohlen!) werfen Sie einen Blick auf http://www.virtualbox.org/manual/ch08.html.
Ich werde jetzt eine Ubuntu 12.04 Server-VM mit 512 MB Speicher und einer 10 GB Festplatte aus dem Ubuntu 12.04 Server-ISO-Image erstellen (das ich in /home/ubuntu-12.04-server-amd64.iso gespeichert habe):
$ VBoxManage createvm --name "Ubuntu 12.04 Server" --register
$ VBoxManage modifyvm "Ubuntu 12.04 Server" --memory 512 --acpi on --boot1 dvd --nic1 bridged --bridgeadapter1 eth0
$ VBoxManage createhd --filename Ubuntu_12_04_Server.vdi --size 10000
$ VBoxManage storagectl "Ubuntu 12.04 Server" --name "IDE Controller" --add ide
$ VBoxManage storageattach "Ubuntu 12.04 Server" --storagectl "IDE Controller" --port 0 --device 0 --type hdd --medium Ubuntu_12_04_Server.vdi
$ VBoxManage storageattach "Ubuntu 12.04 Server" --storagectl "IDE Controller" --port 1 --device 0 --type dvddrive --medium /home/ubuntu-12.04-server-amd64.iso3.2 Importieren einer vorhandenen VM
Angenommen, Sie haben eine VM namens examplevm, die Sie auf diesem Host wiederverwenden möchten. Auf dem alten Host sollten Sie ein Verzeichnis Machines/examplevm im VirtualBox-Verzeichnis haben; Machines/examplevm sollte die Datei examplevm.xml enthalten. Kopieren Sie das examplevm-Verzeichnis (einschließlich der Datei examplevm.xml) in Ihr neues Machines-Verzeichnis (wenn Ihr Benutzername admin ist, ist dies /home/admin/.VirtualBox/Machines - das Ergebnis sollte /home/admin/.VirtualBox/Machines/examplevm/examplevm.xml sein).
Darüber hinaus kopieren Sie die Datei examplevm.vdi aus dem alten VDI-Verzeichnis in das neue (z. B. /home/admin/.VirtualBox/VDI/examplevm.vdi).
Anschließend müssen Sie die importierte VM registrieren:
$ VBoxManage registervm Machines/examplevm/examplevm.xml3.3 Starten einer VM mit VBoxHeadless
Egal, ob Sie eine neue VM erstellen oder eine alte importieren, Sie können sie mit dem Befehl starten:
$ VBoxHeadless --startvm "Ubuntu 12.04 Server"(Ersetzen Sie Ubuntu 12.04 Server durch den Namen Ihrer VM.)
VBoxHeadless startet die VM und einen VRDP (VirtualBox Remote Desktop Protocol)-Server, der es Ihnen ermöglicht, die Ausgabe der VM remote auf einem anderen Computer zu sehen.
Um eine VM zu stoppen, führen Sie aus
$ VBoxManage controlvm "Ubuntu 12.04 Server" poweroffUm eine VM zu pausieren, führen Sie aus
$ VBoxManage controlvm "Ubuntu 12.04 Server" pauseUm eine VM zurückzusetzen, führen Sie aus
$ VBoxManage controlvm "Ubuntu 12.04 Server" resetUm mehr über VBoxHeadless zu erfahren, werfen Sie einen Blick auf
$ VBoxHeadless --helpund auf http://www.virtualbox.org/manual/ch07.html#vboxheadless.
Erhalte neue Beiträge in deinem Posteingang.
Kein Spam. Jederzeit abmelden.