GNU/Linux >> Linux Esercitazione >  >> Linux

È possibile ridimensionare un'immagine disco QEMU?

Un'immagine qcow2 può essere ridimensionata per crescere con una versione nuova/corrente di qemu. Ad esempio, ho un arch.qcow2 che è 2G e voglio che diventi 50G, in tal caso digito:

qemu-img resize arch.qcow2 50G

poi qemu mi dice:

image resized

ecco fatto, l'ho fatto solo oggi. redhat in realtà ha alcuni bei documenti su qemu:

  • https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/6/html/virtualization_administration_guide/chap-virtualization_administration_guide-tips_and_tricks

Da qui:

!!! Eseguire il backup dell'immagine del disco prima di provare quanto segue !!!

Se stai usando un'immagine raw sparsa, fallo

dd if=/dev/zero of=hdd.img seek=N obs=1MB count=0"

dove hdd.img è l'immagine in formato raw che vuoi ridimensionare e N è la nuova dimensione che vuoi che sia l'immagine, in megabyte. Per cambiare le unità di N, cambia obs in qualcos'altro come 1GB per le unità in gigabyte (1000x1000x1000).

Se vuoi ridimensionare un'immagine grezza ma non vuoi che diventi sparsa (in realtà vuoi quegli zeri nel file) allora fai "dd if=/dev/zeroof=image seek=S count=N-S obs=1" invece, dove N è la nuova dimensione e Sis la vecchia dimensione (in byte).

Se vuoi ridimensionare un'immagine qcow2, questo non è ancora supportato.

questa email mostra alcuni esperimenti con il ridimensionamento delle immagini qcow con un editor esadecimale.

Per quanto ne so, il ridimensionamento o l'ingrandimento delle immagini in altri formati (VMware, Bochs, cow o cloop) non è supportato.

Su un host Windows è possibile ridimensionare un'immagine disco in formato raw utilizzando il comando 'copia'. Puoi usare qemu-img per convertire la tua immagine esistente in formato raw, se necessario. Useremo un'immagine disco in formato raw temporanea che verrà aggiunta alla fine dell'immagine disco in formato raw esistente. La dimensione di questa immagine temporanea è la dimensione di cui verrà espansa l'immagine esistente:

qemu-img create -f raw temp.img 300M

Dovresti quindi emettere il comando seguente:orig.img è l'immagine in formato raw esistente che desideri ingrandire, temp.img è il file immagine temporaneo creato in precedenza e new.img è l'immagine risultante ridimensionata:

copy /b orig.img+temp.img new.img

Sarà quindi necessario ripartizionare e ridimensionare le partizioni e i filesystem esistenti sulla nuova immagine. Un metodo per farlo è bootgparted in QEMU con l'iso gpartedlivecd e la nuova immagine del disco.

Altri collegamenti che potresti voler controllare se quanto sopra non funziona:

http://qemu-forum.ipi.fi/viewtopic.php?p=12362
http://kev.coolcavemen.com/2007/04/how-to-grow-any-qemu-system-image/
http://bryan-murdock.blogspot.com/2007/12/resize-qemukvm-windows-disk-image.html
http://www.larsen-b.com/Article/329.html
http://www.brabbel.net/wp/archives/174


Risposta breve per il 2017:aggiungere ad es. 30 GB a un'immagine raw esistente ho appena usato questo comando:

qemu-img resize nameofimg.img +30G

Ciò aggiunge 30 GB al file immagine esistente (non è necessario creare un nuovo file). Quindi nella tua VM guest puoi estendere le partizioni esistenti, in Windows 10 ad es. con "Gestione disco", facile.

Ulteriori informazioni e opzioni:

man qemu-img

Vedi anche:qemu wiki> qemu-img


Linux
  1. Converti VM Virtualbox in QEMU/KVM [VDI in QCOW2]

  2. Linux – Rendi più lenta la copia del disco/disco?

  3. È possibile avviare il kernel Linux senza creare un'immagine initrd?

  4. Forza l'immagine del disco rigido clonato su un disco rigido più piccolo

  5. Rendi la copia disco/disco più lenta

Ridimensiona un'immagine dal terminale Linux

Debian Wheezy:divide e ridimensiona l'immagine del disco Xen

Come clonare un'immagine del disco crittografata con Clonezilla

Come ridimensionare le immagini usando Python

Come convertire l'immagine della fotocamera Raw in JPEG in Linux

Ridimensionamento dell'immagine di sfondo in Ubuntu 18.04.1 Lts?