2010-02-28 04:26:57 +0000 2010-02-28 04:26:57 +0000
79
79
Advertisement

È possibile convertire macchine virtuali in ambienti fisici?

Advertisement

È possibile convertire un file .vdi in un .iso che può essere masterizzato su un cd o dvd e renderlo come un installer. Oppure è possibile convertire macchine virtuali in ambienti fisici?

Advertisement

Risposte (6)

64
64
64
2010-02-28 05:50:22 +0000

Sì e no.

Puoi convertire una VDI in un'immagine disco con lo strumento VBoxManage. Questo comando clona un'immagine disco virtuale registrata in un altro file immagine. Se vuoi convertire il tuo disco virtuale in un altro formato, questo è lo strumento ufficiale di VirtualBox da usare[*].

VBoxManage clonehd file.vdi output.img --format RAW
  • Se stai usando una VDI dinamica, e hai una vecchia versione di VirtualBox, clonehd potrebbe non funzionare correttamente. Lo strumento internalcommands di VBoxManage include converttoraw, che può convertire una VDI dinamica in un'immagine disco grezza fonte )[+].
VBoxManage internalcommands converttoraw file.vdi output.img

Ma… quel file IMG di output non è un'immagine ISO, e il sistema operativo installato non sarà configurato per essere eseguito da un CD/DVD avviabile. Puoi “masterizzare” (scrivere) l'IMG su un disco rigido, e potrebbe avviarsi sull'hardware nudo (ad esempio non in una macchina virtuale). Ma potrebbe non farlo, perché il sistema operativo installato su quell'IMG si aspetta di vedere l'hardware virtuale che VirtualBox fornisce, e tu lo stai avviando su hardware reale che non si aspetta.

Alcune versioni di Windows non gestiscono bene questa situazione; alcune distribuzioni Linux sì. A volte è possibile configurare un sistema operativo (prima o dopo) per migrare da un ambiente all'altro in questo modo, ma i passi specifici dipendono completamente dal sistema operativo da migrare.


Su Windows, potrebbe essere necessario specificare il percorso completo del programma:

"C:\Program Files\Sun\VirtualBox\VBoxManage.exe" [...]

Aggiungi C:\Program Files\Sun\VirtualBox al tuo PATH per usare la versione breve.


[*] Presumo che l'opzione “–format RAW” convertirà in un'immagine disco standard, come se tu avessi usato il comando dd su un hard disk fisico. Ma francamente, non ho trovato alcuna documentazione che lo confermi, quindi siate consapevoli che questo potrebbe non essere corretto.

[+] Ho appena testato entrambi i comandi sotto VirtualBox 3.1.2. Entrambi i file di output sono identici secondo md5sum, ma non ho testato completamente i file di output.

Vedi anche il tutorial “All about VDIs” sui forum di VirtualBox.

21
21
21
2012-09-26 19:57:00 +0000

Se il vostro file vdi contiene partizioni e volete estrarre solo una di esse, usate le seguenti:

Prima, come ha detto quack quixote prima, convertite il file vdi in un file immagine grezzo:

# VBoxManage clonehd file.vdi file.raw --format RAW

Poi impostate un dispositivo di loop per l'immagine:

# loopdev=$(losetup --show -r -f file.raw)

Usa kpartx per creare dispositivi per ogni partizione nel file raw:

# apt-get install kpartx
# kpartx -a $loopdev

Vediamo quali dispositivi abbiamo ora. In questo esempio, c'è solo un dispositivo perché c'è solo una partizione nell'immagine grezza:

# ls /dev/mapper/loop*
/dev/mapper/loop0p1

Ora montatelo per verificare che tutto funzioni correttamente:

# mkdir /mnt/part1
# mount /dev/mapper/loop0p1 /mnt/part1
# ls /mnt/part1
# umount /mnt/part1

Usate dd per copiare il contenuto della partizione in un'altra partizione di destinazione:

# dd if=/dev/mapper/loop0p1 of=/dev/sda2 bs=1M

Dopo aver finito, rimuovete nuovamente le mappature dei dispositivi:

# kpartx -d file.raw
13
Advertisement
13
13
2010-02-28 09:20:53 +0000

La risposta è decisamente sì, nel caso in cui il vostro sistema host e guest sia Linux. Si fa con i pacchetti qemu e TKLPatch. È possibile utilizzare entrambi i file VDI o VMDK.

Leggi di più:

5
5
5
2015-09-07 08:44:17 +0000

Ho provato lo VBoxManage clonehd file.vdi output.img --format RAW da la risposta accettata ma senza molto successo.

Quello che ha funzionato per me con una macchina virtuale Windows 8.1 su un host Windows 7 è questo:

  1. Creare una macchina Windows 8.1 in VirtualBox, installarla e usarla come si farebbe normalmente con una VM.
  2. Convertire l'hard disk .vdi di Virtual Box in Windows VHD con VBoxManage clonehd source.vdi target.vhd --format vhd
  3. Monta il VHD nella macchina host Windows ](http://blogs.msdn.com/b/virtual_pc_guy/archive/2009/02/05/mounting-vhds-with-windows-7.aspx) come unità (puoi montare un VHD nel disk manager in Gestione computer.
  4. Clona il VHD (montato come un'unità) su un altro nuovo disco fisso (un HD portatile collegato via USB nel mio caso) DriveImage XML o un simile strumento di clonazione del disco. Ora hai praticamente clonato l'hard disk virtuale .vdi su bare metal.
  5. Installare il nuovo disco rigido in una macchina. (nel mio caso scambiare l'HDD del portatile)
  6. Inserire una USB/CD di installazione di Windows 8.1, avviare da essa, scegliere Opzioni avanzate e Riparazione automatica. La riparazione automatica renderà il nuovo disco rigido avviabile.
  7. Avvia dal nuovo disco rigido con il clone di Windows 8.1 ed esegui Windows Update. Questo scaricherà i driver per l'hardware del tuo computer che non erano noti quando hai eseguito Windows in VirtualBox. Dovrai installare manualmente i driver mancanti, se ce ne sono.
  8. Disinstalla VirtualBox Guest Additions. Opzionalmente installa VirtualBox in modo che il tuo bare metal Windows 8.1 possa essere un host VirtualBox.
3
Advertisement
3
3
2012-08-17 14:17:56 +0000

Faccio questo processo in modo molto veloce, con solo due linee di comando in Linux:

#VBoxManage internalcommands converttoraw your_disk_virtual.vmdk your_disk_virtual. img

OR

#VBoxManage internalcommands converttoraw yourdisk\virtual.vdi yourdisk\virtual.img

# mv yourdisk\virtual.img yourdisk\virtual.iso

Il mio articolo completo: http://www.previsioni.com.br/jailsonjan/?p=389

0
0
0
2016-10-18 09:31:03 +0000

Usa il seguente comando per convertire:

VBoxManage clonehd CactiEZ-disk1.vmdk output.iso --format VMDK

Ecco l'output:

0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
Clone hard disk created in format 'VMDK'. UUID: 7f297ac6-95eb-4814-9237-1acfd6be976c
Advertisement