Linux Festplattengröße ändern unter vmware mit gentoo
Hier eine einfache und schnelle Lösung, um die Plattengröße für gentoo Linux-Systeme unter VMware zu ändern. Oftmals ergibt sich im Betrieb von VMs das Problem, dass die zunächst allozierte Plattengröße nicht ausreicht oder zu hoch dimensioniert war. Dem kann mit den folgenden Befehlen leicht Abhilfe geschaffen werden. Dabei sollte auf der Partition, auf der sich die VM-Disk-Datei(en) befinden noch genügend Speicher frei sein, um eine neue Disk der gewünschten Größe anlegen zu können. Außerdem muß eine Downtime eingeplant werden. Diese hängt von der Größe der vorhandenen Daten (nicht der Partition) ab. Es wird davon ausgegangen, dass die VM-Disks SCSI-Disks sind und in der VM nur eine Platte (/dev/sda, SCSI 0:0) mit drei Partitionen vorhanden ist (sda1: /boot, sda2: swap, sda3: /). Für andere Konfigurationen lassen sich die Befehle aber leicht anpassen.
Achtung! Verwenden Sie die Code-Schnipsel nur, wenn Sie auch verstanden haben, was dort passiert! Sie könnten sonst evtl. alle Daten verlieren!
1. Anlegen einer neuen Disk SCSI 0:1 in der gewünschten neuen Größe
2. Die VM mit der Gentoo-Live-CD booten (ich hab 2006.1 verwendet)
3. Anlegen der Partitionen auf der neuen Disk
fdisk /dev/sdb <<EOF n p 1 +32M n p 2 +512M t 2 82 n p 3 w EOF
4. Formatieren der Partitionen
mkfs.ext2 /dev/sdb1 ; mkswap /dev/sdb2 ; mkfs.ext4 -T small /dev/sdb3
5. Mounten der Volumes
mkdir /mnt/old ; mkdir /mnt/new mount /dev/sda3 /mnt/old ; mount /dev/sdb3 /mnt/new mkdir /mnt/new/boot mount /dev/sda1 /mnt/old/boot ; mount /dev/sdb1 /mnt/new/boot
5. Daten kopieren
cd /mnt/old tar -cpf - . | (cd /mnt/new ; tar -xf -)
6. Grub installieren
chroot /mnt/new grub --no-floppy <<EOF device (hd0) /dev/sdb root (hd0,0) setup (hd0) quit EOF
7. Chroot beenden und unmounten
exit umount /mnt/new/boot ; umount /mnt/new umount /mnt/old/boot ; umount /mnt/old
8. System ausschalten
9. Alte Disk entfernen
10. Neue Disk auf den SCSI-Kanal der alten Disk setzen