Raspberry Pi: Eine Partition erweitern

Nachdem ein Raspberry Pi oder banana Pi Image auf eine SD Karte kopiert wurde, nutzt die System-Partition in fast allen Fällen nicht den verfügbaren Speicherplatz auf dem Datenträger. Ob die Partition auf einer SD Karte oder eine Festplatte liegt ist für diese Anleitung nicht wichtig.

Starten Sie das Festplatten-Partitionierungsprogramm zur Anzeige der vorhandenen Partitionen:

sudo fdisk -l
Disk /dev/mmcblk0: 14.8 GiB, 15912140800 bytes, 31078400 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x000ebf83
Device Boot Start End Sectors Size Id Type
/dev/mmcblk0p1 * 204800 729087 524288 256M c W95 FAT32 (LBA)
/dev/mmcblk0p2 
729088
3071999 2342912 1.1G 83 Linux

Notieren Sie sich den Startwert für die Linux-Partition:

729088

Starten Sie das Programm "fdisk" mit root Rechten für die SD Karte / Festplatte:

sudo fdisk /dev/mmcblk0
Welcome to fdisk (util-linux 2.27.1).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Command (m for help):

Durch Drücken vpn "p" (und "Enter") wird die aktuelle Partitionstabelle angezeigt:

Command (m for help): p
Disk /dev/mmcblk0: 14.8 GiB, 15912140800 bytes, 31078400 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x000ebf83
Device Boot Start End Sectors Size Id Type
/dev/mmcblk0p1 * 204800 729087 524288 256M c W95 FAT32 (LBA)
/dev/mmcblk0p2 729088 3071999 2342912 1.1G 83 Linux
Command (m for help):

Hier sollten Sie nochmals prüfen, ob Sie gerade die richtige SD Karte / Festplatte bearbeiten. Die Partiotion "/dev/mmcblk0p1" (die erste Partition vom Typ "W95 FAT32") wird nicht verändert. Sie dient zum Booten des Systems und darf auch nicht gelöscht werden.

Die zweite Partition löschen wir jetzt mit "d" und "2":

Command (m for help): d
Partition number (1,2, default 2): 2
Partition 2 has been deleted.

Jetzt wird die gleiche Partition sofort wieder durch "n" neu angelegt.
Dabei unbedingt aufpassen:
Wenn der Start ("first sector") angegeben werden soll, den notierten Wert eingeben (hier "729088") und nicht die Vorgabe übernehmen !

Command (m for help): n
Partition type p primary (1 primary, 0 extended, 3 free) e extended (container for logical partitions)
Select (default p): p
Partition number (2-4, default 2): 2
First sector (2048-31078399, default 2048): 
729088
Last sector, +sectors or +size{K,M,G,T,P} (729088-31078399, default 31078399): Created a new partition 2 of type 'Linux' and of size 14.5 GiB.

Die neuen Angaben jetzt mit "w" speichern:

Command (m for help): w
The partition table has been altered.
Calling ioctl() to re-read partition table.
Re-reading the partition table failed.: Device or resource busy
The kernel still uses the old table. The new table will be used at the next reboot or after you run partprobe(8) or kpartx(8).

Das System muss jetzt neu gestartet werden:

sudo reboot

Nachdem der Neustart abgeschlossen ist, wird die neue Partitionsgröße gesetzt:

sudo resize2fs /dev/mmcblk0p2
resize2fs 1.42.13 (17-May-2015)
Filesystem at /dev/mmcblk0p2 is mounted on /; on-line resizing required
old_desc_blocks = 1, new_desc_blocks = 1
The filesystem on /dev/mmcblk0p2 is now 3793664 (4k) blocks long.

Um die neue Größe der Partition zu prüfen, nutzen wir den Befehl "df":

df -h /
Filesystem Size Used Avail Use% Mounted on
/dev/mmcblk0p2 15G 890M 13G 7% /

Dieser Artikel hat Dir geholfen ?
.. und Dir nerviges Ausprobieren, Suchen und Zeit erspart ?

Dann würde ich mich sehr freuen, wenn Du diese werbefreie Hilfeseite mit einer kleinen Anerkennung unterstützen würdest.
Vielen Dank !
PayPal Donate QR Code

12 comments

  1. Wird dabei der komplette Inhalt der SSD gelöscht? Ich hatte vorher ein iobroker Image auf eine leere SSD geschrieben und möchte nun diese SSD wieder erweitern.

    1. Bei unseren Tests bleiben die Daten erhalten. Das liegt an deer exakten (!) Überlagerung der Partitionen. Garantie übernehmen wir (wie immer) nicht, denn auch Programm wie „fdisk“ entwickeln sich weiter und wenn z.Bsp. dort die Entwickler eine andere Logik einbauen … dann ändert sich das Ergebnis. Ich würde es an einer Test SD prüfen, wie Ihr System damit umgeht.

  2. Perfekt, danke für die Anleitung, ich benutze eine externe Festplatte als / und auch mit der hat es wunderbar funktioniert.

  3. Perfekt – das ist genau die Lösung, nach der ich gesucht habe. Vielen Dank! Daten wurden bei mir nicht überschrieben.

  4. Danke, das war wirklich eine gute Anleitung. Ich konnte das auf dem bestehenden Iobroker durchführen, ohne das irgendwelche Daten gelöscht wurden. Jetzt habe 50 GB mehr Platz!

    1. Danke Mailhilfe für diesen Kommentar. Es ist sehr selten, dass wir einen Dank erhalten und daher haben wir uns umso mehr über Deinen Kommentar gefreut !

  5. Super, vielen Dank! Das war hilfreich und hat auch geklappt.

    Ich habe initial ein IOBroker Image aufgesetzt. Dadurch war nicht der gesamte Platz der SD-Karte ausgenutzt.

    Mit dieser Anleitung konnte ich die Partition erweitern und alle Daten bleiben erhalten.

    Kurzer Schreck ereilte mich hierbei, da so ein Fall in der Anleitung nicht vorkam:
    Partition #2 contains a ext4 signature.
    Do you want to remove the signature? [Y]es/[N]o: N

    Mit der beherzten Eingabe von „N“ ging nichts schief.

    Danke nochmals!!

Schreibe einen Kommentar

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

neun − zwei =