È possibile convertire un file .vdi in un .iso che può essere masterizzato su un cd o dvd e renderlo come un programma di installazione. Oppure è possibile convertire macchine virtuali in ambienti fisici?
È possibile convertire un file .vdi in un .iso che può essere masterizzato su un cd o dvd e renderlo come un programma di installazione. Oppure è possibile convertire macchine virtuali in ambienti fisici?
Risposte:
Sì e no.
È possibile convertire un VDI in un'immagine del disco con lo strumento VBoxManage . Questo comando clona un'immagine del disco virtuale registrata in un altro file di immagine. Se vuoi convertire il tuo disco virtuale in un altro formato, questo è lo strumento VirtualBox ufficiale per usare [*].
VBoxManage clonehd file.vdi output.img --format RAW
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. È possibile "masterizzare" (scrivere) l'IMG su un disco rigido e potrebbe avviarsi su hardware nudo (ad es. Non in una macchina virtuale). Ma potrebbe non esserlo, perché il sistema operativo installato su quell'IMG si aspetta di vedere l'hardware virtuale fornito da VirtualBox e lo stai avviando su hardware reale che non si aspetta.
Alcune versioni di Windows non gestiscono bene questa situazione; alcune distribuzioni Linux fanno. A volte è possibile configurare un sistema operativo (prima o poi) per migrarlo da un ambiente all'altro in questo modo, ma i passaggi 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: \ Programmi \ Sun \ VirtualBox al PERCORSO per utilizzare la versione breve.
[*] Sto assumendo il "--format RAW" opzione di convertire in un'immagine disco standard, come se avessi usato il dd comando su un hard disk fisico. Ma francamente, non ho trovato alcuna documentazione a supporto di questo, quindi tieni presente che potrebbe non essere corretto.
[+] Ho appena testato entrambi i comandi in 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 "Tutto sui VDI" nei forum di VirtualBox.
sysprep /generalize
prima l'installazione virtuale? Ciò preparerebbe sicuramente l'installazione da installare su un nuovo hardware (o hardware fisico in questo caso)
Se il file vdi contiene partizioni e si desidera estrarne solo una, utilizzare quanto segue:
In primo luogo, come detto in precedenza quack quixote, converti il file vdi in un file di immagine grezzo:
# VBoxManage clonehd file.vdi file.raw --format RAW
Quindi imposta un dispositivo 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
Scopri quali dispositivi abbiamo ora. In questo esempio, esiste un solo dispositivo in quanto esiste solo una partizione nell'immagine non elaborata:
# ls /dev/mapper/loop*
/dev/mapper/loop0p1
Ora montalo per verificare che tutto funzioni correttamente:
# mkdir /mnt/part1
# mount /dev/mapper/loop0p1 /mnt/part1
# ls /mnt/part1
# umount /mnt/part1
Utilizzare dd per copiare il contenuto della partizione in un'altra partizione di destinazione:
# dd if=/dev/mapper/loop0p1 of=/dev/sda2 bs=1M
Al termine, rimuovere nuovamente i mapping dei dispositivi:
# kpartx -d file.raw
La risposta è decisamente affermativa, nel caso in cui il sistema host e guest sia Linux. È fatto con i pacchetti qemu
e TKLPatch
. È possibile utilizzare sia file VDI che VMDK.
Leggi di più:
Ho provato il dalla risposta accettata , ma senza molto successo.VBoxManage clonehd file.vdi output.img --format RAW
Ciò che ha funzionato per me con una macchina virtuale Windows 8.1 su un host Windows 7 è questo:
VBoxManage clonehd source.vdi target.vhd --format vhd
Faccio questo processo in modo molto veloce, con solo due linee di comando in Linux:
#
VBoxManage comandi interni converttoraw your_disk_virtual.vmdk your_disk_virtual.img
O
#
VBoxManage comandi interni converttoraw your_disk_virtual.vdi your_disk_virtual.img
#
mv your_disk_virtual.img your_disk_virtual.iso
Il mio articolo completo: http://www.previsioni.com.br/jailsonjan/?p=389