Aus Raspberry Pi Geek 08/2017

Mit PiShrink RasPi-Images platzsparend schrumpfen (Seite 2)

Wiederherstellen

Zum Test soll das ursprünglich auf einer 16 GByte großen SD-Karte installierte Raspbian-System auf eine Micro-SD-Karte mit nur 8 GByte umziehen. Dazu schreiben wir zunächst das mit PiShrink verkleinerte Image mit dd auf die Speicherkarte (Listing 5), packen diese in den Raspberry Pi und starten das geschrumpfte System.

Um den Speicherplatz auf die komplette Speicherkarte auszudehnen, startet das System automatisch beim ersten Boot-Vorgang einmal neu durch. Am Ende landen wir dann wieder im gewohnten Raspbian-System; ein df -h zeigt, dass das System jetzt wieder die komplette Karte verwendet (Listing 6).

Listing 5

 

$ lsblk
NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
[...]
sdd      8:48   1   7,4G  0 disk
??sdd1   8:49   1    63M  0 part /run/media/[...]/boot
??sdd2   8:50   1   7,3G  0 part /run/media/[...]/0aed834e-8c8f-412d-a276-a26
$ sudo dd if=raspberry-pi_pishrink.img of=/dev/sdd bs=1M; sync
1560+1 Datensätze ein
1560+1 Datensätze aus
1636684288 Bytes (1,6 GB, 1,5 GiB) kopiert, 116,203 s, 14,1 MB/s

Listing 6

 

pi@raspberrypi:~ $ df -h
Dateisystem    Größe Benutzt Verf. Verw% Eingehängt auf
/dev/root       7,2G    990M  6,0G   14% /
devtmpfs        459M       0  459M    0% /dev
tmpfs           463M       0  463M    0% /dev/shm
tmpfs           463M    6,2M  457M    2% /run
tmpfs           5,0M    4,0K  5,0M    1% /run/lock
tmpfs           463M       0  463M    0% /sys/fs/cgroup
/dev/mmcblk0p1   63M     21M   42M   33% /boot

Jenseits von Raspbian

Sichern Sie ein Raspberry-Pi-System, das nicht auf Raspbian basiert und dem eine /etc/rc.local fehlt, wie etwa die angesprochenen Kodi-Distributionen LibreELEC oder OpenELEC, dann erhalten Sie schon beim Schrumpfen des Images eine Fehlermeldung (Listing 7). In diesem Fall müssen Sie mit der Option -s bereits beim Eindampfen des Images verhindern, dass PiShrink das Kommando zum Vergrößern der Datenpartition in diese Datei einzubauen versucht. Danach läuft das Schrumpfen dann auch ohne eine Fehlermeldung durch (Listing 8).

Listing 7

 

### Fehlermeldungen beim Schrumpfen eines LibreELEC-Images:
$ sudo pishrink.sh libreelec.img
[...]
md5sum: /tmp/tmp.4ornQ3Va4y/etc/rc.local: Datei oder Verzeichnis nicht gefunden
/home/[...]/bin/pishrink.sh: Zeile 63: [: !=: Einstelliger (unärer) Operator erwartet.
[...]

Listing 8

 

### LibreELEC, OpenELEC und Co. schrumpft man besser so:
$ sudo pishrink.sh -s libreelec.img
Skipping autoexpanding process...
e2fsck 1.43.4 (31-Jan-2017)
/dev/loop2: Journal wird wiederhergestellt
Durchgang 1: Inodes, Blöcke und Größen werden geprüft
Durchgang 2: Verzeichnisstruktur wird geprüft
[...]
Die Inode-Referenzen werden aktualisierXXXXXXXXXXXXXXXXXXXXX-
Das Dateisystem auf /dev/loop2 is nun 49976 (1k) Blöcke lang.
Shrunk libreelec.img from 7,5G to 563M

Das auf die Speicherkarte zurückgeschriebene System wird nun jedoch nicht mehr automatisch vergrößert. LibreELEC und OpenELEC bieten in den Menüs auch keine Option zum Ausdehnen. Die in das System integrierte Routine fs-resize ist nur für eine frisch auf die SD-Karte kopierte Installation gedacht [2]. Mit Tools wie GParted [3] lässt sich die Partitionsgröße jedoch schnell wieder korrigieren – allerdings eben nur von Hand. GParted gibt es nur für Linux, Windows-Nutzer können das Programm jedoch bei Bedarf über eine Live-CD oder einen Live-USB-Stick starten.

In GParted wählen Sie über das Ausklappmenü in der rechten oberen Ecke die SD-Karte aus (meist unter der Geräte-ID /dev/sdd). Dann geben Sie die Datenpartition vor (im Beispiel die /dev/sdd2 mit einer Größe von nur 48,81 MByte) und öffnen über einen Rechtsklick das Kontextmenü. Dort wählen Sie die Option Größe ändern/Verschieben aus. Im sich öffnenden Dialog ziehen Sie den Schieberegler ganz nach rechts: So füllt die Partition die gesamte Speicherkarte aus und das System verschwendet keinen Speicherplatz mehr (Abbildung 2).

Abbildung 2: Mit GParted lässt sich die Datenpartition eines Raspberry-Pi-Systems von Hand auf die komplette Speicherkarte ausdehnen.

Abbildung 2: Mit GParted lässt sich die Datenpartition eines Raspberry-Pi-Systems von Hand auf die komplette Speicherkarte ausdehnen.

Fazit

Die Vielfalt an Einsatzgebieten und Betriebssystemen für den Raspberry Pi lädt zum Basteln ein: Heute dient der Mini-Rechner als stromsparender Server, morgen als kompaktes Mediacenter und übermorgen macht er sich samt Webcam und GPS-Tracker an Bord eines Wetterballons auf den Weg in die Stratosphäre.

Damit Sie das System nicht immer neu einrichten müssen, lohnt es sich, die angepasste Installation als Image zu sichern und bei Bedarf zurückzuspielen. Mit PiShrink geschrumpfte Abbilddateien nehmen auf der Festplatte weniger Platz ein und lassen sich schneller wieder auf eine neue Speicherkarte überspielen. Dabei vergrößert das System meist gleich die Datenpartition auf den gesamten freien Speicherplatz. 

DIESEN ARTIKEL ALS PDF KAUFEN
EXPRESS-KAUF ALS PDFUmfang: 5 HeftseitenPreis €0,99
(inkl. 19% MwSt.)
RASPBERRY PI GEEK KAUFEN
EINZELNE AUSGABE Print-Ausgaben Digitale Ausgaben
ABONNEMENTS Print-Abos Digitales Abo
TABLET & SMARTPHONE APPS Raspberry Pi Geek bei Google Play Readly Logo
Nach oben