Forgot your password?

Forgot your username?

All about IT, Web and Development.
By users for users.

Raspberry Pi Multi Boot einrichten



Das Raspberry Pi bietet als kleiner Mini-Computer viele Möglichkeiten. Allerdings wird hierzu meist eine andere Distribution wie z.B. Raspbian, Archlinux oder OpenELEC benötigt.

Anstatt nun immer die SD-Karten zu wechseln kann man hier mit Hilfe von Multi Boot auch den Platz auf der SD-Karte optimal ausnutzen.



Mit BerryBoot - einem Bootmenü für ARM Geräte - kann beim Start des Raspberry Pi ausgewählt werden, welches System gestartet werden soll.


Vorbereitung


Zunächst wird eine ausreichend große SD-Karte benötigt. Die Kapazität hängt natürlich davon ab wie viele und welche Systeme auf dem Raspberry Pi installiert werden sollen.

Im ersten Schritt wird die aktuelle Version von BerryBoot heruntergeladen.


Installation


Die Installation gestaltet sich sehr einfach. Die SD-Karte wird mit einem FAT32 Dateisystem formatiert. Am schnellsten und einfachsten geschieht dies unter Windows in der Datenträgerverwaltung oder mit Linux per GParted.

Anschließend die Dateien aus der entpackten ZIP-Datei auf die SD-Karte kopieren.

Ist der Vorgang abgeschlossen, kann die SD-Karte wieder in das Raspberry Pi eingelegt und von dieser gestartet werden.




Distributionen auswählen


Jetzt werden einige Einstellungen zum Standort und der gewünschten Sprache getroffen. Anschließend wird die SD-Karte neu formatiert.


BerryBoot bietet bereits einige Distributionen zur direkten Installation an. Diese läuft automatisiert ab. Nach einem Neustart des Raspberry Pi kann man das gewünschte Image beim Booten auswählen.


Eigene Images


Kommen wir zum eigentlich interessantesten Punkt - dem Hinzufügen eigener Images für das Raspberry Pi als Multi Boot Konfiguration.


Image konvertieren


Um die Images auf das benötigte SquashFS Format zu bringen werden die Befehle kpartx und mksquashfs benötigt. Unter Debian / Ubuntu lassen sich diese wie folgt installieren.

sudo apt-get install kpartx squashfs-tools

Zunächst wechseln wir auf der Konsole in das Verzeichnis mit dem Image. In unserem Fall handelt es sich dabei um die neueste Version von Raspbian.

sudo kpartx -av 2013-07-26-wheezy-raspbian.img

Jetzt binden wir die Root Partition des Images auf /mnt ein:

sudo mount /dev/mapper/loop0p2 /mnt

und kommentieren in der fstab das Gerät aus:

sudo sed -i 's/^\/dev\/mmcblk/#\0/g' /mnt/etc/fstab

Anschließen kann das neue Image gebaut werden.



Image in BerryBoot einbinden


Am einfachsten ist es das konvertierte Image auf einen USB-Stick zu ziehen und an das Raspberry Pi anzuschließen. Dann kann wie gewohnt BerryBoot von der SD-Karte gebootet werden.

In den Einstellungen kann dann über Add OS der Eintrag Install from USB stick ausgewählt werden.


Fazit


Über BerryBoot ist es sehr einfach mehrere Distributionen per Multio Boot auf einer SD-Karte zu verwenden.

Allerdings waren die in der aktuellen Version von BerryBoot vorhandenen Images teilweise schon leicht veraltet, weshalb man den umständlichen Weg über ein eigenes Image gehen muss.

Leider war auch die bekannte XBMC Distribution Raspbmc nicht im Menü aufgeführt.


Quellen: Raspberry Pi Logo, BerryBoot

Michael Kostka

Fachinformatiker / Systemintegration
Ich schreibe hier regelmäßig zu den Themen Android, Web, Linux und Hardware.

Raspberry Pi Starter Kit
DataCloud

Leave a comment

I have read the privacy policy and agree to electronically store and process my input data to answer the request.

LooX

21.07.2015 20:13

Hi,

der Befehl "sudo sed -i 's/^\/dev\/mmcblk/#\0/g' /mnt/etc/fstab"
funktioniert bei mir nicht, spuckt nur "sed: kann /mnt/etc/fstab nicht lesen: Datei oder Verzeichnis nicht gefunden" Gibt es hierfür einen plausiblen Grund??
Danke!!!

Mac 10.10.4 mit VirtualBox (Parallel Desktop) + CentOS 7 + Raspberry Pi 2
Image : XBian_2015.07.04_rpi2.img

Laut Anleitung :
$ sudo kpartx -av image_you_want_to_convert.img #GEHT
add map loop0p1 (252:5): 0 117187 linear /dev/loop0 1
add map loop0p2 (252:6): 0 3493888 linear /dev/loop0 118784
$ sudo mount /dev/mapper/loop0p2 /mnt #GEHT
$ sudo sed -i 's/^\/dev\/mmcblk/#\0/g' /mnt/etc/fstab #FEHLER
$ sudo mksquashfs /mnt converted_image_for_berryboot.img -comp lzo -e lib/modules
$ sudo umount /mnt
$ sudo kpartx -d image_you_want_to_convert.img

Michael Kostka

31.01.2014 13:44

Hallo Winfried,

die Datei shared.tgz darf nicht entpackt werden.
Nach dem Entpacken sollten sich 18 Dateien (bei Version 20130908) direkt auf der SD-Karte befinden (nicht in einem Unterordner).

Bitte auch darauf achten, dass der Schreibschutz Riegel der SD-Karte nicht aktiviert ist und der Strom erst nach der SD-Karte eingesteckt wird.

Alternativ kannst du auch ein chmod 777 -R <Mountpunkt der SD-Karte> ausführen. Evtl. liegt ein Problem mit den Berechtigungen vor.

Viele Grüße
Michael

Winfried

31.01.2014 11:06

Mir gelingt es schon nicht, Berryboot zum Laufen zu bekommen.

Ich formatiere 16GB SD-Karte mit gparted unter Linux Mint mit FAT32, entpacke berryboot-20130908.zip auf die Karte. Dann stecke ich die SD-Karte in den Raspberry Pi und starte, aber nichts passiert (zumindest nicht auf dem Display. Ich schaue mir den Inhalt der Karte auf dem PC an und stelle fest, dass es noch eine komprimierte Datei shared.tgz gibt. Die entpacke ich ebenfalls auf die Karte. Es entstehen die Verzeichnisse lib, opt und sbin.

Immerhin startet jetzt berryboot, ich kann einzelne Eingaben machen. Beim Formatieren erhalte ich aber die Meldung, dass ich einzelne Dateien auf der SD-Karte, die nicht zu berryboot gehören, sichern und dann entfernen soll.

Über diesen Punkt komme ich nicht hinaus!

Kann mir jemand einen Tipp geben?

Vielen Dank!