Virtualbox (3)

Nu we usb op de rit hebben wil ik eigenlijk ook wel wat geluid horen vanuit Windows XP. Wat ik in Windows XP ook verander, het heeft geen effect. Zal er dan een instelling te doen zijn aan de kant van Virtualbox?

Inderdaad, als ik de host driver verander van Null Audio Driver naar OSS Audio Driver dan werkt alles ineens wel. Eigenlijk ook wel logisch als je naar de oorspronkelijke waarde kijkt…

Andere mogelijkheden waren trouwens ALSA en Pulseaudio

Virtualbox (2)

Blijkbaar is de aanpassing in Kubuntu om USB werkend te krijgen niet voldoende geweest. Ik kan namelijk in Windows XP geen USB apparaten actief zetten. Maar eens kijken of we kunnen vinden waar het probleem zit. Via het irc kanaal waar de supporters van virtualbox zitten kom ik iets verder:

tecumseh@Athlan:~$ VBoxManage list usbhost
VirtualBox Command Line Management Interface Version 1.6.0
(C) 2005-2008 Sun Microsystems, Inc.
All rights reserved.

Host USB Devices:

UUID:               9aa0fa6c-86f4-4386-0baf-44f5980bbf5b
VendorId:           0x046d (046D)
ProductId:          0x08a2 (08A2)
Revision:           1.0 (0100)
Address:            /proc/bus/usb/002/003
Current State:      Unavailable

Ik heb het lijstje iets ingekort, er werden namelijk 4 aangesloten apparaten aangetroffen. Allemaal hadden ze als “Current State” Unavailable staan.

Ik had toch echt het bestand /etc/init.d/mountdevsubfs.sh aangepast zoals in dit bericht te lezen is. De pc heeft de afgelopen nacht uitgestaan dus een herstart heeft ie zeker gehad.

Blijkbaar is er of in Kubuntu wat verandert met de versie die ik nu draai (Hardy 8.04 vs Gutsy 7.10) of in virtualbox 1.6.0 vs 1.5.6. Volgens de mensen op irc moet ik in de fstab nog een regel toevoegen en vervolgens herstarten:

cat /etc/group | grep vbox

Hiermee achterhalen we het groepnummer om die vervolgens in de fstab te gebruiken:

none /proc/bus/usb usbfs devgid=120,devmode=664 0 0

Eigenwijs als ik ben wil ik het geheel proberen zonder een reboot. Als eerste dus het afsluiten van de virtualmachine en dan een sudo mount -a ingeven. Hiermee zou toch de boel goed moeten staan. Blijkbaar niet want virtualbox geeft niet thuis. Dan toch maar een herstart doen waarna het geheel helemaal volgens plan werkt.

Windows XP SP3

Wellicht een wat vreemd bericht op dit blog. Het gaat namelijk bijna allemaal over Linux en dan specifiek om Debian en een daarvan afgeleide distributie. Een Microsoft product is dan een vreemde eend in de bijt. Maar zoals ik in mijn vorige bericht al noemde heb ik Virtualbox geïnstalleerd en wordt die onder andere gebruikt voor een Windows installatie. Aangezien Microsoft sinds kort een nieuw service pack heeft uitgebracht leek het me tijd om hiervan een geslipstreamde iso te maken. Scheelt weer een berg rotzooi die de losse updates achterlaten.

De configuratiedirectory van Virtualbox is nog maagdelijk leeg, 2 dat bestanden die waarschijnlijk voor de registratie zijn en een xml bestand voor de configuratie. Om de juiste rechtenstructuur voor virtualbox te behouden maak ik eerst een nieuwe Virtual machine aan waarin ik straks de nieuwe Windows ga installeren. Ik kies hierbij voor het aanmaken van een nieuw harde schijfbestand met een dynamische grootte die maximaal 4,0 GiB bedraagt. Deze past dan zowiezo netjes op een DVD maar neemt geen onnodige ruimte in beslag. Zo maak je een herinstallatie heel simpel in de toekomst.

Voor het maken van de aangepaste iso zal ik eerst de oude Windows installatie moeten starten. Door het kopieren van het VDI bestand (geen idee waar de afkorting voor staat) en het aanmaken van een 2e virtualmachine genaamd “Windows XP (oud) die ik de standaard instellingen meegeef kan ik deze gaan starten.

Ik krijg hierbij een foutmelding dat de usb proxy service niet geladen kan worden. Ik herinner mij dat ik dit probleem inderdaad eerder tegengekomen ben. Even met google zoeken naar de foutmelding helpt me vlot verder. Ik moet het bestand /etc/init.d/mountdevsubfs.sh aanpassen en wel de volgende regels:

        #
        # Magic to make /proc/bus/usb work
        #
        #mkdir -p /dev/bus/usb/.usbfs
        #domount usbfs "" /dev/bus/usb/.usbfs -obusmode=0700,devmode=0600,listmo$
        #ln -s .usbfs/devices /dev/bus/usb/devices
        #mount --rbind /dev/bus/usb /proc/bus/usb

Moeten veranderen in:

        #
        # Magic to make /proc/bus/usb work
        #
        mkdir -p /dev/bus/usb/.usbfs
        domount usbfs "" /dev/bus/usb/.usbfs -obusmode=0700,devmode=0600,listmo$
        ln -s .usbfs/devices /dev/bus/usb/devices
        mount --rbind /dev/bus/usb /proc/bus/usb

Helaas krijg ik bij het starten van de Virtualmachine steeds weer een BSOD te zien die vlot weer wegflitst omdat het geheel reboot. Tijdens het voorbij flitsen kan ik uiteindelijk een klein deel van de foutmelding opvangen die me aangeeft dat Windows XP de harde schijf niet wil kennen. Over naar plan B.

Ik leen even de pc van mijn vrouw om in haar wel werkende virtual machine nlite te installeren. Hiermee kan ik dan een geslipstreamde iso gaan maken. Ik loop wel tegen wat kleine problemen aan wat betreft schijfruimte. Ik moet namelijk ruimte hebben voor het Service Pack (300MiB), de originele installatiebestanden (530 MiB) en de te maken iso van pak en beet 700 MiB. Daarnaast zal er ook wel wat ruimte nodig zijn voor tijdelijke bestanden. Ook zij heeft een klein harde schijfje in de virtuele Windows dus ik moet wat opruimen. Nu dat gefixed is kan ik eindelijk beginnen om de boel voor elkaar te maken. Ik kies er hierbij gelijk voor om wat voorinstellingen alvast mee te geven. Scheelt me weer wat configureren straks. De gemaakte iso kopieren we vervolgens via de Shared Folders van Virtualbox naar het hostsysteem om die vervolgens met scp naar mijn systeem over te sluizen.

Hierna nog het installeren van XP wat hoofdzakelijk een kwestie van wachten is. Tot nu toe heb ik enkel nog de vraag gehad over de partitieindeling en formatering. Na deze lange wachttijd wordt windows opnieuw gestart en zoals verwacht automagisch geconfigureerd naar mijn wensen. Nu nog even de Virtualbox Guest additions installeren. Hierin zitten onder andere drivers voor de (virtuele) netwerkkaart en de videokaart. Heel grappig hieraan is dat mijn resolutie van windows automatisch meeschaald als ik het venster groter of kleiner sleep. Momenteel heeft windows een uiterst vreemde resolutie van 992×679 pixels. Ook dingen als de “seamless mode” waarbij de geactiveerde windows vensters gewoon tussen de andere vensters van het hostsysteem komen te staan werkt nu.

Als laatste voor vandaag nog even een gemaakte share folder mounten zodat ik bestanden uit kan wisselen met het hostsysteem. Hiervoor maak ik in mijn home directory een folder Share aan en die voeg ik in Virtualbox toe. In Windows kan ik vervolgens vanuit de netwerkomgeving onder het kopje “VirtualBox Shared Folders” mijn share vinden als \\VBOXSVR\Share en die vervolgens aankoppelen.

Virtualbox

Vanwege het warme weer komen de updates momenteel wat verder uit elkaar. Ik zit namelijk ook weleens in de tuin. Maar vanavond heb ik weer tijd gemaakt om verder te gaan met het klaarmaken van mijn systeem.

Voor een laatste paar toepassingen waarvoor ik nog geen opensource vervanger heb kunnen vinden en voor het testen van een aantal zaken onder windows en internet explorer installeer ik Virtualbox

Hiervan zijn 2 major versies, de OSE (Open Source Edition) en de full Edition. Het verschil zit hem hier in de licentievoorwaarden en een aantal extra features in de full Edition die ik toch niet kan missen. Hieronder zit namelijk ook USB support. En 1 van de zaken die ik nog niet voor elkaar heb gekregen onder Kubuntu is het uitlezen van de digitale speelgoedcamera van mijn zoontje die per USB aangesloten wordt.

Sinds kort is ook de 1e major release uitgekomen sinds Sun Microsystems dit pakket heeft overgenomen:

May 2, 2008. VirtualBox 1.6 released! The first major release since being acquired by Sun Microsystems is now available. Version 1.6 has new Mac and Solaris host platform support, new high performance virtual devices, improved scalability and Web Services.

Als eerste dit pakket maar eens downloaden. Hierbij loop ik tegen een klein probleempje aan wat te maken heeft met de Amerikaanse export regeling:

To comply with U.S. export regulations, VirtualBox downloads have temporarily been moved to the Sun Download Center. We are currently working on a more permanent solution that will simplify downloads for various distributions and re-enable old versions as well.

Hierdoor kan ik dus geen pakketbron toevoegen voor Virtualbox, een vervelend idee want daarmee wordt het pakket niet automagisch up to date gehouden 🙁 Dat wordt weer een website extra in de gaten houden.

Downloaden en installeren op de handmatige manier dus. Na het downloaden van het juiste deb bestand (versie voor Ubuntu Hardy AMD64) naar de desktop hierop dubbelklikken en installeren. De pakketbeheerder Adept neemt het hierna over, wel even een wachtwoord ingeven omdat ik niet als root werk.

Na de installatie kijk ik nog even wat er gebeurt is door de detailweergave te openen:

debconf: falling back to frontend: Teletype
Setting up virtualbox (1.6.0-30421_Ubuntu_hardy) ...
debconf: unable to initialize frontend: Dialog
debconf: (Dialog frontend will not work on a dumb terminal, an emacs shell buffer, or without a controlling terminal.)
debconf: falling back to frontend: Readline
debconf: unable to initialize frontend: Readline
debconf: (This frontend requires a controlling tty.)
debconf: falling back to frontend: Teletype
Configuring virtualbox
----------------------

Creating group 'vboxusers'

Users of VirtualBox must be member of that group in order to have
write permissions to /dev/vboxdrv. Otherwise starting of VMs will not
be possible.

Adding group `vboxusers' (GID 120) ...
Done.
* Starting VirtualBox kernel module
*  done.
* Starting VirtualBox host networking
*  done.

Hier kan ik uit opmaken dat ik toegevoegd moet worden aan de groep vboxusers, als dit niet al automatisch gedaan is. Na een controle hierop blijkt dat ik dat nog moest doen. Even opnieuw inloggen om die wijziging door te voeren.

Na het inloggen start ik Virtualbox die nu ook als een Sun product in mijn menu staat. Ik krijg vervolgens een PUEL Licentie op mijn scherm waar ik al dan niet accoort mee moet gaan. PUEL staat hierbij voor “Personal Use and Evaluation Licence”. Na het akkoort gaan hiermee krijg ik een registratie formulier voorgeschoteld. Gelukkig met de mogelijkheid om me niet lastig te vallen op de ingevulde contactgegevens (enkel naam en email). Uiteraard kies ik hier een mailadres wat niet voor serieuze zaken gebruikt wordt. Ik heb namelijk een gmail account aangemaakt voor diverse registraties om zo mijn hoofdmailbox niet vol te laten lopen met allerlei onzin.

Hierna kan ik de virtuele machines gaan installeren om ermee te werken.

Ubuntu

Al enige tijd geleden ben ik overgestapt naar een linux distributie. Sterker nog, in die tijd (ongeveer een half jaar) heb ik zelfs mijn vrouw zover gekregen om mee te gaan. Dat koste wel de nodige moeite want er zat namelijk 1 ding dwars hiervoor. Het spelletje Pioneers of Peru en met name het bijbehorende chatprogramma is met geen mogelijkheid onder linux aan de praat te krijgen door midden van wine. De oplossing hiervoor was een XP installatie binnenin de linux distributie door middel van Virtualbox. We draaien nu dus beide Kubuntu “Gutsy Gibbon” 8.04