Was tun, wenn die /boot-Partition bei vor vielen Jahren installierten Linux-Systemen nicht mehr groß genug ist

Am Beispiel Ubuntu muss die /boot-Partition mindestens 2, am besten 3 Kernel und die Initramdisk beherbergen können. Da in neueren Ubuntu-Versionen sowohl der Kernel als auch der Initramdisk aufgrund von Kernelmodulen und anderen Daten immer weiter ansteigen, können die Standardwerte von damals, meist um die 240 MB, in vielen Fällen nicht mehr ausreichen.

Beispiel: Ein System wurde 2013 als Ubuntu 12.04 installiert und durchweg bis zur aktuellsten LTS-Version 24.04 gehoben. Das ist nicht unmöglich und auch keine Seltenheit – im Gegenteil, bei entsprechender Vorbereitung ist das auf vielen Systemen mit persistenten Daten ein schneller, pragmatischer Weg, um diese Systeme zügig aktuell und audit-konform zu bekommen. Dann wurde im normalen Update-Prozess das damalige Standard-Partitionierungsschema nicht automatisch aktualisiert. Das heißt: /boot ist nach wie vor eine zu kleine ext2-Partition mit „bootable“-Flag in der Partitionierungstabelle.

Wie bekommt man das nun einfach gelöst?

SWAP direkt nach /boot

Zuerst mal sollte man prüfen, ob man persistente Daten direkt im Anschluss an die /boot-Partition hat oder ob, wie damals oft der Fall, als zweite Partition lediglich eine SWAP-Partition darstellt, denn diese könnte man leicht entfernen oder verringern.

swapoff /dev/sda2
nano /etc/fstab
# Swap entfernen/kommentieren

fdisk /dev/sda
# Partitionstabelle kopieren (Sicherung)
# Partitionstabelle anpassen (Swap entfernen oder verkleinert anlegen, dafür Partition 1 größer, Bootflag setzen nicht vergessen)
# Speichern

mkswap /dev/sda2 # Optional wenn weiterhin Swap-Partition gebraucht wird
swapon /dev/sda2 # Optional wenn weiterhin Swap-Partition gebraucht wird
blkid # UUID von /dev/sda2 merken
nano /etc/fstab
# Swap anlegen

resize2fs /dev/sda1

Bei sehr alten Partitionstabellen muss berücksichtigt werden, dass die /boot-Partition genau an der richtigen Stelle (Sektor) wie vor der Änderung beginnt. Es kann hier notwendig sein, ein paar besondere Parameter für fdisk zu setzen.

Sollte man den SWAP-Speicher gänzlich entfernen wollen oder müssen, so empfiehlt sich der Wechsel auf ein SWAP-File.

Freier Speicher direkt nach /boot

Dieser Fall ist gelagert wie SWAP direkt nach /boot, man muss nur keinen SWAP-Speicher entfernen oder verschieben. Unwahrscheinlicher Fall, der in der Regel nicht automatisch eintritt.

Freier Speicher in der Mitte oder am Ende der physischen Platte

Schwieriger, da hier mithilfe eines Live-Systems und am besten Tools wie GParted die Datenpartition inklusive Daten verschoben werden müssen. Der Vorgang dauert nicht nur lange, sondern ist auch anfälliger für Bedienerfehler. Backups sind must-have!

Erst wenn die Datenpartitionen mit Daten verschoben sind, wird Platz nach der /boot-Partition frei, sodass diese dann vergrößert werden kann. (siehe „Freier Speicher direkt nach /boot)

LVM

Im Fall LVM ist es ganz einfach: Die /boot-Partition kann einfach mit in der VG verbleibenden Extents vergrößert werden. Achtung: Nicht über den 2TB-Marker hinten hinaus. Die Extents müssen sich innerhalb der ersten 2 Terabyte der physischen Platte befinden, sonst bootet GRUB nicht mehr aufgrund der Tatsache, dass es nicht über 2 TB adressieren kann.

Schlusswort

Zusammengefasst sind das die gängigsten Fälle und die passenden Lösungsansätze. Insbesondere für Anfänger kann es sich zeitlich lohnen, eine Sicherung des Systems anzufertigen (die sollte ohnehin vorhanden sein) und das System anschließend als neue Installation aufzusetzen. Vorteil: Bei fast allen aktuellen Distributionen würden wahrscheinlich UEFI und GPT-Partitionierungstabelle zum Einsatz kommen – günstiger Zusatzeffekt ist hier der technologische Wechsel auf zeitgemäßere Lösungen.

Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert