Comment diminuer ou réduire la taille d'un disque de machine virtuelle KVM?
J'ai alloué un disque virtuel de 500 Go (stocké dans /var/lib/libvirt/images/vm1.img), et je trouve cela exagéré, alors maintenant je voudrais libérer une partie de cet espace pour l'utiliser avec d'autres virtuels Machines. Il semble y avoir beaucoup de réponses sur la façon d'augmenter le stockage d'images, mais pas de le diminuer. J'ai trouvé l' outil virt-resize , mais il ne semble fonctionner qu'avec des partitions de disque brutes, pas des images de disque.
Edit: j'utilise un LVM avec une partition formatée Ext4.
Edit: capture d'écran GParted montrant ma disposition de la partition LVM. Je dois faire beaucoup plus que redimensionner le système de fichiers. Je ne connais aucun moyen sûr de redimensionner un LVM. Et s'il vous plaît, ne me dites pas d'utiliser pvresize
. Malgré son nom, il ne prend pas en charge le redimensionnement des LVM.
J'ai essayé sudo pvresize /dev/vda5
, mais cela dit simplement, physical volume "/dev/vda5" changed
mais ne réduit pas réellement la taille.
J'ai essayé de commencer parted
à définir manuellement la taille de la partition (très dangereux), mais cela print all
me donne juste l'erreur "/ dev / sr0 label de disque non reconnu".
Edit: En suivant ces instructions , j'ai réussi à réduire à la fois mes volumes logiques et physiques (bien que je devais me rappeler d'activer et de désactiver lvm avant et après certaines commandes, que les instructions omettent.
Maintenant GParted affiche 250G d'espace libre non alloué. Comment puis-je supprimer cela de l'image de disque KVM et le restituer à l'hyperviseur sous-jacent?
qemu-img -O qcow2 vm1.img vm1-compact.qcow2
.Réponses:
Merci à ceux qui ont posté, mais vos réponses étaient bien trop vagues pour être utiles.
Après des heures de recherche sur Google, j'ai finalement trouvé un guide ( lien expurgé ) fournissant des instructions étape par étape sur la façon de réduire mon système de fichiers, mes volumes logiques et mes volumes physiques. L'astuce qui manque à la plupart des guides est la nécessité de supprimer les partitions physiques et de les recréer avec la taille correcte, car parted ne peut pas redimensionner les partitions lvm.
J'ai ensuite trouvé cette documentation sur qemu-img, qui explique comment réduire une image de disque virtuel au format brut en exécutant:
la source
qemu-img convert -f qcow2 -O raw image.qcow2 image.img
et ensuite vous pouvez exécuter la commande ci-dessus.Qu'as tu besoin de faire,
Cela peut être accompli via GUI et CLI
Ressources
Outils
la source
Cela a très bien fonctionné pour moi. Il compresse et réduit les blocs 0 dans l'image disque. L'image s'agrandira avec le temps au fur et à mesure de sa réécriture.
la source
Je recommande avant de faire quoi que ce soit de prendre une copie complète de l'image disque telle qu'elle est, puis quand tout se casse, vous pouvez simplement la recopier pour recommencer.
Il y a 3 choses que vous devez faire:
1) Agrandir l'image du disque. Chez votre hôte:
qemu-img redimensionner foo.qcow2 + 32G
Maintenant, votre invité peut voir un disque plus gros, mais a toujours de vieilles partitions et systèmes de fichiers.
2) Agrandir la partition à l'intérieur de l'image disque. Pour cela, vous devez démarrer un LiveCD sur votre invité, car vous ne pourrez pas jouer avec une partition montée. C'est assez compliqué et probablement la partie la plus dangereuse. C'est beaucoup de choses à copier ici, donc je vais juste lier à la place pour l'instant. Vous voulez faire quelque chose comme ça:
http://www.howtoforge.com/linux_resizing_ext3_partitions_p2
OU 2b) la création d'une nouvelle partition serait plus simple (et plus sûre) si vous voulez simplement plus d'espace de stockage. Utilisez fdisk ou cfdisk, ou tout ce qui vous convient - vous devriez maintenant voir tout un tas d'espace non alloué sur votre disque invité.
3) Enfin, si vous redimensionnez votre partition existante, agrandissez le système de fichiers à l'intérieur de la nouvelle partition plus grande (c'est en fait de toute façon dans le guide lié ci-dessus). À l'intérieur de votre invité:
la source