USB-Stick oder SD-Karte als "Festplatte" beim Raspberry Pi?

3 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Hallo,

beim Raspberry Pi gab es bis zum Raspberry Pi 3B nur folgende Möglichkeiten:

  • /boot-Ordner auf die SD-Karte und den USB-Stick als Bootmedium eintragen und eine Datei (mir ist der Dateiname entfallen) auf den Stick zusätzlich kopieren, dass es möglich ist, vom USB-Stick (oder einer SSD) zu booten.
  • Einfach eine SD-Karte benutzen

Ab dem Raspberry Pi 3B gibt es einen (noch experimentellen) Bootloader, mit welchem man beim Raspberry Pi 3B ohne Umwege von einem USB-Stick (oder SSD) booten kann.

Link zur Git-Repository: https://github.com/raspberrypi/firmware/tree/next/boot/

Anleitung zur Installation: https://www.raspberrypi.org/blog/pi-3-booting-part-i-usb-mass-storage-boot/

Ich hoffe ich konnte helfen

linuxmensch12

tide1109 
Fragesteller
 28.08.2016, 17:05

Da ich noch Anfänger bin, sollte ich lieber eine Micro SD-Karte benutzen.

2

Der größte Nachteil der SD-Karte ist die Lebensdauer. Durch ständige Schreibprozesse ist die SD-Karte in kurzer Zeit korrupt. Das macht sich insbesondere bemerkbar, wenn der Pi z.B. als Server 24/7 in Betrieb ist.

Ich habe deshalb das Betriebssystem auf der SD-Karte, aber Verzeichnisse wie /var/log und /var/lib sowie /home habe ich auf einen USB-Stick bzw. eine SSD ausgelagert. Das reduziert die Schreibzugriffe auf die SD-Karte enorm. Außerdem deaktiviere ich noch Swap.

NoHumanBeing  03.09.2016, 14:45

In den meisten USB-Sticks ist ebenfalls nur MLC-Flash-Speicher verbaut, wie auch in SD-Karten. Und beide verfügen über eine primitive Art des "wear levellings" und "bad block replacements". Die Lebensdauer sollte vergleichbar sein.

Eine SSD ist da natürlich ein ganz anderes "Kaliber". Der entsprechende Speicher ist teurer und für erheblich mehr Schreibzyklen ausgelegt. Außerdem ist in dem leistungsfähigeren Controller ein komplexeres (und besseres) "wear levelling" integriert.

0
franzhartwig  03.09.2016, 16:12
@NoHumanBeing

Ich nutze die von mir beschriebene Konstellation schon länger. /var/log und /var/lib/mysql u.a. liegen auf einem USB-Stick. Auch Backups lege ich auf den Stick. Während meine SD-Karte schon zwei oder drei Mal gestorben ist, lebt der USB-Stick noch immer. Insofern kann ich aus praktischer Erfahrung sagen, dass die Lebensdauer eines USB-Sticks durchaus über der einer Mikro-SD-Karte liegt.

Klar, eine SSD ist teurer als ein USB-Stick. Aber so groß ist der Unterschied auch nicht. Ich habe mir die Freecom Toughdrive Mini SSD 2.5 Zoll extern mit 128 GB für 69 Euro gekauft. Mittlerweile geht es noch günstiger: Von Intenso finde ich eine für knapp 45 Euro. Ein USB-Stick mit dieser Kapazität kostet auch mindestens 30 Euro.

1
NoHumanBeing  04.09.2016, 14:35
@franzhartwig

Ok, ich gebe zu, das war eine böse Pauschalisierung. :-)

Meine SSD hat "ein bisschen mehr" gekostet und verträgt laut Spezifikation 125 TB written. Das ist schon ne ganze Menge. ;-)

Bei SSDs hast Du (in der Regel) zahlreiche Flash-Module (z. B. 16), die von einem Controller bedient werden, bei einem USB-Stick in der Regel nur eines. Das heißt, Du hast die Kapazität bei einer SSD auf eine "größere Fläche Silizium" verteilt. Das erlaubt größere Strukturen, was bei Flash-Speicher der Lebensdauer zugute kommt.

(In diesem Sinne macht es natürlich auch Sinn, dass ein USB-Stick typischerweise länger hält, als eine MicroSD-Karte, denn gerade die MicroSD ist ja sehr stark miniaturisiert. Vermutlich hält eine "normale" SD-Karte aber bereits vergleichbar lange, wie ein USB-Stick.)

SSDs verfügen zudem in der Regel über "statisches Wear-Levelling" (bei dem sämtliche Daten vom Controller "in Bewegung gehalten" werden), während USB-Sticks in der Regel nur "dynamisches Wear-Levelling" (bei dem nur sich ändernde Daten vom Controller "in Bewegung gehalten werden") implementieren. Letzteres ist nicht so gut, weil Sektoren, die Daten beinhalten, die selten neu geschrieben werden (etwa den Bootsektor oder den Betriebssystemkernel) sich "ausruhen können", während die anderen stärker abgenutzt werden.

Außerdem haben SSDs in der Regel mehr Overprovisioning (ca. 7 - 15 %, je nach Modell) und auch sonst mehr Redundanz (hinsichtlich Parity/ECC/etc.), als USB-Sticks.

0
franzhartwig  04.09.2016, 17:19
@NoHumanBeing

Danke für die Erläuterung, so tief bin ich nicht drin im Thema. Ich denke auch, dass das Micro bei der SD ein bedeutender Faktor in Sachen Lebensdauer ist. Ich werde sehen, wie lange der Stick hält. Ich mache täglich Backups, da ist die Wiederherstellung nicht so aufwändig.

0

Ich habe auch einen Raspberry und mein Betriebssystem läuft von der SD Karte. Das ist glaube ich auch kein Problem, weil wenn du nach Leistung und Geschwindigkeit suchst, ist der Raspberry Pi sowieso der falsche Kandidat. Der ist halt ganz praktisch zum rumprobieren, programmieren oder so, aber bei der Geschwindigkeit macht es meiner Meinung nach keinen Unterschied, ob du das System auf der Karte oder dem Stick hast.

Was willst du denn damit machen?