Redimensionner une machine virtuelle dans VirtualBox


13

Comment puis-je redimensionner ma machine virtuelle, elle ne fait que 10 Go et j'ai probablement besoin de 50 Go pour cela.

Est-il facile de redimensionner l'image?

Réponses:


10

Pas facile, j'ai peur. J'ai dû faire la même chose la semaine dernière et c'est la seule aide que j'ai reçue:

http://crookedspoke.wordpress.com/2008/03/15/resize-disk-image/

Voici ce que vous devez faire:

  1. Téléchargez le CD GParted Live (le gparted-live - *. Iso).
  2. Créez un nouveau disque dur virtuel avec la taille souhaitée (50 Go dans votre cas).
  3. Dans votre machine virtuelle, ajoutez le lecteur virtuel nouvellement créé en tant qu'esclave primaire IDE .
  4. Exécutez la machine.
  5. Démarrage à partir de l'image ISO GParted:
    1. Dans le menu de la machine virtuelle, sélectionnez: Périphériques> Monter le CD / DVD-ROM> Image CD / DVD-ROM ...
    2. Dans Virtual Media Manager, cliquez sur le bouton Ajouter .
    3. Ouvrez l'image gparted-live - *. Iso .
    4. Appuyez sur Select.
    5. Redémarrez la machine virtuelle.
    6. Appuyez sur F12 lorsque vous voyez l'écran de démarrage de Sun VirtualBox.
    7. Sélectionnez l' option CD-ROM .
  6. Ouvrez l'application Terminal.
  7. Type:

    fdisk -l

  8. Vérifiez qu'il vous montre deux partitions: / dev / hda et / dev / hdb . Le premier est l'ancien disque, le second est le nouveau et il ne doit pas être partitionné.
  9. Type:

    dd if = / dev / hda of = / dev / hdb

    (cela prendra probablement beaucoup de temps)
  10. Exécutez l'outil GParted et redimensionnez le / dev / hdb pour occuper tout l'espace libre.
  11. Éteignez la machine virtuelle.
  12. Dans les paramètres Disques durs de la machine virtuelle, retirez l'ancien disque dur et définissez le nouveau pour IDE Primary Master .

comment vais-je démarrer à partir de cette image iso?
user3183

J'ai ajouté des étapes qui expliquent cela. Si quelque chose n'est pas clair, n'hésitez pas à demander :-)
Tomas Sedovic

Pour copier les fichiers, cp -adevrait probablement être utilisé à la place de dd. ddcopie le système de fichiers complet, y compris l'espace vide, donc cela prend beaucoup plus de temps. cp -as'occupe des deux choses qui posent généralement un problème cp: les autorisations utilisateur et le suivi des liens symboliques.

nagul: ne ferait pas de cp -amal à toutes ces informations sur le secteur de démarrage? Je pensais que cp est destiné à la copie de fichiers et de répertoires. Mais dans ce cas, un clone parfait du disque dur est nécessaire. Je suppose.
Tomas Sedovic

Spécifiez la taille de bock de la ddcommande pour qu'elle prenne beaucoup moins de temps (mais encore assez longtemps). dd if=/dev/hda of=/dev/hdb bs=16M
Chris Nava

6

Vous souhaitez (au moins il y a un an et demi) redimensionner le disque virtuel utilisé par votre machine virtuelle. Vous utilisez VirtualBox, il s'agit donc très probablement d'un fichier VDI. Les fichiers VDI peuvent être fixes ou dynamiques. Le fixe a tous les blocs (unités de données dans les fichiers VDI, chacun a 1 Mo par défaut) alloués depuis le début, donc la taille de l'image de 10 Go est de 10 Go (un peu plus en fait, car vous avez des métadonnées, mais ce serait probablement encore moins que 50 Ko dans votre cas). Le fichier dynamique se développe au fur et à mesure que vous y écrivez, ayant au début 0 blocs préalloués (VDI se compose uniquement de métadonnées).

Préface

Je ne décris que l'expansion de l'image. C'est à vous de décider ce que vous ferez d'un nouvel espace. Vos partitions avec les systèmes de fichiers peuvent être redimensionnées après expansion ou vous pouvez créer de nouvelles partitions. C'est un problème distinct, mais Tomas Sedovic vous a indiqué le GParted Live CD, qui peut vous aider à effectuer de telles tâches. Personnellement, je préfère Parted Magic , car il a d'autres outils utiles sur ISO.

Extension du VDI fixe

Si vous avez corrigé VDI, vous pouvez utiliser mon petit outil appelé vidma - Virtual Disks Manipulator . Il existe un exefichier prêt à l'emploi pour les utilisateurs de Windows (2000 et supérieur). Pour les utilisateurs de systèmes POSIX (comme Linux), il existe un code source que vous pouvez simplement compiler en utilisantmake .

Vidma prend en charge le redimensionnement sur place, c'est-à-dire qu'il peut redimensionner votre image sans créer de nouveau fichier. Dans votre cas, cela signifierait que vous n'avez besoin que de 40 Go et de quelques Mo d'espace libre pour étendre votre image de 10 Go à 50 Go. C'est très utile (et la principale raison pour laquelle j'ai écrit cet outil), mais si quelque chose se passe mal (les lois de Murphy sont impitoyables) et que vous n'avez pas de copie de votre image, alors vous avez un vrai problème. C'est pourquoi ce n'est pas recommandé, surtout pour les utilisateurs inexpérimentés.

Pour continuer, vous devez disposer de 50 Go et de quelques Mo d'espace libre.

vidma image.vdi 51200 newimage.vdi

Avant de supprimer une ancienne image, vous devez soigneusement vérifier si newimage.vdi fonctionne sans problème. vidmane modifie pas l'UUID de l'image, vous devez donc supprimer l'ancien de VirtualBox Virtual Media Manager avant de pouvoir en ajouter un redimensionné. Vous pouvez également modifier l'UUID de la nouvelle image pour éviter de supprimer l'ancienne.

VBoxManage internalcommands sethduuid newimage.vdi

Extension du VDI dynamique

Depuis VirtualBox 4, vous pouvez redimensionner VDI dynamique en utilisant VBoxManage:

VBoxManage modifyhd image.vdi --resize 51200

Cette commande étend le fichier VDI à 51200 Mo, soit 50 Go. Cela se fera sur place et le nombre de blocs alloués ne sera pas augmenté, vous n'avez donc pas vraiment besoin de 40 Go supplémentaires, mais il est évidemment nécessaire de pouvoir utiliser pleinement l'image redimensionnée.

EDIT
vidma depuis la version 0.0.3 prend également en charge le redimensionnement des fichiers VDI dynamiques.


Pour mieux comprendre vidma, en plus de vérifier les liens avant le référentiel GitHub , vous pouvez aller sur le forum VB . La lecture de la page de manuel de vidma (1) est recommandée.


juste pour souligner, que VBoxManag est un programme trouvé dans l'installation de la boîte virtuelle. Par défaut, vous pouvez le trouver dans: C: \ Program Files \ Oracle \ VirtualBox.
Black Horus

4

Considérez la chose la plus simple à faire: ajoutez un autre disque dur virtuel. 10 Go suffisent pour une partition "système", même pour Windows. Ensuite, vous ajoutez un lecteur "d:" de 50 Go. Dans VirtualBox, vous utilisez simplement Virtual Media Manager, créez le lecteur et ajoutez-le à votre machine.

Avantage: vous pouvez le restaurer indépendamment de la partition système. Vous pouvez même effacer et réinstaller la partition système et ne pas affecter votre partition "données". Un autre est que vous pouvez l'utiliser sur plusieurs machines virtuelles (pas à la fois, je pense), Y COMPRIS un invité Windows ET Linux. Agréable!

Si Windows est votre système d'exploitation invité, 10 Go suffisent pour Windows et tous les autres programmes Windows "non refroidis" (la plupart) qui installent toutes sortes de choses dans le registre et dans les répertoires Windows. Certaines choses peuvent être installées sur la partition de données, comme les bibliothèques graphiques pour les programmes, etc.


4

Cet article donne des instructions étape par étape sur la façon de le faire avec des captures d'écran. Il y a aussi un autre bon article sur la façon de procéder ici .


ok, cela a fonctionné, mais pour une raison quelconque, si je retire l'ancien disque dur, chaque fois que je redémarre et tente de me connecter, l'écran devient tout bleu avec le son qui s'éteint comme je viens de me connecter. Si je rajoute l'ancien disque dur, cela fonctionne (il est réglé sur esclave primaire). très étrange!
user3183

Le premier lien est maintenant bouché ...
Kevin Pullin

Vous pouvez accéder au lien sans images via la machine de retour .
Jim McKeeth

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.