Immer wieder passiert es mir, dass ich die Größe der Root-Partition unter ESX oder Proxmox zu klein festlege und nachträglich nach oben korrigieren möchte. Leider reicht es dafür nicht, die Festplatte in der Weboberfläche zu setzen, da die Partitionstabelle getrennt aktualisiert werden muss.
Um bei einem laufenden System die root-Partition zu vergrößern, bietet sich das Tool parted
zusammen mit resize2fs
an. Im folgenden Beispiel vergrößere ich die Partition /dev/sda2 auf die maximal mögliche Größe.
- Zu Beginn mus
parted
mit root-Rechten gestartet werden:
$ sudo parted
GNU Parted 3.2
Using /dev/sda
Welcome to GNU Parted! Type 'help' to view a list of commands.
- Im Anschluss muss die Festplatte ausgewählt werden. In meinem Fall
/dev/sda
.
(parted) select /dev/sda
Using /dev/sda
-
Zur besseren Übersicht kann nun noch mit
unit MiB
die Anzeigeeinheit auf Mebibytes geändert werden. -
Anschließend kann mit
print free
der freie Speicher der Festplatte angezeigt werden. Dabei bietetparted
direkt an die GPT Partitionstabelle um den freien Platz zu erweitern. Dies muss mitFix
bestätigt werden. Danach wird das aktuelle Festplattenlayout angezeigt:
(parted) print free
Warning: Not all of the space available to /dev/sda appears to be used, you can fix the GPT to use all of the space (an extra 104857600 blocks) or continue with the current setting?
Fix/Ignore? Fix
Model: VMware Virtual disk (scsi)
Disk /dev/sda: 153600MiB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
0.02MiB 1.00MiB 0.98MiB Free Space
1 1.00MiB 2.00MiB 1.00MiB bios_grub
2 2.00MiB 65536MiB 65534MiB ext4
65536MiB 153600MiB 88064MiB Free Space
- Nun kann mit
resizepart
die zweite Partition vergrößert werden. Um den vollen Platz zu nutzen, kann hier100%
verwendet werden. Ansonsten lassen sich auch beliebige Größen in diversen Einheiten z.B. Mebibyte (MiB) oder Sektoren (s) verwenden.
(parted) resizepart 2
Warning: Partition /dev/sda2 is being used. Are you sure you want to continue?
Yes/No? Yes
End? [65536MiB]? 100%
- Jetzt kann mit
print
verifiziert werden, ob alles geklappt hat. Bei mir sah das wie folgt aus:
(parted) print
Model: VMware Virtual disk (scsi)
Disk /dev/sda: 153600MiB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
1 1.00MiB 2.00MiB 1.00MiB bios_grub
2 2.00MiB 153600MiB 153598MiB ext4
- Zum Abschluss muss noch das Dateisystem an die Partition angepasst werden. Das klappt am schnellsten mit
resize2fs
:
$ sudo resize2fs /dev/sda2
resize2fs 1.44.1 (24-Mar-2018)
Filesystem at /dev/sda2 is mounted on /; on-line resizing required
old_desc_blocks = 8, new_desc_blocks = 19
The filesystem on /dev/sda2 is now 39321083 (4k) blocks long.