Howto Virtualbox: Virtuelle Maschine ohne GUI (Shell) erstellen

Hallo Besucher, schön dass du hier hergefunden hast. Ich hoffe dir gefällt was du hier liest und schaust ab sofort öfter vorbei. Viel Spass! Daniel

Du hast auf deinem Server noch Ressourcen frei und möchtest diese Ressourcen für eine virtuelle Maschine nutzen? Du möchtest auf deinem Server aber keine Grafische Benutzeroberfläche (GUI) installieren? Ich zeige dir wie man mit Virtualbox in der Shell eine Virtuelle Maschine erstellt und wie man diese ohne GUI einrichtet und installiert.

Dieses Howto installiert die aktuelle Version 3.0.6 von Virtualbox auf einem Debian Lenny 5.0.3. Für andere Linux-Distributionen, wie Ubuntu oder Linux Mint, die auf Debian basieren sollte der Vorgang gleich sein. Alle Befehle werden, wenn nicht anders erwähnt, als root user ausgeführt. Alle die es per sudo machen müssen, müssen das sudo an den jeweiligen Befehl voranstellen.

1. Virtualbox installieren

Aus der Liste der Quellen suchen wir uns die für Debian und fügen sie in unsere sources.list hinzu:

echo “deb http://download.virtualbox.org/virtualbox/debian lenny non-free” >> /etc/apt/sources.list

Anschliessend fügen wir den public key zu apt hinzu:

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

Virtualbox installieren:

aptitude update
aptitude install virtualbox-3.0

Wenn du vorher eine alte Version von Virtualbox installiert hattest, musst du bei der Einrichtung von Virtualbox bestätigen, dass du alte Kernelmodule löschen möchtest.

2. Benutzer erstellen

Da man mit wenigen Ausnahmen keine Dienste als root Benutzer starten soll, legen wir uns einen Benutzer an und fügen ihn der Gruppe vboxusers hinzu. Diese Gruppen wurde bei der Installation von Virtualbox angelegt und berechtigt jeden in der Gruppe zur Steuerung der Virtuellen Maschinen.

useradd -m vmuser
usermod -a -G vboxusers vmuser

3. Virtuelle Maschine erstellen und einrichten

Bevor wir die Maschine einrichten, nehmen wir die Identität unseres erstellten Users vmuser an. Mit seinen Rechten soll die Maschine später laufen.

su vmuser

Die Maschine erstellen:

VBoxManage createvm –name DebServer –ostype Debian –register

Virtualbox erstellt die Virtuellen Maschinen automatisch im Ordner /home/vmuser/.VirtualBox/Machines/. Möchte man die Virtuelle Maschine woanders erstellen fügt man den Parameter –basefolder <path> an.

Informationen über die Maschine abrufen um zu testen ob die Maschine angelegt wurde (sollte man nach jedem Befehl ausführen):

VBoxManage showvminfo DebServer

Jetzt weisen wir der Virtuellen Maschine 2048 MB Speicher zu, stellen acpi auf on, stellen ein, dass die Maschine vom DVD-Laufwerk booten soll, dass die Netzwerkkarte 1 bridged sein soll und der bridgeadapter 1 eth0 ist. Lässt man die Einstellungen des Bridgeadapters weg und stellt die Netzwerkkarte nur auf bridged, kann man die Virtuelle Maschine nicht starten, da Virtualbox wissen muss mit welcher Hardware-Netzwerkkarte die virtuelle Netzwerkkarte verbunden werden soll.

VBoxManage modifyvm “DebServer” -memory “2048MB” -acpi on -boot1 dvd -nic1 bridged -bridgeadapter1 eth0

Man muss darauf achten, dass man nic1 den bridgedadapter1 zuweist.

Eine virtuelle Festplatte mit dem Dateinamen DebServer.vdi und der Grösse von 1,1 TB erstellen und die Platte registrieren:

VBoxManage createvdi -filename “DebServer.vdi” -size 1100000 -register

Nun weisen wir die erstellte Festplatte unserer Virtuellen Maschine als erste Festplatte (hda) zu.

VBoxManage modifyvm “DebServer” -hda “DebServer.vdi”

Das zu Installierende Image runterladen, in der Virtuellen Maschine registrieren und der Virtuellen Maschine zuweisen:

cd /home/vmuser && wget http://cdimage.debian.org/debian-cd/5.0.3/i386/iso-cd/debian-503-i386-netinst.iso
VBoxManage registerimage dvd /home/vmuser/debian-503-i386-netinst.iso
VBoxManage modifyvm “DebServer” -dvd /home/vmuser/debian-503-i386-netinst.iso

Jetzt ist alles für den ersten Start eingerichtet.

4. Die Virtuelle Maschine starten und Debian installieren

Und wie soll ich jetzt das Debian installieren? Ich habe doch keinen Bildschirm? Dazu hat Virtualbox das selbstsprechende Programm VBoxHeadless. Startet man die Virtuelle Maschine mit diesem Befehl, wird ein RDP Server auf dem Standardport 3389 gestartet. Mit einem beliebigen Terminal Client können wir dann die Installation vornehmen. Da ich auf Linux Mint umgestiegen bin benutze ich rdesktop. Die Shell in der du das VBoxHeadless startest muss während der Installation offen bleiben. Wenn du sie schliesst geht die Virtuelle Maschine aus.

VBoxHeadless -startvm “DebServer”
lokal: rdesktop -a 16 -g 1024×768 <server>

5. Die Virtuelle Maschine starten

Nachdem wir mit dem Einrichten des Systems fertig und kein RDP mehr benötigen, starten wie dir Virtuelle Maschine mit dem Befehl “VBoxManage startvm DebServer”. Anschliessend können wir per SSH direkt auf unseren DebServer zugreifen (vorrausgesetzt wir haben das SSH-Paket installiert).

Kritik, Anregungen und Fehler bitte in die Comments schreiben.

Viel Spass mit deiner Virtuellen Maschine.

EDIT:

In der Version 3.1 haben sich einige Befehle geändert. Bei Nico könnt ihr die Befehle in seinem Artikel Ubuntu/Debian – VirtualBox 3.1 – VM ohne GUI auf der Shell erstellen und einrichten nachschlagen.

kostenlose Domain
und zuverlässiger Webspace der Spitzenklasse…

99,9 % Erreichbarkeit mit MySQL, PHP ausreichend Platz
und einem superschnellen Support. Shop und/oder CMS
(Content Management System) werden auf Wunsch vorinstalliert.

Klicken Sie hier, um alles zu erfahren …

Beiträge die für dich ebenfalls interessant sein können:

  1. Die Anführungszeichen im Artikel “ und ” müssen mit normalen ” ersetzt werden. Und die Eigenschaften werden nicht (mehr?) mit -memory sondern –memory eingestellt.

    Gruß

    Freedom

  2. @StrikeFreedom
    Hallo Freedom,

    danke für den Hinweis. Das Tutorial bezieht sich ja auch auf die Version 3.0.6. Ich habe ein aktuelleres Tutorial oben verlinkt.

  3. Hallo zusammen,

    da ich selbst was zu VirtualBox in der Shell fabriziert habe, habe ich natürlich auch mal ein wenig nach “Konkurrenz” gegoogelt…

    Hätte ich mal früher tun sollen ;-)

    Jedenfalls Lob und ein

    kleiner Tipp zu Punkt 4.:

    Mit dem Programm “screen” kann man verschiedene Terminalsitzungen in einem Fenster laufen lassen. Hier mal ein Ubuntu-Link: https://help.ubuntu.com/community/Screen

    Und falls es für euch von Interesse ist:
    http://www.mi-lan.de/?p=674
    ist mein Senf zum Thema…

    VG vom Mi-Lan