VirtualBox: Unterschied zwischen den Versionen
hinweis auf linux-headers | Andere Sprachen DE entfernt |
Dirk (Diskussion | Beiträge) K Verschiebung community -> extra |
||
Zeile 15: | Zeile 15: | ||
{{installation | {{installation | ||
|name=VirtualBox | |name=VirtualBox | ||
|repo= | |repo=extra | ||
|paket=virtualbox | |paket=virtualbox | ||
|zusatz=virtualbox-host-modules-arch virtualbox-guest-iso | |zusatz=virtualbox-host-modules-arch virtualbox-guest-iso |
Version vom 24. Mai 2023, 18:15 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.
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 [community] 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:
- siehe: Kernelmodule
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.
- Freien Festplattenplatz im Gastsystem mit Nullen überschreiben
- 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.