Beiträge getagged ‘VirtualBox’

Soundprobleme mit Windows 7 64bit als VirtualBox Gast

1 Januar 2010

Wer in SUNs VirtualBox ein Windows 7 als Gast installiert, hat mit dem Sound zumindest in der 32bit Version keine Probleme. Die simulierte Hardware ist ein Intel 82801AA AC’97 Audio Controller. Anders sieht es jedoch bei einem 64bit Windows 7 aus. Das erkennt die bereitgestellte Audio Hardware nicht.

Nach einiger Suche im Netz bin ich hinter des Rätsels Lösung gekommen. VirtualBox spendiert den virtuellen 64bit Gästen keine Intel Hardware sondern setzt dort auf eine emulierte Realtek Soundkarte. Was auch nicht weiter tragisch wäre, würde Windows 7 64bit die Hardware erkennen und einen geeigneten Treiber dafür installieren. Das war zumindest bei mir nicht der Fall.

Ergo musste ich von der Realtek Website einen Treiber für die AC’97 Audio Codecs (Software) herunterladen. Das gepackte ZIP Archiv enthält neben einigen Setups auch die Treiber für die manuelle Installation. Dazu wird das ZIP Archiv ausgepackt und anschließend im Gerätemanager für die nicht erkannte Soundkarte die Treiberaktualisierung aufgerufen.

Zum Installieren der eben heruntergeladenen Treiber muss auf dem Computer nach diesen gesucht werden. Dazu ist im nächsten Schritt der Ordner Vista64 aus den entpackten Dateien auszuwählen. Dort wird Windows 7 fündig und kann den richtigen Treiber installieren.

Danach präsentiert sich unser Windows 7 Gast mit funktionsfähiger Soundkarte.

Die Installation der nötigen Treiber ist nicht weiter tragisch, weiß man erst einmal um welchen Controller es sich handelt. Ich finde es nur schade, dass SUN versäumt hat für ihre 64bit Gäste einen Controller zu emulieren, den Windows 7 von Haus aus kennt. So wie sie es für die 32bit Gäste getan haben.

Dynamisch wachsende, virtuelle Festplatten verkleinern

21 Dezember 2009

In virtualisierten Umgebungen, bei denen es nicht unbedingt auf das letzte Fünkchen Performance ankommt, setze ich am liebsten dynamisch wachsende Festplatten ein. Das sind Festplatten, die je nach Speicherplatzbedarf der virtuellen Maschine bis zu einem maximalen Wert anwachsen können. So ist es möglich mehr virtuellen Festplattenplatz bereitzustellen, als physischer vorhanden ist. Eng wird es, wenn der physische Platz nicht mehr ausreicht. Dann kann das Verkleinern der virtuellen Festplatten eine mögliche Lösung sein.

Die meisten Dateisysteme haben die Angewohnheit, gelöschte Dateien nicht wirklich von der Festplatte zu putzen, sondern lediglich den Bereich, den die gelöschte Datei inne hatte, als wieder frei verfügbar zu markieren. Was bei physischen Festplatten meist keine Probleme bereitet, hat bei virtualisierten, dynamisch wachsenden zur Folge, dass die physische Datei, welche die virtuelle Festplatte enthält immer weiter wächst. Sie wächst soweit, bis die maximale Größe erreicht ist. Das heißt, eine virtuelle Festplatte der Größe 50GB kann physisch auch bis zu 50GB Plattenplatz einnehmen. Und das, obwohl in der virtualisierten Platte vielleicht nur 2 oder 3 GB belegt sind.

Aus Gründen der Performance sollte man die Größe virtueller Festplatten nicht verkleinern. Denn das spätere Vergrößern bei Bedarf im laufenden Betrieb kostet Zeit. Wer jedoch auf den Plattenplatz achten muss, kann die virtuelle Platte recht einfach verkleinern.

Als erstes muss der freie Platz in der virtuellen Maschine bereinigt werden. Bereinigt heißt in unserem Fall mit 0 beschreiben. Für Windows gibt es sdelete. Der Aufruf von

sdelete -z C:

leert den freien Speicherplatz der Festplatte. Für Linux übernimmt die Aufgabe zerofree. Damit zerofree arbeiten kann, darf die zu verkleinernde Partition nicht mit Schreibrechten gemountet sein. Also entweder komplett per umount aushängen oder falls das nicht möglich ist, im Nur-Lesen-Modus neu einhängen.

sudo aptitude install zerofree
zerofree /dev/sdb1

Nachdem der freie Platz mit Nullen überschrieben wurde, kann die virtuelle Festplatte verkleinert werden. Virtualisierer Nummer 1 VirtualBox bietet per VBoxManage die Möglichkeit eine Platte zu komprimieren.

VBoxManage modifyhd MeineVirtuellePlatte.vdi --compact

Auch VMWare bietet so eine Möglichkeit

vmware-vdiskmanager -k MeineVirutellePlatte.vmdk

Nach einiger Wartezeit sollte sich die Größe der virtuellen Festplattendatei verringert haben.

VirtualBox 3.1 macht für mich VMWare Workstation überflüssig

30 November 2009

Seit heute gibt es Version 3.1 von VirtualBox aus dem Hause Sun. Die frei verfügbare Virtualisierung ist schon länger meine erste Wahl für virtuelle Maschinen. Doch ein Killer-Feature hat mir bisher immer noch gefehlt. Eine annähernd geniale Verwaltung der Snapshots wie in VMWare Workstation. Dort können seit einigen Versionen sämtliche Snapshots wiederhergestellt und die Arbeit an dieser Stelle fortgesetzt werden. Das gab es so in VirtualBox bis Version 3.1 nicht. Dort konnte immer nur der letzte Snapshot wieder hergestellt werden. Doch nun ist VirtualBox 3.1 da und bringt genau diese Funtionalität mit. Und das ganze funktioniert auch, wie es soll. Perfekt. Nun kann ich meine Gedanken über einen eventuellen Kauf der VMWare Workstation Bord schmeißen.

verzweigte Snapshots in VirtualBox 3.1

verzweigte Snapshots in VirtualBox 3.1

Und wozu braucht man diese verzeigten Snapshots eigentlich? Nun ganz einfach. Im Bild sind die Snapshots meiner Windows7-VM zu sehen. Da ich nur eine Lizenz besitze, darf ich Windows7 auch nur einmal installieren und registrieren. Doch was hindert mich daran verschiedene Zustände dieser VM zu sichern und jederzeit wieder herzustellen? Genau. Mit VirtualBox 3.1 nichts mehr :) Und genau das mache ich mir auch zu Nutze, indem ich einen Zweig für eine Entwicklungsmaschine und einen weiteren für eine Officemaschine nutze. Ein dritter Zweig wird eine saubere Installation von Windows7 sein, auf der ich verschiedene Programme testen kann, ohne Gefahr zu laufen, eine meiner anderen Zweige (Entwicklung und Office) zu zerschießen. Immer schön getrennt voneinander :)

Achja: VirtualBox 3.1 bietet natürlich nicht nur die verbesserte Snapshotverwaltung. So laufen auch 64bit Gäste wesentlich schneller, was ich mit einem Start meiner Windows Server 2008 R2 VM bestätigen kann. Ein weiteres Killerfeature dürfte das Veschieben von VMs zur Laufzeit von einem auf einen anderen Host sein. Das konnte ich mangels Hardware noch nicht testen, ist aber in der Virtualisierung ein sehr gern gesehenes Feature.

Mich begeistert VirtualBox seit Version 2.x immer weider aufs neue. Zum einen gibt es eine, wenn auch in der Funktionalität etwas abgespeckte, Open Source Version von VirtualBox und zum anderen für den privaten Gebrauch eine voll ausgestattete private Version. Ich sehe im Moment keinen Grund (mehr) auf eine andere Desktopvirtualisierung umzusteigen. Übersehe ich etwas? Gibt es Funktionen die ich bisher nichte kannte, auf dem Desktop aber unerlässlich sind? Wenn ja klärt mich bitte auf :)

Virtuelle VMWare Maschine mit VirtualBox öffnen

14 November 2009

Viele virtuelle Maschinen, die zum Herunterladen angeboten werden, liegen als VMWare Maschinen vor. Was tun, wenn man aber VirtualBox als Virtualisierungslösung einsetzt?

VirtualBox kann seit einigen Versionen das virtuelle Festplattenformat von VMWare lesen, nicht jedoch die virtuelle Maschine selber. Da bleibt nur Handarbeit übrig. So zum Beispiel beim Öffnen von Google Chrome OS 0.4.223 Beta mit VirtualBox.

Chrome OS in VirtualBox

Chrome OS in VirtualBox

Als erstes wird die virtuelle Festplatte (.vmdk) an den Ort kopiert, wo normalerweise die Festplattenimages von VirtualBox liegen. Das ist meistens im Ordner ~/.VirtualBox/HardDisks. Als nächstes wird das eben kopierte Festplattenimage in Manager für virtuelle Fesplatten bekannt gemacht. Danach wird eine neue virtuelle Maschien ohne Festplatte erzeugt. Nun bleibt nur noch, die Einstellungen aus der VMWare Maschine in die eben neu erstellte zu übernehmen. Dazu wird die .vmx Datei in einem Texteditor geöffnet und die Parameter aus dieser Datei in die eben erstellte VirtualBox Maschine übernommen.

Im Fall von Google Chrome OS sind das 512MB Ram, Suse als Gastsystem, eine Netzwerkkarte sowie ein SCSI-Device für die Festplatte. Beim Erstellen der Festplatte wird ein LSILogi SCSI Gerät hinzugefügt und das oben kopierte Festplattenimage daran gebunden.

Nach den erfolgten Einstellungen kann die virtuelle Maschine gestartet werden.

VirtualBox VDI vergrößern

12 März 2009

Heute war es soweit. Die virtuelle Festplatte meiner Entwicklermaschine war übervoll. Leider bietet der VirtualBox noch keine Möglichkeit, virtuelle Fesplatten zu vergrößern. Ein entsprechendes Ticket existiert zwar, ist jedoch auch schon 2 Jahre alt. Ob es die Funtion jemals in ein Release schaffen wird? Wir werden sehen.

Was kann ich also tun, um meinem virtuellen XP etwas mehr Platz zu verschaffen? So einfach wie mit dem VMWare Converter ist die Geschichte bei VirtualBox nicht.

Als erstes benötige ich ein ISO-Image von GParted Live. Dann lege ich in der virtuellen Maschine eine neue Festplatte gewünschter Größe an und binde diese als primären Slave in die VM ein.

Neue virtuelle Festplatte einbinden

Neue virtuelle Festplatte einbinden

Danach definiere ich das GParted-ISO als CD-Abbild zum Starten desselben.

GParted CD-Abbild einbinden

GParted CD-Abbild einbinden

Und nun kann es auch schon losgehen. Ich starte GParted und wähle in dem GUI die zweite Festplatte, in meinem Fall /dev/hdb aus und erstelle als erstes eine Partitionstabelle vom Typ msdos. Danach lege ich eine NTFS-Partition an, die etwas größer ist als die alte Platte. Jedoch nutze ich nicht den ganzen zur Verfügung stehenden Speicherplatz, da ich später die Partition nochmals in der Größe anpassen muss.

Neue NTFS-Partition erstellen

Neue NTFS-Partition erstellen

Als nächstes kopiere ich den Inhalt der alten Platte von /dev/hda1 auf die neue auf /dev/hdb1 mittels

dd if=/dev/hda1 of=/dev/hdb1

Das dauert ein paar Minuten. Nachdem der Rechner mit dem Kopieren fertig ist, starte ich wieder GParted und vergößere die NTFS-Partition der neuen Platte auf die volle Größe.

Größe der NTFS-Partition ändern

Größe der NTFS-Partition ändern

Danach beende ich die GParted-live und fahre die virtuelle Maschine herunter. Das CD-Abbild hänge ich aus und starte Windows. XP erkennt die neue Platte und führt auf dieser einen Festplattencheck aus, den ich auch durchlaufen lasse.

CHKDSK beim ersten Windows-Start

CHKDSK beim ersten Windows-Start

Nachdem Windows gestartet ist, muss ich die neue Partition über die Datenträgerverwaltung noch als aktiv markieren, um von dieser Partition später den Rechner starten zu können.

Neue Partition als aktiv markieren

Neue Partition als aktiv markieren

Nun habe ich es fast geschafft. Jetzt kann ich Windows wieder herunterfahren um danach die alte Platte aus der virtuellen Maschine zu entfernen und die neue als primären Master zu hinterlegen. Danach Windows hochgefahren und die erkannte Hardware installieren lassen. Nach einem Reboot steht mir meine VM mit mehr Speicherplatz zur Verfügung.

Uff, geschafft. Da geht das Vergrößern einer virtuellen Platte mit dem VMWare Converter deutlich einfacher. Dafür ist VirtualBox jedoch Open Source bzw. kostenlos :)

Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Deutschland
This work by Andreas Richter is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Deutschland.