Raspberry Pi 5 – Starten von NVMe SSD
In diesem Artikel zeige ich dir Schritt für Schritt, wie du deinen Raspberry Pi 5 mit einer NVMe SSD startest. Nachdem ich mir einen neuen Raspberry Pi 5 mit 8 GB RAM zugelegt habe, wollte ich unbedingt das volle Potenzial ausschöpfen und ihn von einer schnellen NVMe SSD booten lassen. Dazu habe ich mir das passende Modul besorgt, das auch GEN 3 unterstützt – obwohl die offizielle Unterstützung noch auf sich warten lässt.
Wir werden gemeinsam die nötigen Schritte durchgehen, um die NVMe SSD einzurichten und den Raspberry Pi 5 optimal zu konfigurieren. Dabei nutzen wir auch eine bessere Vorgehensweise des DD-Kommandos, um Dateien zu kopieren.
DarkWolfCave.de
Bereit, deinen Raspberry Pi auf die Überholspur zu bringen? Dann lass uns loslegen!
Raspberry Pi 5 – Starten von NVMe SSD – Ein paar Worte
Ich habe mir vor einiger Zeit einen weiteren Raspberry Pi 5 mit 8 GB RAM und ein Case von GeeekPi gekauft. Zu diesem auch direkt das passende Modul, um von einer NVMe SSD starten zu können. Hier entschied ich mich für GeeekPi N04 M.2 M-Key NVMe SSD Shield, da es auch die GEN 3 verwalten kann.
Dazu direkt ein Hinweis: bisher ist die Unterstützung nicht offiziell bekannt gegeben worden. Es kann also funktionieren, oder halt zu Problemen führen. Daher Nutzung auf eigene Gefahr. 😉
Zum Glück ist das Aktivieren und Deaktivieren dieser Option recht einfach umzusetzen. Dazu aber später mehr.
Für mich stand ein neues Projekt im Raum: Umzug meiner Produktions-Umgebung von einem Raspberry Pi 4 mit OS Bullseye, auf ein Raspberry Pi 5 mit OS Bookworm. Und da ich mich bei einem Major-Update meistens dazu entscheide ganz von vorn zu beginnen, nehme ich dich heute mit und zeige dir, wie ich vorgegangen bin.
Du wirst hier einen groben Überblick finden.
Allerdings biete ich dir auch noch etwas mehr Support an:
- Du benötigst persönlichen Support
- Du möchtest von Beginn an Unterstützung bei deinem Projekt
- Du möchtest ein hier vorgestelltes Plugin durch mich installieren und einrichten lassen
- Du würdest gerne ein von mir erstelltes Script etwas mehr an deine Bedürfnisse anpassen
Für diese Punkte und noch einiges mehr habe ich einen limitierten
VIP-Patreon Tarif
eingerichtet. Falls er dir dort zurzeit nicht angeboten wird,
kontaktiere mich bitte über Discord und wir finden eine Lösung!
Diese Hardware werde ich verwenden
Mein neues Projekt soll auf folgenden Komponenten laufen. Für das Gehäuse von GeeekPi habe ich mich entschieden, da es auch noch einiges an Platz bereithält, um ein NVMe SSD Adapter mit aufzunehmen. In diesem wird dann die NVMe SSD verbaut.
Als Hilfsmittel für die erste Installation verwende ich eine SD-Karte sowie einen USB-Stick und einen USB-C Kartenleser.
Nach der Erstinstallation und Einrichtung werden diese für den Betrieb dann nicht mehr benötigt:
Werbung
Vorschau | Produkt | Preis | |
---|---|---|---|
Raspberry Pi 5 8 GB | 92,60 EUR | Bei Amazon kaufen | |
offizieller Raspberry Pi 5 USB-C Netzteil 27W, USB-C… | 18,90 EUR 13,49 EUR | Bei Amazon kaufen | |
GeeekPi Raspberry Pi 5 Aluminiumgehäuse mit Official… | 23,99 EUR 22,88 EUR | Bei Amazon kaufen | |
GeeekPi N04 M.2 M-Key NVMe SSD Shield für Raspberry Pi… | 13,84 EUR 12,95 EUR | Bei Amazon kaufen | |
Crucial P3 Plus SSD 1TB M.2 PCIe Gen4 NVMe Interne SSD,… | 124,99 EUR 69,99 EUR | Bei Amazon kaufen | |
SanDisk Extreme 32 GB microSDHC Memory Card + SD… | 14,99 EUR 10,44 EUR | Bei Amazon kaufen | |
Transcend 32GB kleiner und kompakter USB-Stick 3.1 Gen… | 14,99 EUR 12,49 EUR | Bei Amazon kaufen | |
UGREEN USB C 312MB/S Kartenleser SD 4.0 Kartenleser USB… | 25,99 EUR 20,79 EUR | Bei Amazon kaufen |
Letzte Aktualisierung am 15.09.2024 (Preise können abweichen) / Infos zu Affiliate Links / Bilder von der Amazon Product Advertising API
Affiliate – Links
DarkWolfCave.de ist Teilnehmer des Amazon-Partnerprogramm, das zur Bereitstellung eines Mediums für Webseiten konzipiert wurde, mittels dessen durch die Platzierung von Partner-Links zu Amazon.de Entgelte verdient werden können.
Raspberry Pi 5 – Starten von NVMe SSD – Legen wir los
Nachdem ich alle Komponenten verbaut habe, geht es jetzt an die eigentliche Installation.
Bei den vorherigen Installationen und dem Betrieb über SD-Karten und SSD-Festplatten habe ich ja einfach ein Image an meinem PC auf die entsprechenden Datenträger aufgespielt.
Da ich aber für die NVMe SSD keinen externen Adapter besitze und auch keine Lust habe meinen PC aufzuschrauben und diese dort einzubauen, versuchte ich das Internet nach Informationen zu durchwühlen, wie man hier am besten vorgehen sollte.
Ein Hinweis dazu noch: In meinem Fall wurde es noch etwas schwieriger, da ich lediglich die Headless-Variante benutze. Also das “lite”-OS ohne Desktop. Bei letzterem wäre schon ein Tool enthalten gewesen, um Daten von SD auf SSD zu kopieren, welches aber nicht in einem Terminal läuft.
Und was soll ich sagen… Die Methode, die am häufigsten im Internet zu finden ist, gefällt mir nicht wirklich und laut diversen Foren kann es hier auch zu ziemlichen Problemen kommen. Was auch logisch ist, wenn man versucht, ein laufendes System komplett mit DD kopieren zu wollen.
Lass dich aber bitte nicht durch mich verwirren, ich kläre in diesem Artikel noch auf, was ich damit meine.
Der Raspberry Pi Imager
Dieses Tool hilft uns dabei, das neueste OS auf unseren Datenträger zu schreiben. Daher laden wir uns den Raspberry Pi Imager herunter, installieren und starten ihn.
Wir benötigen für den von mir beschrittenen Weg für die Erstinstallation:
- einen SD-Kartenleser
- eine SD-Karte
- einen USB-Stick
Achte bitte darauf, dass die Speichermedien groß genug sind und alle Daten auf diesen verloren gehen werden!
Schließe den Kartenleser und die SD-Karte an deinen PC an und wähle im Raspberry Pi Imager unter Betriebssystem “other” aus und suche dort nach der 64bit Lite Version. Bei SD-Karte wählst du dann bitte die Richtige aus. Denn dort werden gleiche alle Daten gelöscht!
Klick auf WEITER und wähle im nächsten Schritt »Einstellungen bearbeiten«.
Hier kannst du einige Grundeinstellungen vornehmen. Fülle diese genauso aus, wie du sie auch später auf der NVMe SSD nutzen möchtest.
Zum Beispiel Hostname, den Username und das Passwort. Weiterhin könntest du WLAN aktivieren (mache ich nie) und bei »Dienste« auf jeden Fall SSH aktivieren! Dann speichern und im bereits bekanntem Auswahlfenster JA wählen.
Bei der nun erscheinenden Sicherheitsabfrage wählen wir auch wieder JA und starten damit die Installation auf unserer SD-Karte.
Der Prozess wird eine Weile dauern. Sobald die Meldung erscheint, dass alles erledigt ist, und du die SD-Karte entfernen kannst, machst du dies auch bitte. Allerdings werden wir denselben Prozess erneut mit einem USB-Stick durchlaufen!
- USB-Stick einstecken
- OS lite 64bit wählen
- USB-Stick bei “SD-Karte wählen” auswählen
- Einstellungen prüfen und mit JA / JA Prozess starten
Sobald das auch erledigt ist, kannst du den USB-Stick entfernen. Diesen benötigen wir gleich in unserem Raspberry Pi 5.
Raspberry Pi 5 mit SD-Karte starten
Wir starten unseren Raspberry Pi 5 erst einmal über die SD-Karte. Beim ersten Mal kann etwas Zeit vergehen und der Raspberry auch mehrmals neu starten. Hab Geduld und starte dein bevorzugtes Programm, um dich per SSH-Terminal mit deinem Raspberry zu verbinden. Ich benutze dafür immer sehr gerne MobaXterm. Du kannst dich über den vergebenen Host-Namen oder die IP-Adresse verbinden, letztere findest du in deinem Router/Gateway. Je nachdem, wo dein DHCP-Server läuft.
Sobald der Raspberry Pi 5 erreichbar ist, kannst du dich mit dem im Imager eingetragenen User und Passwort einloggen.
Bevor wir irgendetwas anderes unternehmen, sorgen wir erst einmal dafür, dass unser System auf den neuesten Stand gebracht wird.
Dies geht am einfachsten mit:
sudo apt update && sudo apt full-upgrade -y
In der Regel dauert dies auch einen Moment, da die bereitgestellten Images nicht 100% up-to-date sind. Einfach abwarten, bis alles erledigt ist.
Jetzt prüfe bitte zuerst mit lsblk
, ob deine NVMe auch erkannt wird. Bei der Ausgabe solltest du am Ende etwa einen Eintrag wie nvme0n1 sehen. Natürlich nur, sofern du einen entsprechenden Adapter und NVMe-SSD verwendest:
lsblk
Wird diese angezeigt, ist alles soweit super. Solltest du KEINEN NVMe Eintrag sehen, dann musst du noch eine Anpassung in der config-Datei vornehmen.
sudo nano /boot/firmware/config.txt
Hier fügst du einfach eine der beiden Zeilen hinzu. Hinweis: ich selbst nutze die Gen3-Unterstützung. Diese ist bisher aber nicht offiziell freigegeben, kann also zu Problemen führen. Allerdings ist der Schreib/Lese Prozess mit Gen3 auch deutlich schneller:
dtparam=pciex1 ODER dtparam=pciex1_gen=3
Speichern nicht vergessen und den Raspberry einmal mit sudo reboot
neu starten. Danach sollte mit lsblk
auch bei dir deine NVMe angezeigt werden. Jetzt begeben wir uns in die Raspberry Konfiguration mit:
sudo raspi-config
Hier prüfen wir, ob der aktuellste Bootloader vorhanden ist, indem wir uns durch das Menü hangeln und zum Schluss mit OK bestätigen, YES auswählen und mit einem weiteren OK wieder im Hauptmenü landen:
- Advanced Options
- A5 – Bootloader Version
- E1 – Latest Use the latest bootloader image
- OK – YES – OK
Damit wir später auch wirklich von der NVMe-SSD booten können, stellen wir die Bootreihenfolge ein wenig um.
Für meine Variante nutze ich die Auswahl mit der Reihenfolge NVMe/USB/SD-Karte. Denn wir werden gleich noch unseren USB-Stick verwenden.
Dafür hangeln wir uns wieder durch das raspi-config Menü, bestätigen alles, aber führen an dieser Stelle bitte KEINEN Reboot durch (letzte Frage mit NO bestätigen).
- 6 – Advanced Options
- A4 – Boot Order
- B2 – NVMe/USB Boot
- OK – Finish – NO (kein reboot)
Bevor wir neu starten, prüfe bitte noch einmal die Version des Bootloaders. Es sollte zwischen der CURRENT und der LATEST Version keinen Unterschied geben. Falls doch, bitte erneut mit sudo raspi-config
die oben genannten Schritte durchführen und zur Not den Raspberry abermals mit der SD-Karte neu booten ( sudo reboot
).
sudo rpi-eeprom-update
Raspberry Pi 5 mit USB-Stick starten
Sollte es hier keinen Unterschied bei den Versionen geben, können wir mit dem Vorbereiten der NVMe-SSD beginnen.
Dazu fahren wir den Raspberry Pi 5 herunter, warten, bis nur noch die rote LED leuchtet und nichts mehr blinkt, stecken dann den USB-Stick in einen der USB-Ports und schalten den Raspberry wieder ein.
sudo poweroff
Wenn alles gut geht, sollte dein Raspberry Pi 5 jetzt von deinem USB-Stick starten. Prüfen kannst du dies erneut mit dem Befehl:
lsblk
Hier solltest du einen Eintrag mit sda und sda1 – part /boot/firmware sehen. Dies ist ein gutes Indiz dafür, dass von einem USB-Stick gestartet wurde.
Falls bei dir erneut mmcblk mit /boot/firmware angezeigt werden sollte, wurde leider über die SD-Karte gebootet. Prüfe dann die Bootreihenfolge, wie weiter oben beschrieben.
Es ist richtig, dass du sda, mmcblk und nvme0n siehst. Wichtig ist, wo part /boot/firmware hinter steht, denn von dort wurde dann dein Raspberry Pi 5 gebootet.
sda: Dies bezeichnet in der Regel ein SATA-Laufwerk, wie eine externe oder interne Festplatte oder ein SSD-Laufwerk, das über USB oder einen anderen SATA-Controller angeschlossen ist.
mmcblk: Dies steht für MultiMediaCard (MMC)-Blockgerät und bezeichnet typischerweise die SD-Karte, die im Raspberry Pi verwendet wird. Zum Beispiel könnte mmcblk0
die SD-Karte selbst sein, und mmcblk0p1
, mmcblk0p2
, usw., sind die Partitionen darauf.
nvme0n: Dies steht für Non-Volatile Memory Express (NVMe)-Gerät, ein Hochgeschwindigkeits-SSD, das über den NVMe-Controller angeschlossen ist. Zum Beispiel könnte nvme0n1
eine NVMe-SSD sein, und nvme0n1p1
, nvme0n1p2
, usw., sind die Partitionen darauf.
Kopieren der SD-Karte auf die NVMe-SSD
Sofern dein Raspberry über den USB-Stick gebootet hat, können wir jetzt die Daten relativ sicher von der SD-Karte auf unsere NVMe-SSD kopieren. Da diese nicht mehr vom System verwendet werden, sollten auch keine Probleme auftauchen. Schaue dir über lsblk
noch einmal die Namen deiner SD-Karte und NVMe-SSD an und ändere diese entsprechend (falls notwendig):
sudo dd if=/dev/mmcblk0 of=/dev/nvme0n1 status=progress
Dieser Vorgang wird einiges an Zeit in Anspruch nehmen. Hab einfach Geduld und warte bis er final abgeschlossen ist.
Danach kannst du deinen Raspberry mit sudo poweroff
herunterfahren.
Es ist Zeit den USB-Stick sowie die SD-Karte aus deinem Raspberry Pi 5 herauszunehmen und diesen dann, hoffentlich erfolgreich, von deiner NVMe-SSD neu zu starten.
Anpassen der Partitionsgröße der NVMe-SSD
Nach dem Neustart wirst du mit lsblk
sehen, dass in deiner 2. Partition (z.B.: nvme0n1p2) lediglich die Größe der zuvor verwendeten SD-Karte zur Verfügung steht. Dies lässt sich aber sehr einfach über sudo raspi-config
korrigieren:
- 6 – Advanced Options
- A1 – Expand Filesystem
- OK – Finish – YES (reboot)
Nach dem Neustart wirst du dann bei deiner 2. Partition den gesamten freien Speicherplatz deiner NVMe-SSD nutzen können.
FAQ´s
Du benötigst einen Raspberry Pi 5, optional ein Gehäuse, das Platz für eine NVMe SSD bietet (wie zum Beispiel, das von GeeekPi), einen NVMe SSD-Adapter sowie eine NVMe SSD. Für die erste Einrichtung auch noch eine SD-Karte, einen USB-Stick und einen USB-C Kartenleser.
Am besten erst eine SD-Karte mit dem Imager vorbereiten, dann boote den Raspberry Pi 5 zunächst über einen USB-Stick und kopiere danach die Daten von der SD-Karte auf die NVMe SSD mit dem Befehl sudo dd if=/dev/mmcblk0 of=/dev/nvme0n1 status=progress
.
Verwende sudo raspi-config
, um das Dateisystem zu erweitern: “Advanced Options” -> “Expand Filesystem”.
Du hast weitere Fragen oder benötigst Hilfe? Gerne versuche ich im Rahmen meiner Möglichkeiten dich zu unterstützen. Dafür kannst du hier die Kommentar-Sektion (nicht vergessen Antworten zu abonnieren) nutzen oder du schaust auf meinem Discord-Kanal vorbei.