J'ai principalement utilisé des images de disque de taille fixe pour Oracle virtualbox, mais j'envisage de passer à des images de disque dynamiques car j'ai entendu dire que les images dynamiques ont des performances similaires aux images de taille fixe, sauf lors de l'expansion.
Cependant, une opération que je fais beaucoup consiste à remplir à zéro une image disque de taille fixe avant de la sauvegarder à l'aide d'un programme zip (pour réduire la taille de l'archive zip). Ma question est la suivante: lorsque je remplis à zéro un disque dynamique, la taille du disque augmentera-t-elle jusqu'à sa valeur maximale déclarée? (Pour mon cas spécifique, j'utilise sdelete -z
sur des partitions Windows.)
Une autre question est: existe-t-il un moyen de remplir à zéro les partitions sans augmenter la taille du disque?
Merci.
-- ÉDITER --
Pour clarifier, la raison pour laquelle je demande, c'est que je veux garder la taille des images de Virtualbox compressées au minimum. Remplir zéro d'une image de taille fixe fait le travail car la partie remplie de zéro ne contribue presque rien à l'image compressée. Cependant, si je passe au disque dynamique, le remplissage à zéro semble aller à l'encontre du but d'utiliser des images de taille dynamique.
La deuxième partie de ma question demande vraiment s'il existe une meilleure alternative que le remplissage à zéro qui peut supprimer les secteurs inutilisés sans augmenter la taille du disque.
la source
Réponses:
Je viens de le tester (à l'aide
sdelete -z
d'une machine virtuelle) et le fait de remplir le disque à zéro n'augmentera pas sensiblement la taille de l'image de disque dynamique. Virtualbox est suffisamment intelligent pour reconnaître que lorsque vous écrivez des zéros dans un bloc déjà vide, le disque n'a pas besoin de réécrire le bloc.Mais même si c'est le cas, ce n'est pas trop mal, car le remplissage nul du disque fera également vous permettre de le compacter à nouveau en utilisant les outils Virtualbox dans votre hôte: Comment compacter la taille du fichier VDI de VirtualBox?
Lorsque j'ai rempli ma machine virtuelle, la taille de l'image est passée de ~ 14,5 Go à ~ 15,5 Go mais n'a pas alloué complètement tout l'espace disque, qui aurait été d'environ 48 Go.
En fait zéro remplir le disque (via
sdelete -z
) vous permettra de libérer correctement tout espace qui a été écrit mais qui a depuis été libéré par votre système d'exploitation VM, alors vous pouvez exécuter la commandeVBoxManage.exe modifyhd c:\path\to\thedisk.vdi --compact
sur votre machine hôte pour compacter correctement l'image du disque dynamique revenir à sa taille minimale.la source
sdelete -z
n'augmente pas beaucoup la taille dynamique du disque.