Raspberry Pi: USB Boot per Stick oder SSD Festplatte einrichten

Der Raspberry Pi braucht für gewöhnlich eine Micro SD-Karte, auf der sich das Betriebssystem befindet. Der Nachteil besteht zum einen darin, dass SD-Karten schneller kaputtgehen und zum anderen, dass sie normalerweise weniger Speicherplatz haben als eine Festplatte. In diesem Tutorial schauen wir uns daher den Raspberry Pi USB Boot einmal genauer an.

Seit dem Raspberry Pi 4 ist es noch einfacher als zuvor möglich die SD-Karte obsolet zu machen. Alles was wir dafür brauchen ist ein USB-Stick oder eine (externe) Festplatte.

Zubehör

Natürlich könnten wir auch weiterhin eine SD-Karte und ein externes Gerät nutzen, aber in vielen Fällen brauchen wir ein größeres Root-Verzeichnis. Daher macht eine ausreichend große Festplatte in jedem Fall Sinn – ganz abgesehen von den Ausfallraten der SD-Karten.

In meinem ersten Test hatte mein Netzteil zu wenig Power, weshalb der Pi nicht richtig booten konnte. Ein stärkeres Netzteil hat dann geholfen.

 

Methode 1: Bestehendes Raspberry Pi OS updaten und auf SSD übertragen

Falls du bereits dein Betriebssystem eingerichtet hast und nun es komplett übertragen willst, gibt es hierfür eine einfache Möglichkeit. Dafür müssen wir aber zunächst den die Paketquellen und den Kernel updaten:

sudo apt-get update
sudo apt-get full-upgrade
sudo rpi-update
sudo rpi-eeprom-update

Anschließend schließen wir den USB-Stick bzw. die Festplatte an den Raspberry an (vorher führen wir ggf. ein Backup durch). Beim Flashen werden alle Daten überschrieben, daher ist eine Datensicherung wichtig! Ich habe dazu das USB Image Tool (für Windows) genutzt, welches ein komplettes Backup als .img Datei erstellt. Der einzige Nachteil ist, dass die Image-Datei so groß wie das komplette Volumen ist und nicht nur so groß wie die Summe aller Dateien. Anschließend kann man das Backup ebenfalls wieder auf den Stick schreiben.
Das Tool Win32DiskImager hat eine ähnliche Funktion

Bevor wir das Betriebssystem übertragen, schauen wir und die Datei unter /boot/cmdline.txt an.

cat /boot/cmdline.txt

Diese sollte so in der Art aussehen (wichtig ist, dass kein absoluter Pfad vorhanden ist).

console=serial0,115200 console=tty1 root=PARTUUID=c29633fc-02 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait quiet splash plymouth.ignore-serial-consoles

Auf dem Raspberry Pi klicken wir nun das Startmenü > „Accessories“ (bzw. Zubehör) und wählen den „SD Card Copier„. Hier wählen wir unsere Root Partition sowie die Festplatte, auf die das Image übertragen werden soll.

SD Card Copier - Raspberry Pi

Nachdem alles erfolgreich übertragen wurde, können wir den Pi herunterfahren und die SD-Karte entfernen.

 

Methode 2: Frisches Raspberry Pi OS flashen und USB Boot aktivieren

Eine weitere Methode ist, dass wir uns ein aktuelles Image des Raspberry Pi OS (ehemals Raspbian OS genannt) herunterladen. Hier sind keine Updates mehr nötig.

Führe ggf. zuerst ein Backup deiner Festplatte / USB-Sticks durch, da bei dieser Methode auch alle Daten überschrieben werden.

Anschließend brauchen wir Balena Etcher. Hiermit können wir das Raspberry Pi OS Image auf den USB-Stick bzw. die Festplatte schreiben. Der Vorgang ist hier genauer beschrieben. Du kannst SSH sowie die Wi-Fi-Verbindung bereits vorkonfigurieren.

Auch hier solltest du die cmdline.txt prüfen (siehe oben).

 

Bevor wir starten, entfernen wir die SD-Karte aus dem Raspberry Pi (sofern noch vorhanden) und verbinden die SSD/USB-Stick. Das Hochfahren dauert ein wenig, doch dann sollte der Raspberry Pi normal gestartet worden sein.

 

 

Fazit zum USB Boot auf dem Raspberry Pi:

Die Möglichkeit endlich auch permanente Festplatten als Systemspeicher zu nutzen gefällt mir prinzipiell sehr. Gerade im Dauerbetrieb (OpenHAB lässt grüßen) gehen SD-Karten nach nicht allzu langer Zeit kaputt. Sofern man nicht regelmäßig alle wichtigen Dateien gesichert hat, ist das ein Super-GAU. In solchen Projekten werde ich in Zukunft sicherlich eine Festplatte statt einer SD-Karte nutzen (auch keine SSD), da Flashspeicher in meinen Augen zu anfällig ist.

Nichtsdestotrotz muss genau geschaut werden, welche Festplatte welche Leistung bringt, denn einen zu großen Geschwindigkeitsverlust durch USB möchte man auch nicht. Auch wenn die USB3.0 Schnittstelle zumindest höhere Datenübertragungsraten zulässt.

PS: Erfahrungswerte dürfen gerne als Kommentar gepostet werden!

13 Kommentare

  1. Das ist nicht neu und auch ein Raspi 4 ist nicht nötig. Ich betreibe den Raspi 3 seit einigen Jahren an einer kleinen SSD. Auch kann man die Schreibvorgänge für die SD – Karte unterbinden.

    Antworten
  2. Die 3er Pis booten schon länger von USB, kein Problem.
    Der Pi 4 bootet seit dem Update 20.08.2020 auch von USB.
    Pis mit älterer Firmware brauchen:
    sudo rpi-eeprom-update
    Das geht erstmal von der SD Card.
    Danach braucht man keine SD Card mehr.
    Ein neues System kann man direkt auf eine SSD/HD spielen.

    Antworten
  3. Hallo,
    der Beitrag isz sehr interessant. Es fehlt aber der Hinweis, dass bei älteren RPIs eine Firmware update durchgeführt werden muss und wie das genau geht. Denn wenn dabei etwas schief läuft, war das für den RPI.
    Ich hoffe dass der Beitrag dazu noch ergänzt !!!

    Antworten
  4. 22.12.2020
    Rpi 4 8GB

    Ich habe Methode 1 genau nach Anleitung gemacht, aber es booted von mein USB HDD nicht. Nach entfernung der SD , und restart blinkt nur die RPi gelbe Lampe.
    Kann einer mir ein Tipp geben, bitte.

    Antworten
    • mei mir geht es auch nicht – booten von SD kein Problem, aber von SSD bleibt das System jedesmal woanders hängen – wer kann einem Linux-Nobody helfen??

      Antworten
  5. Nachtrag für alle Leidensgenossen:
    Jetzt habe ich es hinbekommen, und zwar nach dieser Anleitung:
    https://electrodrome.net/raspberry-pi-4-micro-sd-karte-usb-boot-fuer-ssd-laufwerke-einrichten-1-0/
    Ich habe – obwohl Sabrent Adapter USB-SSD – trotzdem die „Quirks“-Option gezogen wie beschrieben – vorher hat es ohne nicht funktioniert, aber da hatte ich auch noch einige andere Sachen etwas anders gemacht als in der Beschreibung…
    Aber so geht es (nur dann muss die SD-Karte zum BOOTEN drin bleiben), aber Raspian (Release Januar 2021 mit Desktop) läuft auf der SSD jetzt top!!

    Antworten
    • Bist du Dir sicher dass du von SSD bootest. Bei allen meinen PRi 4 muss die _SD-Karte raus. Beim Booten von HD/SSD steht auch klar; Keine SD Karte gefunden

      Antworten
  6. Hallo Zusammen,

    wie schon gesagt wurde kann die RPI 4 von Haus aus schon von SSD Booten.
    Wichtig ist die Bootloader- Version auf der RPI ab „Version Sep 03 2020“ funktioniert es ohne Probleme.

    Nach dem Bootloader-Update bin ich nach Methode 2 vorgegangen.
    Als Image habe ich die Raspberry Pi OS with desktop benutzt.
    cmdline.txt usw. habe ich beachtet.
    Nach dem Systemstart wurde Wifi mit dem Assistent eingerichtet und SSH konnte ich unter „Einstellungen/Raspberry-PI-Konfiguration aktivieren.

    Bei mir war der Kaufzustand „Bootloader- Version Mar 19 2020“.

    Da ich noch kein OS installiert hatte, bin ich nach dieser Anleitung mit dem Raspberry Pi Imager
    https://www.raspberrypi.org/documentation/hardware/raspberrypi/booteeprom.md vorgegangen.

    Wenn ihr ein Monitor angeschlossen habt, bekommt ihr bei erfolgreichem update ein grünen Bildschirm, bei fehlerhaften einen roten Bildschirm.

    Danach braucht ihr keine SD Karte in der RPI 4

    Siehe dazu die ReadMe Datei:
    „… If successful, the green LED light will blink rapidly (forever), otherwise
    an error pattern will be displayed.
    If a HDMI display is attached then screen will display green for success
    or red if failure a failure occurs.
    N.B. This image is not a bootloader it simply replaces the on-board bootloader.
    eine SD Karte…“

    Antworten
  7. ist ja alles super erklärt und ich habs auch schön so gemacht, trotzdem funktionierts nicht. Irgendwas muss ich übersehen haben, das ist der Startbildschirm:
    Raspberry Pi 4 – 8GB
    bootloader: c305221a Sep 3 2020
    config: 86697050

    board: d03114 1496500e dc:a6:32:d6:7b:15
    boot: mode sd 0 order 1 retry 3/3 restart 0/-1
    SD: card not dedected
    part: 0 mbr [0x00:00000000 0x00:00000000 0x00:00000000 0x00:00000000
    updates: enabled 0
    fw:
    net: down ip: 0.0.0.0 sn: 0.0.0.0 gw: 0.0.0.0
    tftp: 0.0.0.0 00:00:00:00:00:00

    dann kommen nur ein paar Zeilen
    Failed to open device: ’sdcard‘
    W A R U M ??????

    Antworten

Hinterlasse einen Kommentar

Deine Email Adresse wird nicht veröffentlicht.

Blog abonnieren

Abonniere Raspberry Pi Tutorials, um kein Tutorial mehr zu verpassen!