¿Cómo disminuye o reduce el tamaño de un disco de máquina virtual KVM?
Asigné un disco virtual de 500 GB (almacenado en /var/lib/libvirt/images/vm1.img), y estoy encontrando esa exageración, así que ahora me gustaría liberar algo de ese espacio para usarlo con otros dispositivos virtuales. máquinas. Parece que hay muchas respuestas sobre cómo aumentar el almacenamiento de imágenes, pero no disminuirlo. Encontré la herramienta virt-resize , pero solo parece funcionar con particiones de disco sin formato, no con imágenes de disco.
Editar: estoy usando un LVM con una partición formateada Ext4.
Editar: captura de pantalla GParted que muestra mi diseño de partición LVM. Necesito hacer mucho más que simplemente cambiar el tamaño del sistema de archivos. No conozco una forma segura de cambiar el tamaño de un LVM. Y por favor no me digas que lo use pvresize
. A pesar de su nombre, no admite cambiar el tamaño de LVM.
Lo intenté sudo pvresize /dev/vda5
, pero solo dice physical volume "/dev/vda5" changed
pero en realidad no reduce el tamaño.
Intenté comenzar parted
a configurar manualmente el tamaño de la partición (muy peligroso), pero hacerlo print all
me da el error "/ dev / sr0 etiqueta de disco no reconocida".
Editar: Siguiendo estas instrucciones , pude reducir con éxito mis volúmenes lógicos y físicos (aunque tuve que recordar activar y desactivar lvm antes y después de ciertos comandos, que las instrucciones omiten).
Ahora GParted muestra 250G de espacio libre sin asignar. ¿Cómo elimino esto de la imagen del disco KVM y se lo devuelvo al hipervisor subyacente?
qemu-img -O qcow2 vm1.img vm1-compact.qcow2
.Respuestas:
Gracias a quienes publicaron, pero sus respuestas fueron demasiado vagas para ser de alguna ayuda.
Después de horas de buscar en Google, finalmente encontré una guía ( enlace redactado ) que proporciona instrucciones paso a paso sobre cómo reducir mi sistema de archivos, volúmenes lógicos y volúmenes físicos. El truco que la mayoría de las guías pierden es la necesidad de eliminar las particiones físicas y recrearlas con el tamaño correcto, porque parted no puede cambiar el tamaño de las particiones lvm.
Luego encontré esta documentación en qemu-img, que explica cómo reducir una imagen de disco virtual sin formato ejecutando:
fuente
qemu-img convert -f qcow2 -O raw image.qcow2 image.img
y luego puede ejecutar el comando anterior.Qué necesitas hacer,
Esto se puede lograr a través de la GUI y la CLI
Recursos
Herramientas
fuente
Esto funcionó muy bien para mí. Comprime y reduce los bloques 0 en la imagen del disco. La imagen se expandirá con el tiempo a medida que se vuelva a escribir.
fuente
Recomiendo antes de hacer todo esto, tome una copia completa de la imagen del disco tal como está, luego, cuando todo se rompa, simplemente puede copiarla de nuevo para comenzar de nuevo.
Hay 3 cosas que debes hacer:
1) Amplíe la imagen del disco. En tu host:
qemu-img cambiar el tamaño de foo.qcow2 + 32G
Ahora su invitado puede ver un disco más grande, pero aún tiene particiones y sistemas de archivos antiguos.
2) Amplíe la partición dentro de la imagen del disco. Para ello, debe iniciar un LiveCD en su invitado, ya que no podrá meterse con una partición montada. Esto es bastante complicado y probablemente la parte más peligrosa. Copiar aquí es bastante, así que solo enlazaré por ahora. Quieres hacer algo como esto:
http://www.howtoforge.com/linux_resizing_ext3_partitions_p2
O 2b) crear una nueva partición sería más simple (y más seguro) si solo desea más espacio de almacenamiento. Use fdisk o cfdisk, o lo que sea que le resulte más cómodo; ahora debería ver un montón de espacio no asignado en su disco de invitado.
3) Finalmente, si redimensionó su partición existente, haga que el sistema de archivos dentro de la nueva partición más grande sea más grande (de todos modos, esto está en la guía vinculada anteriormente). Dentro de tu invitado:
fuente