Van nekem egy (64-bites) FreeBSD 11-esem VBox-ban, egy 8 GB-s fixed-size VDI image-ben. Sajnos sikerült egy pkg install xyz kapcsán telerakni a szabad helyet. Baj ugyan nem lett belőle, de több hely kellett. Rákerestem, hogy hogyan lehet átméretezni VDI image-eket:VBoxManage modifyhd FreeBSD64.vdi --resize 12288 Aha, ahogy azt a Móricka elképzeli: VBOX_E_NOT_SUPPORTED, mert csak dynamic VDI-t lehet átméretezni. Hogy lehet átállítani? Azt sehogy, de lehet klónozni:VBoxManage clonehd FreeBSD64.vdi FreeBSD64_tmp.vdi (Ha nem adunk meg típust, akkor dynamic lesz.) Utána csatoljuk le az eredetit és töröljük is ki, mert már nem kell.VBoxManage closemedium disk FreeBSD64.vdi
rm FreeBSD64.vdi Most lehet átméretezni.VBoxManage modifyhd FreeBSD64_tmp.vdi --resize 12288 Akkor állítsuk vissza fixed-re:VBoxManage clonehd FreeBSD64_tmp.vdi FreeBSD64.vdi --variant Fixed Error:Usage:
VBoxManage clonemedium [disk|dvd|floppy] <uuid|inputfile> <uuid|outputfile>
[--format VDI|VMDK|VHD|RAW|<other>]
[--variant Standard,Fixed,Split2G,Stream,ESX]
[--existing]
Syntax error: unknown option: -–variant Anyád. És ha elérakom a kapcsolót?VBoxManage clonehd --variant Fixed FreeBSD64_tmp.vdi FreeBSD64.vdi Akkor jó. Hát ez remek. Ugyan még a help is azt mondja, hogy forrás, cél és aztán a típus, de úgy csak azt írja, hogy ismeretlen opció. Fordítva meg megy. Mindegy. Töröljük az átmenetit:VBoxManage closemedium disk FreeBSD64_tmp.vdi
rm FreeBSD64_tmp.vdi Akkor sikerült átméretezni a fixed VDI-t, de most a partíciót is át kell. Húzzuk fel az image-et device-nak:modprobe nbd max_part=16
qemu-nbd -c /dev/nbd0 FreeBSD64.vdi
partprobe /dev/nbd0 Aztán parted:parted /dev/nbd0 Beugat, hogy Error: The backup GPT table is not at the end of the disk, as it should be. Fix, by moving the backup to the end (and removing the old backup)? Javíttassuk meg vele (y). Aztán:resizepart 3 12280
quit Lehet eltávolítani az eszközt:qemu-nbd -d /dev/nbd0
rmmod nbd Akkor átméreteztük a partíciót, most a filerendszert is át kell. Lehet felbootolni a FreeBSD-t és kérni egy zpool status-t, hogy megtudjuk, hogy mi a pool és a benne rejlő device neve. (zroot és ada0p3) Aztán:zpool online -e zroot ada0p3 Ezután lehet megismételni az előbb félbeszakadt telepítést. |