Dieser Artikel beschreibt das Ändern der Größe eines bereits vorhandenen Images.
Situation: Aktuell befindet sich ein Image mit dem Namen “old.img” in der Cloud und wird dort verwendet. Es wird aber ein 4 Gigabyte großes Image benötigt.
Zunächst wird Speicherplatz für das neue Image erstellt.
dd if=/dev/zero of=new.img bs=1M count=4096
Anschließend werden temporäre Mountpoints erstellt.
mkdir old
mkdir new
Dem alten und neuen Image wird jeweils ein Block Loop Device (z.B. loop0 und loop1) zugewiesen.
losetup /dev/loop0 old.img
losetup /dev/loop1 new.img
Auf dem neuen Image wird ein Dateisystem erstellt.
mke2fs -j /dev/loop1
Die Images werden gemounted.
mount /dev/loop0 old
mount /dev/loop1 new
Das neue Image wird befüllt.
(cd old; tar czf - .)|(cd new; tar xzf -)
Die Images werden wieder unmounted.
umount /dev/loop0
umount /dev/loop1
Die Block Loop Devices werden wieder freigegeben.
losetup -d /dev/loop0
losetup -d /dev/loop1
In dem neuen Image “new.img” befindet sich nun eine Replizierung des alten Images “old.img”. Allerdings mit der neuen Größe von 4 Gigabyte. Das Image “new.img” kann nun in die Cloud hochgeladen, registriert und genutz werden.
Achtung!!! Es sollte vorab sichergestellt werden, dass die Root Partition der verwendeten Instanz groß genug ist um das neue Image zu benutzen.
Quelle
One reply on “Eucalyptus: Die Größe von Images ändern (Variante 2)”
[…] This post was mentioned on Twitter by René Büst, CloudUser | Ξxpert. CloudUser | Ξxpert said: #CloudUser: Eucalyptus: Die Größe von Images ändern (Variante 2) http://bit.ly/9MAaSJ […]