Wenn die Festplatte der VMMain zu voll wird und es keine Möglichkeit gibt, freien Speicherplatz zu schaffen, ist es nötig, die Festplatte der VMMain zu vergrößern.
Das Festplatten-Image befindet sich unter /home/vbox/vms/vmmain/vmmain.vdi .
Die virtuelle Festplatte ist zur Zeit auf 50GB begrenzt. Auf numerobis sind insgesamt 64GB für die VMs verfügbar, eine weitere Vergrößerung wäre also ohne eine Erweiterung des Speicherplatzes auf numerobis nicht sinnvoll. Dennoch halte ich hier mal eine Schritt-für-Schritt Anleitung fest.
Eine Vergrößerung des Images ist auf folgende Weise möglich:
Eine neue, größere virtuelle Festplatte erstellen und die alte darauf Klonen
cd /home/vbox/vms/vmmain
VBoxManage createhd --filename vmmain_new.vdi --size <sizeinmb> --format VDI
VBoxManage vmmain.vdi vmmain_new.vdi --existing
Das alte Image auswerfen:
VBoxManage storageattach vmmain --storagectl "IDE Controller" --port 0 --device 0 --medium none
Das alte Image löschen und das neu erstellte Image umbenennen zu "vmmain.vdi"
Das Image direkt vergrößern
Ab VirtualBox 4.0 sollte auch folgendes funktionieren um das Image zu vergrößern
VBoxManage storageattach vmmain --storagectl "IDE Controller" --port 0 --device 0 --medium none
VBoxManage modifyhd vmmain.vdi --resize <sizeinmb>
Die Partitionen an das größere Image anpassen
Das Vergrößern des Images ist nur der erste Schritt. Nun muss noch die Root-Partition vergrößert werden (hier mit Hilfe einer GParted LiveCD).
VBoxManage storageattach vmmain --storagectl "IDE Controller" --port 0 --device 0 --type dvddrive --medium /home/vbox/etc/gparted.iso
VBoxManage storageattach vmmain --storagectl "IDE Controller" --port 1 --device 0 --type hdd --medium vmmain.vdi
Nun wird die VMMain gestartet und bootet von CD.
VBoxHeadless --startvm vmmain
Der Port, auf dem der Remote-Desktop-Server läuft, wird dabei ausgegeben. Dieser wird gebraucht um sich mit einem RDP-fähigen Viewer auf die VMMain zu verbinden.
Unter Linux benutzt man dazu z.B. rdesktop, unter Windows z.B. mstsc.exe
Man baut eine Verbindung zu 134.245.248.15:[RDPPort] auf.
Nun müsste man eine Verbindung zur VMMain haben, kann man GParted starten und die Partitionierung anpassen:
- Das extended Laufwerk auf die völle Größe vergrößern
- Die Partition im extended Laufwerk ganz ans Ende des extended Laufwerks verschieben
- Das extended Laufwerk auf die minimale Größe schrumpfen, der freie Speicherplatz befindet sich jetzt direkt hinter der Rootpartition
- Die Rootpartition auf die volle Größe vergrößern
- Alle Änderungen übernehmen und die VM herunterfahren
Nun muss die LiveCD noch entfernt werden:
VBoxManage storageattach vmmain --storagectl "IDE Controller" --port 0 --device 0 --medium none
VBoxManage storageattach vmmain --storagectl "IDE Controller" --port 1 --device 0 --medium none
VBoxManage storageattach vmmain --storagectl "IDE Controller" --port 0 --device 0 --medium vmmain.vdi --type hdd
Jetzt kann die VMMain wieder gestartet werden und sollte wie gewohnt laufen:
VBoxManage startvm --type headless