VirtualBox: Unterschied zwischen den Versionen

Aus wiki.archlinux.de
(Hinweis für die Neuerstellung der Module)
(Aufsetzung von OVAs)
 
(30 dazwischenliegende Versionen von 15 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
{{righttoc}}
{{righttoc}}
[[Bild:Sun_VirtualBox_2.2.2.png|thumb|280px|Sun VirtualBox 2.2.2]]
Virtualbox ist eine von der Firma Innotek entwickelte Software zur Virtualisierung. Mit Virtualbox ist es möglich weitere Betriebssysteme (Gast) wie ein normales Programm auf seinem Rechner laufen zu lassen. Virtualbox steht in 2 Versionen bereit, einer Open-Source-Edition (OSE) und einer Closed-Source-Edition, die unter bestimmten Bedingungen kostenlos verwendet werden darf.


Einige Features fehlen der OSE-Version
VirtualBox ist eine von der Firma Innotek entwickelte Software zur Virtualisierung. Die Firma wurde 2008 von SUN übernommen, welche wiederum von Oracle gekauft wurde.


*Remote Display Protocol (RDP) Server
{{wikipedia|VirtualBox}} Oracle VM VirtualBox ist eine Virtualisierungssoftware des US-amerikanischen Unternehmens Oracle. Sie kann auf den Betriebssystemen FreeBSD[3], Linux, OS/2, Mac OS X, Solaris und Windows als Wirtssystem auf 32-Bit- oder 64-Bit-x86-Systemen eingesetzt werden. Als Gastsysteme werden eine Vielzahl an x86-Betriebssystemen unterstützt. Diese stehen bei der Einrichtung einer neuen virtuellen Maschine zur Auswahl.
*USB Unterstützung (fehlt nicht mehr in Version 4.0.4)
*USB über RDP
*ISCSI Unterstützung


== Installation ==
VirtualBox 5.0 (major update)
Es stehen zwei Möglichkeiten der Installation zur Auswahl, diese beziehen sich auf die Open-Source-Edition oder die Closed-Source-Edition.
VirtualBox 4.3 (security fixes and important fixes)
VirtualBox 4.2 (security fixes and important fixes)
VirtualBox 4.1 (security fixes and very important fixes)
VirtualBox 4.0 (security fixes only)
VirtualBox 3.2 (security fixes only)
VirtualBox 3.1 - 1.6 (legacy, no longer supported)


=== Open-Source-Edition ===
{{installation
Die OSE-Version befindet sich im „Community“-Repository und wird aus diesem mittels [[Pacman]] installiert.
|name=VirtualBox
|repo=extra
|paket=virtualbox
|zusatz=virtualbox-host-modules-arch virtualbox-guest-iso
|zusatzinfo=Kernelmodule für den Host und Zusatzprogramme als ISO für den Gast}}


pacman -S virtualbox
{{hinweis|Des weiteren sollte {{Paket|linux-headers}} bzw für LTS {{Paket|linux-lts-headers}} installiert sein da so bei einem Update von der VirtualBox oder eines Kernels die Kernel Module automatisch neu kompiliert werden.}}


Die nötigen Module werden automatisch mitinstalliert.
=== Vorbereitung ===
 
Nach der Installation muss der Benutzer mit dem VirtualBox verwendet werden soll, der Gruppe {{ic|vboxusers}} hinzugefügt werden.
=== Closed-Source-Edition ===
Zur Closed Source Edition befindet sich ein [http://aur.archlinux.org/packages.php?ID=51727 PKGBUILD] im [[AUR]].
 
=== Vorbereitung zur Verwendung ===
Nach der Installation muss der Useraccount mit dem VirtualBox verwendet werden soll, der Gruppe <code>vboxusers</code> hinzugefügt werden.


  gpasswd -a USERNAME vboxusers
  gpasswd -a USERNAME vboxusers


Das Modul <code>vboxdrv</code> muss in das MODULES-Array in der [[rc.conf]] eingetragen werden, dadurch wird es beim Systemstart automatisch geladen, und man muss es nicht jedes mal manuell mittels  …
==== Notwendiges Modul vboxdrv ====
 
Das Modul {{ic|vboxdrv}} muss manuell geladen werden. Soll es bei jedem Systemstart automatisch geladen werden muss es in eine Datei in {{ic|/etc/modules-load.d/}} eingetragen werden. Siehe [[Kernelmodule#Module_beim_Systemstart_automatisch_laden|Kernelmodule]]
modprobe vboxdrv
 
… starten, wenn man VirtualBox verwenden möchte.
 
Nach einem Kernelupdate oder dem Einfügen eines eigenen Kernels müssen die Kernelmodule von Virtualbox neu erstellt werden, dies geschieht mittels folgenden Befehls.


rc.d setup vboxdrv
===== Kernel Update =====
Bei der Version aus dem [extra] Repo muss, bei Verwendung des Arch-Standard- oder LTS-Kernels, nichts weiter beachtet werden. Die nötigen Module werden als Abhängigkeiten mit aktualisiert.  


Sollte es dabei eine Fehlermeldung wegen fehlender Kernel-Sourcen geben, muss das Paket <code>kernel26-headers</code> installiert werden.
Bei der {{AUR|virtualbox-bin|binären Version}} aus dem [[AUR]] muss bei einem Kernelupdate das Modul neu gebaut werden. Das erledigt der dkms-Service, der als Abhängigkeit mit installiert wird. Auch die nötigen Kernel Quelldateien (linux-headers) werden als Abhängigkeit mit installiert.


'''HINWEIS:''' Dieses Vorgehen (Neuerstellen der Kernelmodule) gilt nur für die Virtualbox-Variante aus dem AUR. Die VB-Version aus dem Community-Repository bedarf keiner Neuerzeugung der Module, da es fertige Module mit bringt. Somit gibt es auch kein ''/etc/rc.d/vobxdrv'' .
# systemctl enable dkms


== Konfiguration ==
== Konfiguration ==
Hier werden verschiedene Konfigurationsmöglichkeiten für den Wirt und Gast beschrieben
Hier werden verschiedene Konfigurationsmöglichkeiten für Host und Guest beschrieben.


=== Netzwerk über HostInterface (dynamisch) ===
=== Netzwerk über HostInterface (dynamisch) ===
Diese Konfiguration macht das Gastsystem zu einem vollwertigen Client im lokalen Netzwerk, das heißt, er bekommt eine IP-Adresse die im Gegensatz zu NAT auch von anderen Systemen erreichbar ist. Dazu müssen einfach die Kernel-Module <code>vboxnetflt</code> und <code>vboxnetadp</code> geladen werden. Unter den Client-Einstellungen wählt man dann „Netzwerkbrücke“ aus. Mehr ist nicht erforderlich. Der Virtualbox wird automatisch über DHCP eine IP zugewiesen.
Diese Konfiguration macht das Gast-System zu einem vollwertigen Client im lokalen Netzwerk, das heißt dieser bekommt eine IP-Adresse die im Gegensatz zu NAT auch von anderen Systemen erreichbar ist. Dazu müssen die Kernelmodule <code>vboxnetflt</code> und <code>vboxnetadp</code> geladen werden. Unter den Client-Einstellungen (Guest) wählt man dann „Netzwerkbrücke“ aus. VirtualBox wird automatisch seitens Host-System über DHCP eine IP-Adresse zugewiesen.
 
Zum manuellen Laden der Module:


Zum aktivieren der Module:
# modprobe vboxnetflt
# modprobe vboxnetadp


modprobe vboxnetflt
ausführen.
modprobe vboxnetadp


Diese können auch in der /etc/rc.conf am Ende eingefügt werden. Somit werden die Module bei jedem Systemstart automatisch geladen.
Automatisches Laden beim Systemstart:
*siehe: [[Kernelmodule#Module_beim_Systemstart_automatisch_laden | Kernelmodule]]


== VMware-Images konvertieren ==
== VMware-Images konvertieren ==
Zum Konvertieren von VMware-Images in VirtualBox-Images ist voraussetzung, dass [[QEMU]] installiert ist, und das die VMwareTools ''nicht'' installiert sind.
Zum Konvertieren von VMware-Images in VirtualBox-Images ist Voraussetzung, dass [[QEMU]] installiert ist, und das die VMwareTools ''nicht'' installiert sind.


Da VMware mit Images in form von SCSI-Platten arbeitet muss für die Benutzung in VirtualBox erst mal ein IDE Treiber installiert werden. Hierzu legt man ein kleines IDE-Platten-Image für die VM an, und bindet diese ein, danach startet man die VM. Das System in der VM erkennt die Platte und installiert die nötigen Treiber.
Da VMware mit Images in Form von SCSI-Platten arbeitet muss für die Benutzung in VirtualBox erst mal ein IDE Treiber installiert werden. Hierzu legt man ein kleines IDE-Platten-Image für die VM an, und bindet diese ein, danach startet man die VM. Das System in der VM erkennt die Platte und installiert die nötigen Treiber.


=== Windows-2000- und Windows-2003-Server-Images ===
=== Windows-2000- und Windows-2003-Server-Images ===
Zeile 72: Zeile 70:
  qemu-img convert single_vmware-image.vmdk raw-image.bin
  qemu-img convert single_vmware-image.vmdk raw-image.bin
  VBoxManage convertdd raw-image.bin vbox-image.vdi
  VBoxManage convertdd raw-image.bin vbox-image.vdi
== Dynamisches VDI Image - freien Platz freigeben ==
Ein dynamisches VDI Image belegt immer soviel Platz wie gerade benötigt wird. Löscht man im Gast-System allerdings Dateien, behält das VDI Image die vorherige Größe. Es wird also nicht wieder verkleinert und belegt mehr Platz auf der Festplatte des Host-Systems als nötig. Man kann allerdings mit etwas manuellem Aufwand das VDI Image wieder verkleinern. Dazu sind zwei Schritte notwendig.
# Freien Festplattenplatz im Gastsystem mit Nullen überschreiben
# VDI Image manuell verkleinern
'''Beispiel:''' Host = Linux, Gast = WindowsXP
1.<br>
Windows XP starten, Festplatte defragmentieren und freien Platz mit Nullen überschreiben.
Dazu kann man unter Windows z.B. das Programm [http://technet.microsoft.com/de-de/sysinternals/bb897443 SDelete] verwenden.
sdelete.exe -z
2.<br>
Windows XP runterfahren und Virtualbox beenden.
Jetzt kann man in einem Terminal das VDI Image auf die tatsächlich benötigte Größe verkleinern.
VBoxManage modifyhd -compact /Pfad/zum/VDI-Image/Image.vdi
== USB-Sticks in VM einhängen ==
Um USB2.0-Sticks in einer virtuellen Maschine einhängen zu können, muss in den Einstellungen der VM unter USB der entsprechende Haken bei <code>USB-2.0 Controller aktivieren</code> gesetzt sein.
Dafür muss das Paket {{AUR|virtualbox-ext-oracle}} aus dem [[AUR]] installiert sein.
== Aufsetzen von VMS via OVA ==
Im Hauptmenu unter <code>Tools</code> auf <code>Import</code> gehen und von dort aus die OVA datei vom System auswählen. Diese kann je nach System schon gestartet werden, wo bei einigen anderen OVA's wie z.B. beim [https://www.cisco.com/c/en/us/td/docs/routers/csr1000/software/configuration/b_CSR1000v_Configuration_Guide/b_CSR1000v_Configuration_Guide_chapter_011.html#con_1314570 csr1000] einige Vorkonfigurationen verwendet werden können.
=== ISO Modifikation der OVA ===
Die OVA beinhaltet immer eine eigene ISO. Die Inhalte lassen sich ersetzen durch eine Bereits andere ISO von einer gleichen oder ähnlichen OVA Image. Daher musst die vorherige ISO der verwendeten OVA Vorgang entfernt werden.
# In <code>Settings</code> der VM gehen wo die OVA sich befindet gehen.
# Auf <code>Storage</code> gehen und die alte iso mit den ähnlichen z.B. <code>csr1000v-universalk9_install_for_Virtualbox.iso</code> oder gleichen Namen der anderen ISO des anderen OVA's entfernen mit rechter Maustaste <code>remove Attachment</code>.
# Die andere ISO des anderen OVA's z.B. <code>csr1000v-universalk9.16.09.05.iso</code> unter <code>Controller IDE</code> eintragen.
# In der grafischen Ansicht unterhalb des <code>Controller IDE</code> die Bootreihenfolge via <code>Optical Drive</code> bei der <code>Attributes</code> ändern, sodass die ISO in diesen Beispiel <code>csr1000v-universalk9.16.09.05.iso</code> als erstes gestartet wird.
# Auf <code>OK</code> gehen.
Die VM kann nun gestartet werden mit der vorkonfigurierten ISO.


== Weblinks ==
== Weblinks ==
Zeile 77: Zeile 109:
*[http://www.virtualbox.org/wiki/VirtualBox_PUEL Bedingungen der kostenlosen Nutzung] {{sprache|en}}
*[http://www.virtualbox.org/wiki/VirtualBox_PUEL Bedingungen der kostenlosen Nutzung] {{sprache|en}}
*[http://forums.virtualbox.org/viewtopic.php?t=364&postdays=0&postorder=asc&start=17 Virtuelle Festplatte nachträglich vergrößern] {{sprache|en}}
*[http://forums.virtualbox.org/viewtopic.php?t=364&postdays=0&postorder=asc&start=17 Virtuelle Festplatte nachträglich vergrößern] {{sprache|en}}
[[Kategorie: Virtualisierung]]
[[Kategorie: Virtualisierung]]
[[cs:VirtualBox]]
[[el:VirtualBox]]
[[en:VirtualBox]]
[[es:VirtualBox]]
[[fr:VirtualBox]]
[[hu:VirtualBox]]
[[it:VirtualBox]]
[[ja:VirtualBox]]
[[pt:VirtualBox]]
[[ru:VirtualBox]]
[[zh-CN:VirtualBox]]

Aktuelle Version vom 29. September 2023, 15:41 Uhr

VirtualBox ist eine von der Firma Innotek entwickelte Software zur Virtualisierung. Die Firma wurde 2008 von SUN übernommen, welche wiederum von Oracle gekauft wurde.

VirtualBox Oracle VM VirtualBox ist eine Virtualisierungssoftware des US-amerikanischen Unternehmens Oracle. Sie kann auf den Betriebssystemen FreeBSD[3], Linux, OS/2, Mac OS X, Solaris und Windows als Wirtssystem auf 32-Bit- oder 64-Bit-x86-Systemen eingesetzt werden. Als Gastsysteme werden eine Vielzahl an x86-Betriebssystemen unterstützt. Diese stehen bei der Einrichtung einer neuen virtuellen Maschine zur Auswahl.

VirtualBox 5.0 (major update)
VirtualBox 4.3 (security fixes and important fixes)
VirtualBox 4.2 (security fixes and important fixes)
VirtualBox 4.1 (security fixes and very important fixes)
VirtualBox 4.0 (security fixes only)
VirtualBox 3.2 (security fixes only)
VirtualBox 3.1 - 1.6 (legacy, no longer supported)

Installation

VirtualBox ist als virtualbox in extra verfügbar, und kann von dort mittels Pacman installiert werden.

# VirtualBox an sich
pacman -S virtualbox

# Kernelmodule für den Host und Zusatzprogramme als ISO für den Gast
pacman -S virtualbox-host-modules-arch virtualbox-guest-iso

Hinweis: Des weiteren sollte linux-headers bzw für LTS linux-lts-headers installiert sein da so bei einem Update von der VirtualBox oder eines Kernels die Kernel Module automatisch neu kompiliert werden.

Vorbereitung

Nach der Installation muss der Benutzer mit dem VirtualBox verwendet werden soll, der Gruppe vboxusers hinzugefügt werden.

gpasswd -a USERNAME vboxusers

Notwendiges Modul vboxdrv

Das Modul vboxdrv muss manuell geladen werden. Soll es bei jedem Systemstart automatisch geladen werden muss es in eine Datei in /etc/modules-load.d/ eingetragen werden. Siehe Kernelmodule

Kernel Update

Bei der Version aus dem [extra] Repo muss, bei Verwendung des Arch-Standard- oder LTS-Kernels, nichts weiter beachtet werden. Die nötigen Module werden als Abhängigkeiten mit aktualisiert.

Bei der binären VersionAUR aus dem AUR muss bei einem Kernelupdate das Modul neu gebaut werden. Das erledigt der dkms-Service, der als Abhängigkeit mit installiert wird. Auch die nötigen Kernel Quelldateien (linux-headers) werden als Abhängigkeit mit installiert.

# systemctl enable dkms

Konfiguration

Hier werden verschiedene Konfigurationsmöglichkeiten für Host und Guest beschrieben.

Netzwerk über HostInterface (dynamisch)

Diese Konfiguration macht das Gast-System zu einem vollwertigen Client im lokalen Netzwerk, das heißt dieser bekommt eine IP-Adresse die im Gegensatz zu NAT auch von anderen Systemen erreichbar ist. Dazu müssen die Kernelmodule vboxnetflt und vboxnetadp geladen werden. Unter den Client-Einstellungen (Guest) wählt man dann „Netzwerkbrücke“ aus. VirtualBox wird automatisch seitens Host-System über DHCP eine IP-Adresse zugewiesen.

Zum manuellen Laden der Module:

# modprobe vboxnetflt
# modprobe vboxnetadp

ausführen.

Automatisches Laden beim Systemstart:

VMware-Images konvertieren

Zum Konvertieren von VMware-Images in VirtualBox-Images ist Voraussetzung, dass QEMU installiert ist, und das die VMwareTools nicht installiert sind.

Da VMware mit Images in Form von SCSI-Platten arbeitet muss für die Benutzung in VirtualBox erst mal ein IDE Treiber installiert werden. Hierzu legt man ein kleines IDE-Platten-Image für die VM an, und bindet diese ein, danach startet man die VM. Das System in der VM erkennt die Platte und installiert die nötigen Treiber.

Windows-2000- und Windows-2003-Server-Images

Nachdem Windows den IDE Treiber installiert hat, aus C:\WINNT\Driver Cache\i386 die halacpi.dll aus dem drivers.cab (bzw. spN.cab falls Servicepack N installiert ist) nach C:\WINNT\system32\hal.dll kopieren und die alte Datei überschreiben.

Falls mehrere .vmdk files von einer Maschine vorhanden sind müssen diese erst in einer Datei zusammengeführt werden:

vmware-vdiskmanager -r source_multiples.vmdk -t 0 single_file.vmdk

Danach kann man die .vmdk mit VirtualBox booten, wenn man die Snapshot-Funktion verwenden möchten muss man das Image nach .vdi konvertieren.

qemu-img convert single_vmware-image.vmdk raw-image.bin
VBoxManage convertdd raw-image.bin vbox-image.vdi

Dynamisches VDI Image - freien Platz freigeben

Ein dynamisches VDI Image belegt immer soviel Platz wie gerade benötigt wird. Löscht man im Gast-System allerdings Dateien, behält das VDI Image die vorherige Größe. Es wird also nicht wieder verkleinert und belegt mehr Platz auf der Festplatte des Host-Systems als nötig. Man kann allerdings mit etwas manuellem Aufwand das VDI Image wieder verkleinern. Dazu sind zwei Schritte notwendig.

  1. Freien Festplattenplatz im Gastsystem mit Nullen überschreiben
  2. VDI Image manuell verkleinern

Beispiel: Host = Linux, Gast = WindowsXP

1.
Windows XP starten, Festplatte defragmentieren und freien Platz mit Nullen überschreiben. Dazu kann man unter Windows z.B. das Programm SDelete verwenden.

sdelete.exe -z

2.
Windows XP runterfahren und Virtualbox beenden. Jetzt kann man in einem Terminal das VDI Image auf die tatsächlich benötigte Größe verkleinern.

VBoxManage modifyhd -compact /Pfad/zum/VDI-Image/Image.vdi

USB-Sticks in VM einhängen

Um USB2.0-Sticks in einer virtuellen Maschine einhängen zu können, muss in den Einstellungen der VM unter USB der entsprechende Haken bei USB-2.0 Controller aktivieren gesetzt sein.

Dafür muss das Paket virtualbox-ext-oracleAUR aus dem AUR installiert sein.

Aufsetzen von VMS via OVA

Im Hauptmenu unter Tools auf Import gehen und von dort aus die OVA datei vom System auswählen. Diese kann je nach System schon gestartet werden, wo bei einigen anderen OVA's wie z.B. beim csr1000 einige Vorkonfigurationen verwendet werden können.

ISO Modifikation der OVA

Die OVA beinhaltet immer eine eigene ISO. Die Inhalte lassen sich ersetzen durch eine Bereits andere ISO von einer gleichen oder ähnlichen OVA Image. Daher musst die vorherige ISO der verwendeten OVA Vorgang entfernt werden.

  1. In Settings der VM gehen wo die OVA sich befindet gehen.
  2. Auf Storage gehen und die alte iso mit den ähnlichen z.B. csr1000v-universalk9_install_for_Virtualbox.iso oder gleichen Namen der anderen ISO des anderen OVA's entfernen mit rechter Maustaste remove Attachment.
  3. Die andere ISO des anderen OVA's z.B. csr1000v-universalk9.16.09.05.iso unter Controller IDE eintragen.
  4. In der grafischen Ansicht unterhalb des Controller IDE die Bootreihenfolge via Optical Drive bei der Attributes ändern, sodass die ISO in diesen Beispiel csr1000v-universalk9.16.09.05.iso als erstes gestartet wird.
  5. Auf OK gehen.

Die VM kann nun gestartet werden mit der vorkonfigurierten ISO.

Weblinks