Questa semplicissima procedura è stata provata con PVE 6.4 non so se funzioni con versioni più vecchie, dipende tutto dal fatto che il formato VDI (il disco virtuale di Virtualbox) sia o meno supportato dal comando "qm importdisk". Inoltre questa procedura è stata provata con un guest Linux, e non è detto che i guest Windows abbiano infinitamente più problemi. (Licenza, numero di CPU, tipo di controller disco virtuale, tipo di CPU, ecc).
Creare una VM su PVE che sia compatibile con quella che abbiamo su virtualbox. Per Windows, fate particolarmente attenzione al tipo di controller disco, al boot via BIOS o UEFI, al numero di CPU, al tipo di CPU. È possibile che si debbano fare molti tentativi e aggiustamenti se la macchina non si avvia (vedi dopo). Non importa come creiamo il disco virtuale, tanto lo andremo ad eliminare. Teniamo a mente il numero della VM appena creata, ci servirà dopo.
Eliminare il disco virtuale in uso, mediante disconnessione e poi eliminazione dello stesso
Importare il disco virtuale da Virtualbox:
Prima di tutto fermiamo la VM su Virtualbox (ovviamente) e copiamo il disco (file VDI, se e` nativo virtualbox) su uno storage che sia accessibile dall' host PVE, per esempio nel disco dei backup di PVE.
Andiamo in shell dell' host PVE ed eseguiamo il comando per importare il disco, in questo modo:
qm importdisk NUMERO-DELLA-VM /file-disco.vdi NOME DELLO STORAGE
qm importdisk 109 /backupdisk/servervirtualevecchio.vdi local-lvm
Una volta conclusa l'importazione, possiamo andare nella interfaccia web di PVE e (magari serve un reload) troveremo il nostro virtual disk che abbiamo appena importato che non è connesso a nessun controller virtuale. Non ci resta che connetterlo ad un controller virtuale compatibile (SATA o IDE se erano impostati in questo modo e il guest è windows, oppure possiamo usare serenamente VirtIO-SCSI se il guest è linux, che dovrebbe vederlo senza problemi).
Ricordiamo di verificare sempre dentro l'interfaccia web se il nostro disco è impostato correttamente come disco di boot.
Avviamo la VM e speriamo che parta. Se non parte, i motivi possono essere molteplici, e qui occorre ingegnarsi a capire come mai non parte e se possiamo fare qualcosa sull' host o sul guest per farla partire.
Può essere che dobbiamo aggiustare le schede di rete che hanno cambiato nome (in Linux in particolare) a causa del cambio del MAC address.
Una volta che la VM funziona, potremo eventualmente decidere di "affinarla" aggiungendo i driver per VirtIO (windows) e spostando il virtual disk su un controller VirtIO, aggiungendo il guest agent, ecc.
Alla fine ricordiamoci di cancellare il file VDI (nel nostro esempio /backupdisk/servervirtualevecchio.vdi
) che non ci serve più.