Debian + Netbeans Virtual Machine

 
06 januari 2008

Om op een snelle manier een ontwikkelomgeving in te richten zonder je werkstation direct te vervuilen met allerlei niet direct noodzakelijke pakketten is het meer en meer gebruikelijk om applicaties te ‘verpakken’ in een virtuele machine. Een bijkomend voordeel hierbij is dat bepaalde (ingewikkelde) installaties gemakkelijk gedistribueerd kunnen worden.

Maar hoe pak je dat nou aan? Ik ga hier als voorbeeld even door een installatie van Debian in een VMWare virtuele machine, volledig ‘kaal’. Het doel is om hier een Netbeans ontwikkelomgeving op te installeren.

Stap 1: VMWare installatie.
Om een virtuele machine te installeren zijn een aantal zaken nodig. Allereerst een applicatie om de virtuele machine te draaien. Je kunt hierbij kiezen uit de gratis varianten van VMWare, VMWare server of player. Het voordeel van de Server is dat je ook gemakkelijk machines kunt maken: dit is bij de player niet mogelijk. Het kan weliswaar met de hand maar de VMWare Server is handiger. Mocht je alleen met de player willen werken kan je hier een blanco machine downloaden (VMX file met instellingen en virtuele harddisk – 8 GB opgedeeld in 2 GB files).

Stap 2: OS installatie
Men neme de blanco machine die ik hierboven omschreef en stelt hier een CD-ROM image in, in mijn geval de Debian Net Install ISO. Dit kan door de ISO in de .VMX file te mappen naar een IDE poort. De volgende drie regels doen de magie gebeuren:

ide0:0.present = “TRUE”
ide0:0.deviceType = “cdrom-image”
ide0:0.fileName = “debian-40r2-i386-netinst.iso”

In VMWare Server is dit ook via de grafische interface te regelen. Het kan zijn dat bij opstarten van de machine er niet van de CD geboot wordt – druk dan op F2 zodat de virtuele bios settings gedaan kunnen worden. Daar kan bootvolgorde veranderd worden. De installatie van Debian kan nu gewoon doorlopen worden. Bij het selecteren van configuraties (database server, destktop systeem, etc) kies ik voor helemaal niets zodat een volledig leeg systeem geinstalleerd wordt.

Stap 3: X-Windows
Omdat ik een zo klein mogelijke ‘appliance’ probeer te creeeren heb ik in de vorige stap tijdens de installatie van Debian geen extra software geselecteerd. Dit heeft wel tot gevolg dat we na booten en inloggen tegen een knipperende prompt aankijken. Ik heb gelukkig voor Debian gekozen en kan dus gebruik maken van aptitude. Om X te installeren kan ik dus volstaan met het volgende commando (uit te voeren als root):

apt-get install x-window-system-core

Dit zal de kern van X installeren (ongeveer 130MB). Vervolgens kan het commando ‘startx’ gegeven worden en wordt X gestart. Je ziet dan een default X server met alleen een commandprompt. Wat schiet ik hiermee op zou je denken? Grafische tools werken nu gewoon al. Als je Firefox installeert (apt-get install firefox) en draait (firefox) dan kan je gewoon browsen.
Hetgeen je nog mist is wat windowdressing: wellicht dat een titelbalk, sluitknop en minimaliseer/maximaliseerknop rond je windows wel handig zijn? Hiervoor heb je een zgn windowmanager nodig. Een lekker compacte is sawfish (30MB), te installeren met:

apt-get install sawfish

Nu even X restarten (exit in de commandprompt, en wederom startx intikken) en we zijn er weer. Nu zie je echter helemaal niks meer: het ‘startmenu’ van sawfish zit standaard onder de middelste muisknop. Daar kan je dus onder programma’s weer xterm kiezen en viola, een terminal in een window dat sluitbaar en verplaatsbaar is.

Stap 4: JDK + Netbeans
Voor Netbeans hebben we een JDK nodig. We kunnen nu gewoon zaken downloaden met onze verse firefox, dus in principe voldoet het om gewoon naar sun te browsen, te downloaden, het bestand nog even de juiste permissies te geven (chmod +x jdk1.6.bin) en uit te voeren. Idem dito voor de netbeans installatie. Alle zaken die je nodig hebt vind je ook op www.netbeans.org (waar je dus gewoon heen kunt met je VM nu).

Stap 5: Shrink
Een niet noodzakelijke stap maar wel handig als je je machine wilt distribueren is een shrink van de machine. VMShrink is een tool die je vanuit je virtuele machine kunt runnen die je harddisk schoonmaakt en vervolgens VMWare Player of Server de actie shrink laat uitvoeren. Denk er wel om van tevoren downloads en dergelijke die je niet meer nodig hebt te verwijderen, zo wordt de machine zo klein mogelijk.

Ten slotte nog even wat downloads voor als je het allemaal teveel werk vindt:

– De VMWare machine, nog helemaal leeg (een paar kilobytes): klik
– De VMWare machine met basic Debian, X-Windows en Firefox (+/- 200 MB): klik
– De VMWare machine met basic Debian, X-Windows, Firefox, JDK1.6 en Netbeans (+/- 600 MB): klik

Veel plezier ermee!

PS: Engelse versie van deze post met wat meer achtergrond :)


Werken met ?
Kijk dan bij onze mogelijkheden voor starters en/of ervaren IT'ers.


Categorieën: Development

Tags: , , ,