Da VMware a Virtualbox: virtuale open source è meglio
22 marzo, 2007 39 commenti
Da tempo cercavo un modo di utilizzare le macchine virtuali VMware già esistenti trasferendole nell’ambiente virtuale open source VirtualBox. Forse esistono modi più semplici, ma al momento non ne trovo…
“Googlando” mi hanno colpito in particolare questi 2 articoli, che trattavano in modo differente il problema, con scopi diversi dal mio:
http://www.virtualizationdaily.com
http://www.happyassassin.net
Il disco della macchina virtuale vmdk viene convertito utilizzando qemu-img (contenuto nel pacchetto qemu) in un’immagine di tipo raw e successivamente con vditool nel formato vdi di VirtualBox. Per non appesantire molto il test ho usato un’installazione di MCNLive su disco virtuale scsi da 8Gb.
IMPORTANTE: Le conversioni con qemu-img e vditool portano la macchina (almeno il mio portatile) a carichi elevati di CPU e I/O.
In breve ecco la procedura che ho usato:
$ sudo apt-get install qemu
$ wget http://www.virtualbox.org/download/testcase/vditool
$ chmod +x vditool
$ sudo mv vditool /usr/local/bin/
$ qemu-img convert -f vmdk /var/lib/vmware/Virtual\ Machines/MCNLive/MCNLive.vmdk -O raw MCNLive.img
$ /usr/local/bin/vditool DD MCNLive.vdi MCNLive.img
$ mv MCNLive.vdi .VirtualBox/VDI/
Creando una nuova macchina con VirtualBox, ho associato il nuovo disco MCNLive.vdi. Partendo con il CD Live (ISO di MCNLive) ho corretto i files /etc/fstab e /boot/grub/menu.lst in modo da puntare a /dev/hda2 invece di /dev/sda2.
Il boot è avvenuto con successo
Qualche ritocco a /etc/X11/xorg.conf per la scheda video (“fbdev” sostituito con “vesa”) e il gioco è fatto.
Boot




















Ciao, visto che utilizzi ambedue i sistemi di virtualizzazione posso chiederti qual’è il migliore in termini di prestazioni (velocità, consumo di memoria etc.)
Premessa: macchina Debian Etch con vmware ultimo e virtualbox ultimo, sopra c’è un 2k e xp.
Io li ho provati entrambi e posso assicurarti che Vmware è migliore (risposta quasi ovvia, essendo una software house che ha l’esperienza su prodotta di gran lunga più complessi della versione “server”).
La supremazia è su tutti i campi: dall’uso della CPU “pura” (calcolo intensivo), alla gestione della scheda video (magari dovuto alla qualità dei driver).
Spero, essendo virtualbox open, che migliori, così potremmo usare un’altro software open al posto di close
Mandi,
Michele
@lg
A me sembra che VirtualBox con la versione 1.3.8 abbia raggiunto una notevole maturità, mi sembra che vmware tenga bene il passo, ma essendo VirtualBox un prodotto “giovane” possa presto migliorare. Non ho fatto test approfonditi, avendo solo un portatile per ora…
La speranza è che VirtualBox migliori e questo secondo me è possibile dal passaggio all’open source.
Ciao,
Antonio
@michele
grazie di aver testimoniato sulle prestazioni, alla fine abbiamo usato quasi le stesse parole
Pingback: Da VMware a VirtualBox « CyberJabba
IMAO virtualbox è un ottima alternativa per uso non professionale
@ercoppa
certo, ci auguriamo tutti che lo sviluppo proceda bene e velocemente. In questo momento è chiaro che l’ambito professionale è sotto l’influsso di vmware per la parte server e la gestione “centralizzata” delle macchine virtuali, ma, secondo me, si sente il fiato sul collo di Linux KVM
Grazie.
Ciao, Antonio
Ciao scusa il piccolo OT. Stò usando su un NB Satellite core duo 1G ram con Ubuntu Edgy, volevo utilizzare VirtualBox come virtualizzatore definitivo. Durante l’uso, una Debian virtuale, ho scoperto che su Ubuntu smettono di funzionare le apps video, anche i filmati di youtube. L’applicazione sembra girare ma non vede nulla. Chiudendo Virtaulbox, torna tutto funzionante.
E’ normale ?
Un Grazie sulla fiducia
Scusa per il ritardo…
Da quello che ho potuto notare (a parte il rallentamento) non vedo questo comportamento che dici.
Hai provato a disabilitare ACPI nella macchina virtuale?
La versione che usi è la 1.3.8? Alcuni fix di questa release:
# Linux Additions: support Xorg 7.2.x
# Linux Additions: fixed default video mode if all other modes are invalid
# Linux Additions: set default DPI to 100,100
# Linux Additions: fixed initialization of video driver on X server reset
Controlla i log in .VirtualBox/Machines/-MACCHINA-/Logs/ ….
Ciao,
Antonio
Hai ragione, disabilitando il ACPI della macchina virtuale, sembra funzioni tutto regolarmente. Mi sarebbe dispiaciuto doverlo abbandonare con vmware player
Thx molto gentile.
Uhu, come non detto si è ribloccato
dovrò fare un pò di indagini…
Ok, ultimo aggiornamento nel caso servisse a qualcuno. Durante l’installazione della debian ho disinstallato l’acpi (oltre ad averlo fatto nelle impostazioni di vbox)
install acpi=off
finora gira tutto liscio. Ciao.
mi dispiace…
I logs di /var/log/Xorg.0.log riportano errori in merito? Beryl/Compiz sono in funzione?
Ciao…. A.
Risolto
Devo far partire l’installazione di debian lanciando
install acpi=off
evidentemente l’acpi dà fastidio in tutte le salse
Grazie e ciao.
Evvai! Non so perchè, ma è laprima cosa che mi è venuta in mente
Grazie della comunicazione…. Saluti, Antonio
Ciao, innanzitutto grazie per la guida
Sto cercando di convertire un immagine vmware di winxp creata con vmware converter ma mi dice ‘could not open WinOnLinux.vmdk’.
Il path è giusto e il nome dell’immagine pure. Ho seguito i passi che hai descritto e tutto è andato a buon fine tranne … la fine
Hai qualche idea??
p.s. ho provato anche con sudo ma niente
CIAO
Potresti verificare se hai un’altra immagine vmware se le stringhe del file sono di un disco vmware, per esempio:
$ file "Windows XP.vmdk"Windows XP.vmdk: VMware4 disk imageoppure con il comando:
$ strings "Windows XP.vmdk"|head -10KDMV
# Disk DescriptorFile
version=1
CID=e55f1a3f
parentCID=ffffffff
createType="monolithicSparse"
# Extent description
RW 25165824 SPARSE "Windows XP.vmdk"
# The Disk Data Base
Questo naturalmente solo per verificare che il file vmdk sia in qualche modo integro
Poi rimane il fatto che non so se è possibile fare il boot con VirtualBox, del file vdi… Credo che già è tanto se arriva a fare il boot in provvisoria.
Qualcuno sa se esiste un modo per trasferire una installazione funzionante (Kubuntu) in una imagine virtuale, per poi farla girare sui vari software di emulazione??
Tipo (per capire): vmware converter, però che funzioni con linux!
@piero
Di modi ne esistono tanti, forse vmware converter è uno di questi,
Per fortuna però in linux non si è legati ai vari driver di sistema, cioè una volta copiato il file system basta “rimettere” a posto i puntatori dei dischi in fstab, moduli del kernel, installare Grub/Lilo e di solito il boot avviene.
Per esempio in questo post:
http://adoldo.wordpress.com/2006/12/28/virtualizzare-un-server-con-vmware-e-netcat/
ho parlato di come è possibile trasferire un server (in funzione, senza spegnerlo!!!) in un disco vmware e da li’ fare il boot del suo “clone”. Se poi consideri che avendo l’immagine fisica del disco questa può essere trasferita in un immagine vuota vmware con l’uso di un semplice cd Live (o della sua immagine ISO).
Saluti,
Antonio
@Antonio
perfetto, è esattamente quello di cui avevo bisogno.
Ti ringrazio veramente tanto, adesso mi metto sotto e provo a virtualizzare il mio povero serverino che rantola sempre più spesso!
Mi abbono al tuo blog per gratitudine!
@piero
troppo buono
Ciao.
Io ho eseguito tutti i passaggi spiegati nel tuo post.
La conversione del disco è andata perfettamente ma all’avvio della macchina con il nuovo disco…CRASH: VirtualBox (o meglio winXp installato nel VDI) si pianta e non da più segni di vita!!
Qualche consiglio
Versione VB: 1.3.8
@GinoPC
Non ho esperienze con virtualbox/xp (mi occupo solo di Linux), ma immagino che, nel caso parta in modalità provvisoria, occorra pulire il sistema dai drivers vecchi o comunque lanciare il “sysprep”.
In linux è abbastanza facile perché è sufficiente aggiustare i puntamenti di /etc/fstab e i moduli
Posso solo consigliarti di provare a vedere se fa il boot in provvisoria e da li’ cercare di sistemare qualcosa….
Ciao,
Antonio
Pingback: Trasformare immagini VMWare (vmdk) in Virtualbox (vdi) « Svaried Blog, a bit of Linux, in itagliano
chiedo aiuto per un banale problema su virtualbox
qual’è l’offset dei files immagine .vdi o .vdmk?
questo mi servirebbe per poterli montare in linux quando
non lancio l’emulazione di win311 o di xp.
In qemu, ad esempio, tale offset è fissato a 32256, per cui
con mount -o,loop offset=32256 eccetera eccetera riesco
a manipolare il contenuto di tali files immagine.
grazie
@Ferrari Renato
Se hai anche vmware, per montare i dischi vmdk basta usare “vmware-mount.pl”:
vmware-mount.pl disco-vmdk 1 /mnt/mount/
dove 1 è la partizione (con -p puoi listare le partizioni del disco)
oppure si può usare vmware-loop che permette anche la scrittura (rw).
Per quanto riguarda i dischi VDI creo che non ci sia un tool per montarli/vederli in modo diretto, per cui occorre convertirli in formato raw, però potrei sbagliarmi…
Ciao e ben ritrovato,
Antonio
Salve,
ho la vers 7.10 di ubuntu, sulla quale ho installato virtualbox. ho una macchina vmware che voglio spostare su VBox e ho seguito la guida. il Sistema mi risponde quando lancio “usr/local/bin/vditool DD MCNLive.vdi MCNLive.img” così: vditool: error while loading shared libraries: VBoxDD.so: cannot open shared object file: No such file or directory
qualcuno sa aiutarmi?
grz
OScar
@docoscar
se controlli le librerie richieste con
ldd /usr/local/bin/vditool
vedrai che è necessario VBoxDD.so
ldd /usr/local/bin/vditool |grep VB
VBoxDD.so => /usr/lib/VBoxDD.so (0xb7e79000)
VBoxRT.so => /usr/lib/VBoxRT.so (0xb7e16000)
VBoxVMM.so => /usr/lib/VBoxVMM.so (0xb7af0000)
VBoxDDU.so => /usr/lib/VBoxDDU.so (0xb7ad8000)
VBoxDD2.so => /usr/lib/VBoxDD2.so (0xb7aaf000)
VBoxREM.so => /usr/lib/VBoxREM.so (0xb610c000)
queste librerie sono nel pacchetto virtualbox e sono in /usr/lib oppure in /opt/ … dipende come lo hai installato
puoi provare per esempio a dichiarare il PATH con:
LD_LIBRARY_PATH=/opt/VirtualBox*
come si legge in questo link:
http://ubuntuforums.org/archive/index.php/t-594549.html
in pratica vditool deve sapere dove sono le sue librerie
Ciao e facci sapere,
Antonio
Grazie intanto per i consigli.
ho risolto tutti i problemi di installazione e di conversione ma, la macchina virtuale, cambiando macchina fisica nn funziona!!!! e ormai ne sono certo!!!!! ed è un problema di win: secondo me vive lo stesso trauma che vive quando smonto un disco con un sistema installato da una macchina e lo monto su un’altra.
Ho quindi rifatto tutta l’installazione.
Per un periodo ha funzionato, adesso quando navigo le risorse di rete il sistema si crasha e diventa tutto nero. è mai successo a qualcuno? perchè?
riscrivo a distanza di poco tempo: ho scoperto che il mio problema ce l’ha mezzo mondo sul sito di virtualbox. Vi dico anche che … l’hanno fixato, basta installare la new version!!!
@docoscar
meno male
forse la vecchia versione fa casini con l’id della macchina.
Ciao,
Antonio
[...]Da tempo cercavo un modo di utilizzare le macchine virtuali VMware già esistenti trasferendole nell’ambiente virtuale open source VirtualBox. Forse esistono modi più semplici, ma al momento non ne trovo!
“Googlando” mi hanno colpito in particolare questi 2 articoli, che trattavano in modo differente il problema, con scopi diversi dal mio:[...]
Ciao a tutti, ho letto l’interessante tread.
La mia intenzione è di lavorare da Ubuntu (64) co KVM.
Ho vistualizzato un mio PC con vmware converter (non ho trovato nulla di analogo per windows sugli altri sistemi di vistrualizzazione).
A questo punto l’intenzione era di fare un bel
qemu-img convert -f vmdk PC044.vmdk -O qcow pc044
Putroppo mi sono imbattuto in un errore che sembra diffusissimo ‘Could not open’ …vmdk
A questo punto nella directory ho un file, li ho controllato con il comando ‘file’, uno solo di questi risulta ‘VMware4 disk image’ ma è uno snapshot, se chiedo di convertirlo ottengo un segmentation fault.
Il vero ‘file gigante’ da 80 GB che contine la macchina si chiama
PC044-flat.vmdk ma se faccio ‘file’ di quello ottengo
ePC044-flat.vmdk: x86 boot sector, Microsoft Windows XP MBR, Serial 0x…..
e questo mi genera il Could not open …
Qualche idea?
Non solo ho scritto vistrualizzazione e non virtualizzazione ma l’ho anche ripetuto in basso.
Questa mattina ho il cervello in pappa.
Ho risolto, il problema era legato al fatto che occorre prima lanciare un programma che rende la macchina virtuale monolitica, scriverò il procedimento nella parte tecnica del mio blog, http://www.holzl.it/blog
Saluti.
@Paolo
Scusami, ma sono stato una settimana fuori e non ho nemmeno “toccato” un PC, sono contento che hai trovato il modo di convertire la macchina vmdk, il problema dei dischi è noto e va usato, come hai detto tu, un unico file vmdk prima di iniziare la conversione.
Ciao e grazie,
Antonio
Pingback: Da VMware a VirtualBox con Clonezilla, clonare i dischi virtuali | Yourpage live news aggregator
Salve a tutti.
Io ho provato mdiante wmware converter, virtualizzare un server vetusto con win2000server in una immagine da montare nel server nuovo, con sistema 2003srv, con capacità nettamente superiori.
Dunque, una volta virtualizzato il server 2000, installando Vmware nel server nuovo, sono riuscito tranquillamente a operare nell’immagine che ho virtualizzato.
ora però, per bisogno di sperimentazione, ho letto che si può convertire una immagine Wmware, in una immagine compatibile per Virtualbox, in effetti, quest’ultimo, ha la possibilità di importare i dischi virtuali di Wmware.
Il problema nasce dal momento che importo il disco virtuale, il sistema accenna a partire ma poi si blocca durante la fase di caricamento e resta fermo li anche una giornata intera.
Ho provato a convertirlo da Ubuntu come descritto all’inizio di questo blog, è andato tutto bene, ma al momento di fare partire l’immagine convertita si è presentato lo stesso identico problema.
non è che devo per forza lavorare con virtualbox, vmware soddisfa appieno le mie aspettative, ma sotto ubuntu, mi trovo meglio con Vbox, e chiedevo se qualcuno di voi ha la soluzione a questo problema che neanche nella versione 3.04 è stata risolta, o meglio, forse sbaglio io qualche passaggio.
Grazie a chi mi aiuterà.
@Guidolin Giovanni
In realtà VirtualBox non ha più bisogno della conversione al formato VDI, poiché riesce a aprire direttamente le immagini, o meglio i dischi VMDK anche con la possibilità del throghput. Il problema principale delle macchine windows è che si impicciano nel riconoscimento del nuovo hardware, per questo la tendenza è di andare verso il formato aperto di virtualizzazione (OVF). Alcuni post trattano l’argomento della sostituzione di HAL.DLL per il riconoscimento dell’hardware:
http://openwetware.org/wiki/OpenWetWare:Software/Server/Virtual_Machines/Xen/Converting_VMWare_Image_to_Xen
http://www.cybertek.it/convertire-guest-windows-2003-da-vmware-a-xen/
http://communities.vmware.com/message/167315
Quello che ti posso consigliare è di fare una copia del file vmdk, associarlo in una macchina VirtualBox e partire con win2003 in safe mode. Se anche così non fa il boot potresti vedere di mettere il disco come secondario in una VB funzionante e tentare di pulire il registro o altre diavolerie windowsiane
In linux per fortuna l’accesso ai files di configurazione e la “semplice” sostituzione del kernel e dei moduli relativi permettono quasi sempre il boot con il filesystem originale.
Solo per precisazione le installazioni fresche di win2003/2008/seven beta non hanno problemi in tutte le recenti versioni di VB.
Saluti e buone ferie,
Antonio