Ich habe nicht mehr genügend Speicherplatz auf einer virtuellen Maschine, die ein VMDK ist, und muss die Größe des virtuellen Images ändern. Größenänderung mit dem Befehl
vboxmanage modifyhd Machine-disk1.vmdk --resize 30720
gibt den Fehler
Progress state: VBOX_E_NOT_SUPPORTED
VBoxManage: error: Resize hard disk operation for this format is not implemented yet!
Wie kann ich die Größe eines VMDK-Images ändern?
quelle
VBoxManage clonehd "~/path/to/symlink/packer-centos-6.5-x86_64-disk1.vmdk" "/media/k0pernikus/thatFatSlowDisk/cloned_packer-centos-6.5-x86_64-disk1.vdi"
Wenn Sie den tatsächlichen Pfad angeben , stürzt der Befehl abVBoxManage: error: Cannot register the hard disk
, da VBox glaubt, dass er bereits an einer anderen Stelle definiert ist.clonehed
immer wieder Volumes erstellt werden, die von der nicht unterstützt werden--resize
. Es stellt sich heraus, dass das Anhängen--format vdi
an dasclonehd
entscheidend ist!Ich konnte die Größe des VMDK ändern, indem ich es klonte und dann änderte und die Größe änderte.
quelle
VBoxManage.exe: error: Code CO_E_SERVER_EXEC_FAILURE (0x80080005)
Führen Sie beim Versuch, diesen Befehl unter Windows auszuführen, die Eingabeaufforderung als Nichtadministrator aus.virtualdisk.vmdk
:vboxmanage clonehd virtualdisk.vmdk "new-virtualdisk.vdi" --format vdi vboxmanage modifyhd "new-virtualdisk.vdi" --resize 30720
Ich habe einen Windows 7-Client auf einem Mac-Host und dieser Beitrag war sehr hilfreich. Vielen Dank.
Ich würde hinzufügen, dass ich gparted nicht verwendet habe. Ich war das:
Süss! Ich habe es vorgezogen, ein Tool eines Drittanbieters mit Warnungen vor Datenverlust zu verwenden.
Prost!
quelle
VBoxManage erledigt den Trick, aber vergessen Sie nicht, dass Sie GParted oder ein anderes Tool verwenden müssen, um den mit VBoxManage erstellten freien Speicherplatz zuzuweisen .
Schauen Sie sich meinen Blog-Beitrag an, um detaillierte Informationen und schrittweise Screenshots zu erhalten.
quelle
Eigentlich werden nur diese folgenden Befehle benötigt:
Anschließend können Sie im Virtualbox-GUI-Speicher cloned.dvi auswählen.
Starten Sie danach die virtuellen Fenster und erweitern Sie Ihre C-Festplatte als Methode für Code Chops.
Es ist nicht erforderlich, die * .vdi-Datei zurück in die * .vmdk-Datei zu konvertieren.
quelle
Da es sich um eine VMDK-Datei handelt, können Sie VMWare verwenden
vdiskmanager
, sofern diese für Ihre Plattform verfügbar ist. VMWare hat x86 Linux, Windows und OS X - Versionen hier .Und dann machst du einfach:
Sie müssen nicht klonen und dann die Festplatte erweitern. Der Nachteil ist, dass Sie das zusätzliche Tool benötigen und vmdk das Festplattenformat von VMWare ist und Sie weiterhin Virtualbox verwenden, sodass möglicherweise Inkompatibilitäten auftreten.
qemu-img
könnte auch funktionieren, aber ich bin nicht sicher, ob es die Größenänderung von VMDK-Dateien unterstützt. Es würde ungefähr so aussehen:Und nur zur Erinnerung: Bei beiden müssen Sie die Partition nach dem Ändern der Größe der zugrunde liegenden Festplatte noch vergrößern. Alle diese Werkzeuge sind im Wesentlichen
dd if=/dev/old_disk of=/dev/new_disk bs=16M
.quelle
Versuchte alle Lösungen hier, aber nichts schien zu funktionieren. Nach stundenlangem Graben habe ich diesen Blog gefunden Beitrag und wie durch Zauberei funktioniert alles. Ich musste kleine Anpassungen vornehmen, daher hier die modifizierte Version. Getestet mit Docker Version 17.06.0-ce, Build 02c1d87.
Sobald Entwickler wirklich anfangen, ihre Anwendungen zu containerisieren, generieren sie häufig eine große Anzahl von Images und füllen schnell den 20 GB Festplattenspeicher aus, der der virtuellen Docker-Maschine standardmäßig zugewiesen ist. Um sicherzustellen, dass die virtuelle Docker-Maschine über ausreichend Speicherplatz verfügt, sollten Sie die Größe von / dev / sda1 auf eine vernünftigere Zahl ändern.
Stoppen Sie die virtuelle Docker-Maschine
docker-machine stop default
.Das Boot2Docker-Paketinstallationsprogramm wird mit einem VMDK-Volume geliefert, dessen Größe die nativen Tools von VirtualBox nicht ändern können. Um die Größe des Docker-Datenträgers zu ändern, klonen Sie zuerst den VDI-Datenträger vom Standard-VMDK-Datenträger
vboxmanage clonehd /full/path/to/disk.vmdk /full/path/to/disk_resized.vdi --format VDI --variant Standard
.vboxmanage modifyhd /full/path/to/disk_resized.vdi --resize <size in MB>
.default
VM aus und klicken Sie oben auf das Zahnrad "Einstellungen".docker-machine start default
quelle
Sie können den Vmware-Player verwenden, um die Größe eines VMDK zu ändern. Dadurch wird die Roundtrip-Konvertierung (in anderen Beiträgen angegeben) entfernt, wenn Sie sie im VMDK-Format beibehalten möchten. Stellen Sie einfach sicher, dass Sie beim Hinzufügen des VMDK zu VMware nicht auf das Aktualisierungsformat klicken, wenn Sie dazu aufgefordert werden. Behalten Sie das aktuelle bei, falls VirtualBox dies nicht akzeptiert.
quelle
Zum Verkleinern der Bildgröße verwende ich die folgenden Schritte:
cat /dev/zero > z;sync;sleep 3;sync;rm -f z
VBoxManage clonehd "source.vmdk" "cloned.vdi" --format vdi
VBoxManage modifyhd cloned.vdi --compact
VBoxManage clonehd "cloned.vdi" "resized.vmdk" --format vmdk
quelle
Wie in der Antwort von Luca erwähnt, sind die erforderlichen Schritte:
Klonen Sie das VMDK-Image in das VDI-Format
VBoxManage clonehd "source.vmdk" "cloned.vdi" --format vdi
Ändern Sie die Größe des VDI-Bildes
VBoxManage modifyhd "cloned.vdi" --resize 51200
Klonen Sie zurück in das VMDK-Format
VBoxManage clonehd "cloned.vdi" "resized.vmdk" --format vmdk
Schritt 3 ist optional, wenn Sie stattdessen ein VDI-Image verwenden können.
Alle diese Schritte können auch in der grafischen Benutzeroberfläche von VirtualBox unter ausgeführt werden
File -> Virtual Media Manager
. Wählen Sie das Laufwerk aus, das Sie klonen möchten, und wählen Sie dannCopy
. Ein Dialogfeld wird geöffnet, in dem Sie das Festplattenformat und die Optionen auswählen können. Um die Größe eines VDI-Bildes zu ändern, verwenden Sie einfach den Schieberegler unten (klicken Sie aufProperties
wenn es nicht sichtbar ist).Schließlich müssen Sie möglicherweise auch die Festplattengröße im Gastbetriebssystem ändern:
gparted
oder verwendenkparted
.quelle
VirtualBox für Windows
Ändern der Größe der Festplatte Datei , während die Erhaltung der virtuellen Maschine Einstellungen!
Schritt 1 - Ändern Sie die Größe der Festplattendatei
Starten Sie cmd.exe
cd
Oracle VM VirtualBox dir (auf 64-Bit - Systemen:"C:\Program Files\Oracle\VirtualBox\"
)Führen Sie die folgenden Befehle aus (wie oben):
Der Windows Explorer und "Adresse als Text kopieren" über die Adressleiste sollen Ihnen dabei helfen, den gewünschten Pfad zu finden.
Unter Windows enthält das VirtaulBox-VM-Verzeichnis unter Ihrem Benutzer möglicherweise eine XML-formatierte Datenbankdatei mit Einstellungen, die Sie für Ihre VM konfiguriert haben. Benennen Sie diese Datei mit einer
.bak
Erweiterung um (sie hat eine.vbox
Erweiterung). Benennen Sie die Originaldatei ebenfalls.vmdk
mit einer.bak
Erweiterung um, um einen weiteren Fehler zu vermeiden. Sie können jetzt den dritten Schritt sicher ausführen, ohne die Fehlermeldung zum Konvertieren des Computers in das.vmdk
Format oder den Fehler "Festplatte duplizieren".Sie erhalten ein UID-Token . Kopieren Sie dieses Token, indem Sie es aus dem Windows Command Interpetor-Fenster ziehen und die
Ctrl+C
Tastenkombination verwenden.Öffnen Sie die
.vbox.bak
Datei in einem Texteditor wie Notepad ++. Sie erhalten eine XML-ähnliche Datenbankdatei. Suchen Sie nach diesen Zeilen:Auf der Linie
<HardDisk uuid="{some uid}" location="C:\path_to\source.vmdk" ...
, löschen Sie die alte UID zwischen den Klammern Token und fügen Sie das passende aus dem Befehlsfenster kopiert. Stellen Sie sicher, dass Sie die Klammern an Ort und Stelle lassen !Speichern Sie diese Datei und beenden Sie Ihren Texteditor. Benennen Sie die
.vbox.bak
Datei um, um die erwartete Erweiterung von zurückzugeben.vbox
.Schritt 2 - Entfernen Sie den Müll
Es ist jetzt sicher, die
.bak
im Verzeichnis verbleibenden Dateien zu entfernen . Was bleibt, ist eine Größenänderung.vmdk
mit einer aktualisierten.vbox
Datenbank unter Verwendung Ihrer zuvor erhaltenen VirtualBox Manager-Einstellungen.Schritt 3 - Ändern Sie die Größe der Festplattenpartition, um den freien Speicherplatz zu füllen
Sie können jetzt den VirtualBox VM Manager starten und Ihre VM ausführen, indem Sie die entsprechenden Tools für das Betriebssystem verwenden, um den neuen freien Speicherplatz zu füllen.
Verwenden Sie für Windows-VMs
diskpart
die Eingabeaufforderung, die von der Windows-Wiederherstellungskonsole (Wiederherstellungspartition) gestartet wurdeSELECT DISK 1
,LIST PARTITION
und erfassen Sie dann die Partitionsnummer IhresC:\
LaufwerksSELECT PARTITION #
. Mit können Sie dieEXTEND SIZE=mb
Größe des Windows C-Laufwerks auf den entsprechenden Wert ändern. Stellen Sie sicher, dass Sie Platz für die Wiederherstellungs- und Startpartitionen lassen! Es ist sicher, 4096 MB von Ihrer neuen Größe der virtuellen Festplatte zu subtrahieren, um diesen Wert zu erhalten, da Schattenkopien und Windows-Wiederherstellungsdateien vorhanden sind.Für Linux-VMs finden Sie eine Live-
.ISO
Version von gparted, die Sie mit der Festplattendatei der VM booten können, unter: http://gparted.org/. Sie gelangen direkt in ein auf grafischer Benutzeroberfläche basierendes gparted-gtk, von dem aus Sie es füllen können Ihr freier Speicherplatz.Bei PPC / Mac-VMs wird
Disk Utility
der Finder Sie beim Ausfüllen des freien Speicherplatzes unterstützen. Möglicherweise möchten Sie jedoch die Option gparted Linux in Betracht ziehen , da derzeit nur Hackintosh zum Starten von MacOSX in VirtualBox verwendet wird und Sie Ihr Volume nicht erweitern können während in MacOSX gebootet. Möglicherweise möchten Sie auch versuchen, die Einstellungen der VM vorübergehend zu änderngparted
, damit sie gestartet wird. MacOSX-Partitionen werden von gparted alsHFS
"Heaping File System" -Partitionen erkannt .Schritt 4 - Katzenfotos
Weil das Internet. ;) Du bist fertig. Genießen Sie Ihr neues
.vmdk
Image der virtuellen Festplatte mit VirtualBox für Windows!quelle
vboxmanage list hdds
. So entfernen Sie unerwünschte :vboxmanage closemedium disk <filename.vmdk>
. Zeigen Sie die SATA-Port-Nr., Geräte-Nr.: Anvboxmanage showvminfo <vmName>
. So lösen Sie die Festplatte:vboxmanage storageattach <vmName> --storagectl SATA --port <p#> --device <d#> --medium none
Hier finden Sie eine Möglichkeit, die Größe Ihrer VirtualBox-Festplatte zu ändern, unabhängig davon, ob es sich um eine Festplatte oder eine Festplatte mit dynamischem Format handelt. Insbesondere wird der Fehler verhindert, den Sie hatten, als Ihre Festplatte ein festes Format hatte.
Auf Ihrem Gastgeber:
Öffnen Sie ein Terminalfenster.
Wechseln Sie in das Verzeichnis mit der virtuellen Festplatte, deren Größe Sie ändern möchten. Zum Beispiel:
Erstellen Sie eine neue VirtualBox-Festplatte mit dem gewünschten Dateinamen, der gewünschten Größe (in Megabyte) und dem gewünschten Format (entweder
Standard
(dynamisch) oderFixed
). So erstellen Sie beispielsweise eine 50-GB-Festformatfestplatte mit dem NamenMyNewDisk.vdi
:Kopieren Sie die Originaldiskette auf die neue Diskette.
Die Größenänderung ist abgeschlossen! Sie können die Eigenschaften der neuen Festplatte überprüfen, wenn Sie möchten:
Ändern Sie die virtuelle Maschine so, dass stattdessen die neue Festplatte verwendet wird.
Als Nächstes müssen Sie auf Ihrem Gastbetriebssystem die Größe der Partitionen ändern, um den neu verfügbaren Speicherplatz zu nutzen.
quelle
Ich bin hier, weil ich die Größe einer Festplatte für meine Docker (CoreOS) -Entwicklungsumgebung ändern musste.
Laut CoreOS-Dokumenten muss die Größe der Betriebssystempartition nicht geändert werden - das ist falsch. Nachdem Sie die Größe der virtuellen Festplatte geändert haben, sollten Sie diese Anweisungen befolgen und die Größe der Betriebssystempartition über GParted ändern:
https://docs.docker.com/articles/b2d_volume_resize/
quelle
Eine schnelle und einfache Option:
Verschieben Sie Inhalte von der alten Festplatte auf die neue Festplatte:
Maschine einschalten
Warnung
Wenn die neue Festplatte kürzer als die Quelle ist, gehen die Daten verloren, die sich von der neuen Position der Festplattengröße auf der Quellfestplatte befinden.
Sie können verhindern, dass die Zuweisung von Delta-Speicherplatz, wobei Delta = Größe (Quellfestplatte) - Größe (neue Festplatte), am Ende der Quellfestplatte innerhalb des Betriebssystems vor Schritt 1 freigegeben wird.
quelle
Wirf es weg und fang von vorne an. Ignorieren Sie all diese Antworten - verschwenden Sie keine Zeit.
quelle
Laden Sie VMWare Workstation herunter, installieren Sie sie und verwenden Sie sie. Erstellen Sie eine neue VM basierend auf Ihrer aktuellen VMDK-Datei. Anschließend können Sie die Größe Ihres VMDK ändern. Für Details zu diesem Thema google for VMWare.
quelle
Sie müssen lediglich die folgenden Schritte ausführen:
Herzlichen Glückwunsch, genießen Sie Ihren freien Platz.
Dieses Video hilft Ihnen: https://youtu.be/ikSIDI535L0
quelle