mercoledì 14 ottobre 2009

Da VirtualPC 2007 a VirtualBox 3.0.8...

...passando per Windows Virtual Pc.

Con Vista usavo Virtual PC 2007, non il miglior prodotto di virtualizzazione disponibile per Windows, ma faceva quasi tutto quello di cui avevo bisogno.
L'unica vera mancanza era il supporto per le periferiche USB, per il resto trovavo particolamente comodo il fatto di poter fare drag & drop tra host e guest e inoltre le performance non mi sono mai sembrate malaccio.

Col passaggio a Windows 7 ho voluto provare Windows Virtual PC che in teoria dovrebbe essere l'evoluzione di Virtual PC ma in realta' non e' proprio cosi'.
Adesso Microsoft offre anche una soluzione piu' sofisticata per la virtualizzazione con Hyper-V, per cui Windows Virtual PC piu' che essere una soluzione completa di virtualizzazione e' orientato ad una specifica area di virtualizzazione e cosi' facendo ha in realta' perso alcune delle caratteristiche di Virtual PC 2007.

La piu' importante dal mio punto di vista e' che Windows Virtual PC non supporta la virtualizzazione di Windows Server e come se non bastasse non supporta neppure piu' il drag & drop tra host e guest.
Quindi dopo un mesetto di uso della RC e dopo aver "sperato" che qualcosa migliorasse nella RTM ho deciso che era ora di provare VirtualBox.

Tanto per chiarire, non sto dicendo che Windows Virtual PC non abbia i suoi pregi, ma visto che nasce specificatamente per fornire la possibilita' di virtualizzare XP agli utenti professionali che passano appunto da XP a Windows 7 semplicemente non e' il prodotto adatto all'uso che devo fare io.

VirtualBox mi ha davvero sorpreso piacevolmente fino ad ora. Il supporto dei 64 bit insieme a quello dell'intera famiglia di sistemi Windows e' sicuramente un punto di forza.

L'integrazione con il dektop di Windows con la modalita' Seamless e' una chicca, e il passaggio tra la varie modalita' compresa quella Full Screen e' immediato e senza problemi.

La modalita' Seamless mi piace di piu' dell'XP Mode di Windows Virtual PC, che permette di pubblicare le applicazioni della VM nel menu' Start e di lanciarle senza ma dover interagire col desktop della VM. L'ideale sarebbe avere entrambe queste funzionalita' a disposizione, ma dovendo scegliere una delle due mi trovo meglio con quella offerta da Virtual Box perche' mi permette di passare al desktop della MV in qualunque momento, mentre con Windows Virtual PC sostanzialmente si deve riavviare la VM.

In VirtualBox i tempi di avvio, soprattutto delle macchine virtuali ibernate, e' ottimo. Manca solo il drag & drop tra host e guest, ma per il resto per ora non ho trovato limiti che possano essere un problema per l'uso che ne faccio.

L'unica cosa che non ho ancora ben capito e' come si fa a compattare un disco virtuale, ma in un modo o nell'altro dovrebbe essere possibile anche se in Virtual PC 2007 la cosa era abbastanza banale nonostante richiedesse un paio di passaggi.

19 commenti:

  1. Facevo proprio le tue stesse considerazioni pochi giorni fa... tra l'altro VirtualXP mode installa un file VHD che dovrebbe essere usabile anche con altri software di virtualizzazione.
    Peccato solo per il supporto al drag&drop...

    RispondiElimina
  2. De default il VHD di XP Mode non ha i permessi di scrittura per altri software di virtualizzazione.
    Per il resto dovrebbe essere un VHD a tutti gli effetti e quindi VirtualBOx non dovrebbe avere problemi ad usarlo. Per la cronaca la VM con Windows Server 2003 che uso e' appunto in formato VHD.

    RispondiElimina
  3. Posso chiederti per quale motivo ti serve una macchina virtuale?
    Non dovrebbe essere sufficiente avere VirtualXP mode?

    RispondiElimina
  4. Mario, a me serve poter virtualizzare Windows Server per il quale sviluppo software.

    XP Mode invece e' pensato per chi deve far girare applicazioni che funzionano sotto XP ma non sotto Windows 7, tipicamente software gestionali.

    Il vantaggio di usare una macchina virtuale per il lavoro che faccio e' che posso portarmela dietro e usarla ad esempio sul portatile, o cambiare PC senza dover ricrearmi ogni volta da zero l'ambiente di sviluppo/test.

    RispondiElimina
  5. In realtà ho scoperto che la questione dei permessi di scrittura è dovuta al fatto che il file è read-only. Or ora sto installando la stessa VHD tramite VirtualBox e sembra andare alla grande, visto che la VHD è fatta apposta per girare anche su VBox ;)

    RispondiElimina
  6. Aspetta aspetta, papero... Stai dicendo che la XP Mode sarebbe teoricamente usabile ANCHE CON VIRTUALBOX?!!!

    Ma servirebbe lo stesso la VT o in quel caso non sarebbe per forza necessaria?

    RispondiElimina
  7. XP Mode fornisce un disco con XP presintallato, che e' in formato VHD, quindi esegubile da VirtualBox, solo che di default ha i permessi in scrittura disabilitati se provi ad usarlo con VirtualBox.

    RispondiElimina
  8. E come lo potrebbe abilitare uno?

    Andando nelle proprietà?

    RispondiElimina
  9. Avevo fatto solo una rapida prova ma dalle proprieta' del VHD non si riusciva a cambiare i permessi, probabile che si debba smanettare un po' con CACLS ma non ho provato.

    RispondiElimina
  10. Basta spostarlo su un folder diverso e togliere la proprietà di ReadOnly. Quindi l'XP mode diventa usabile anche in VirtualBox/VMWare quello che ve pare. :)

    RispondiElimina
  11. Uuuh, that's interesting!

    Thank you for the info, Donald! XD

    RispondiElimina
  12. Salve, prima di tutto complimenti per il blog, è uno di quei siti che seguo in modo silenzioso ma senza perdermi neanchè un post.

    Visto il tuo post, colgo la palla al balzo per chiedere un consiglio a te/voi. Ho la necessità di emulare un sistema operativo Windows con Virtualbox e non volendo puntare sul mitico XP, ho optato per Windows Seven 32bit (ottenuto via MSDNAA).

    Purtroppo sulla mia macchina (MacBook 5,1, ossia la prima serie di quelli "unibody", 2.0Ghz P7350, 2GB ram DDR3, Nvidia integrata; con sistema host GNU/Linux) noto una certa lentezza nel sistema guest avendo impostato le seguenti risorse:
    - base memory 700mb
    - PAE e VT-x disabilitata
    - video memory 64mb (3d disabilitato)
    - il resto come deciso da VirtualBox

    Ho fatto varie prove, ma non riesco a trovare una fluidità accettabile (una volta su due si verificano latenze anche per le più banali operazione: es. aprire il menu). Qualche consiglio?

    Il sistema guest mi serve solo per compilare e far girare basilari programmi in C (corso sistemi operativi).

    P.s. in passato, emulando XP su amd64 3000+ mi ero trovato davvero bene.

    Saluti.

    RispondiElimina
  13. ercoppa, devi abilitare VT-x/AMD-V.
    Per la ram sarebbe meglio 1GB.

    RispondiElimina
  14. Spero tu possa aiutarmi.

    Sono passato da Vista a Win7 sostituendo materialmente il disco.

    Dal vecchio Vista con HD2VHD ho estratto le immagini dei due dischi.

    Ho provato a crerare una VM con VirtualBox ma pare non funzionare, la VM si avvia ma non carica l'OS dell'immagine, se chiudo e riapro mi compare regolarmente la schermata di boot fallito di Vista con la possibilità dell'avvio standard o di quello di ripristino, dunque il disco virtuale è corretto.

    Come posso fare per avere ancora il mio vecchio PC con i software non ancora migrati funzionante?

    RispondiElimina
  15. Non ho mai provato a creare un VHD partendo da un disco fisico, so che VMWare ha un tool apposito, e senza in qualche modo installare prima i driver specifici per la macchina virtuale dubito possa funzionare.
    Sempre VMWare e' in grado di usare un disco fisico come disco per la macchina virtuale, quindi fatto quello poi mi pare piu' facile che la migrazione da fisco a virtuale possa funzionare.
    Il mio consiglio e' di scaricare la versione di prova di VMWare.

    RispondiElimina
  16. Quindi i passaggi suggeriti sono:

    1- Installo VMWare.
    2- Gli do in pasto il disco fisico del sistema.
    3- Vedo se funziona.
    4- Estraggo i dischi virtuali.
    5- Faccio un sistema con virtualbox e gli do i dischi virtuali creati.

    RispondiElimina
  17. Si, proverei esattamente come hai detto, provando comunque i dischi virtuali prima con VMWare e poi li darei in pasto a VirtualBox.

    RispondiElimina
  18. Nel frattempo ho fatto una prova con Virtual PC 2007 (Microsoft Virtual PC non accetta CPU senza virtualizzazione HW) mi da il medesimo problema.

    Provo a rigenerare le immagini così prima di aggiungere dell'altro su un PC appena installato che avrei voluto mantenere pulito.

    Meglio un unico file .vhd con le due partizioni del disco in un colpo o meglio due file distinti per le due partizioni?

    RispondiElimina