Raspberry Pi: Externe Speichermedien

Raspberry Pi: Externe Speichermedien

Es ist möglich externe Speichermedien wie Festplatten oder USB-Sticks am Raspberry Pi zu verwenden und größere Datenmengen extern zu speichern. Die Anbindung eines externen Speichermdiums muss in Raspbian immer bekannt gemacht werden und funktioniert nicht nach dem Prinzip Plug’n’Play wie in Windwos. Eine externe Festplatte ist immer dann empfehlenswert, wenn du große Datenmengen speichern willst oder häufige Lese- und Schreibzugriffe erfolgen, die bei SD-Karten schnell zu Ausfällen führen.

Mountpoint erstellen

Zunächst installieren wir Treiber, damit NTFS und HFS+ Speichermedien eingebunden werden können. Solltest du nur ext-Dateisysteme von Linux nutzen, ist das installieren dieser Treiber nicht notwendig.

sudo apt-get -y install ntfs-3g hfsutils hfsprogs exfat-fuse

Wir legen nun einen Ordner im Verzeichnis /media an, in den das USB-Speichermedium eingebunden wird. Dieser Ort wird mountpoint genannt. In meinem Fall nenne ich den Ordner usbdrive. Der Mountpoint und der Name können frei gewählt werden, sollten aber keine Sonder- und Leerzeichen enthalten. Du kannst den Mountpoint also auch in einem anderen Ordner anlegen.

sudo mkdir /media/usbdrive

Nun führen wir folgenden Befehl in der Konsole aus und stecken anschließend das USB-Medium an. Daraufhin sollte in der Konsole eine Ausgabe aller angeschlossenen Speichermedien erscheinen. USB-Sticks werden meistens mit sda und externe Festplatten mit hd, ggf. mit anhängender Nummer, bezeichnet. Bei mehreren USB-Sticks heißen die Geräte dann sda, sdb, sdc usw. Bei mehreren Festplatten entsprechend hd1, hd2, hd3 usw.

sudo blkid -o list -w /dev/null

Uns interessiert die erste und letzte Spalte des richtigen Gerätes mit dessen device Pfad und UUID. Außerdem ist die Angabe unter Type wichtig, da sie das Dateiformat anzeigt, mit der die Festplatte formatiert ist.

Speichermedium mounten

Nachdem wir nun den device Pfad und den Typ des Dateisystems kennen und einen Mountpoint erstellt haben, können wir das Speichermedium mit folgendem Kommando im erstellten Mountpoint einbinden. Dabei muss je nach Dateisystem ein anderes Kommando verwendet werden. Du musst dabei außerdem die Gerätebezeichnung sda durch den Namen deines USB-Speichermediums und /media/usbdrive/ durch deinen Mountpoint ersetzen. Die zwei Angaben des Benutzers pi müssen durch den Benutzernamen ersetzt werden, der auf das Speichermedium zugreifen soll.

FAT32

sudo mount -t vfat -o utf8,uid=pi,gid=pi,noatime /dev/sda /media/usbdrive

NTFS

sudo mount -t ntfs-3g -o utf8,uid=pi,gid=pi,noatime /dev/sda /media/usbdrive

HFS+

sudo mount -t hfsplus -o utf8,uid=pi,gid=pi,noatime /dev/sda /media/usbdrive

exFAT

sudo mount -t exfat -o utf8,uid=pi,gid=pi,noatime /dev/sda /media/usbdrive

ext4

sudo mount -t ext4 -o defaults /dev/sda /media/usbdrive

Bedeutung der Parameter nach -o für Option:

  1. utf8: Die Dateinamen verwenden den UTF-8-Zeichensatz und dürfen somit auch Umlaute enthalten
  2. uid=pi,gid=pi: Das Speichermedium wird dem Benutzer (uid) und der Gruppe (gpi) pi zugewiesen
  3. noatime: Die Inode Access Time (letzter Lesezugriff) wird nicht aktualisiert und damit werden unnötige Schreiboperatoren vermieden
  4. defaults: Dem Gerät werden die Optionen rw, suid, dev, exec, auto, nouser und async zugewiesen

Falls es Probleme gibt, ist es durchaus hilfreich den Raspberry Pi neuzustarten. Außerdem ist zu beachten, dass für jedes Laufwerk ein eigener Mountpoint erstellt werden muss. D. h. es kann in dem oben erstellten Pfad /media/usbdrive nur ein einzelnes externes Speichermedium eingebunden werden.

Speichermedium formatieren

Nun hast du die Möglichkeit die Festplatte noch zu formatieren, um belegten Speicherplatz freizugeben und das verwendete Dateisystem zu ändern. Unter Linux sind die ext-Dateisysteme, vorzugsweise das neuste ext4-Dateisystem zu empfehlen. Gänzlich abzuraten ist vom ntfs-Dateisystem von Windows, da hiermit nur sehr geringe Lese- und Schreibraten erreicht werden können.
Der Befehl mkfs.ext4 gibt hierbei das Ziel-Dateisystem an. In diesem Fall formatiere ich die Festplatte also mit ext4.

sudo mkfs.ext4 /media/usbdrive

Durch das Formatieren erhält die Festplatte eine neue UUID. Diese muss anschließend in die fstab eingetragen werden, um ein automatisches Mounten beim Bootvorganng zu ermöglichen.

Automount beim Booten

Soll der USB-Stick oder die USB-Festplatte nun bei jedem Start des Raspberry Pis automatisch eingebunden werden, können wir dies für einen Eintrag in der Datei fstab erlauben, wozu wir die zuvor ausgelesene UUID benötigen. Beachte, dass sich die UUID geändert hat, wenn du eine Formatierung durchgeführt hast. Je nach Dateisystem muss man eine der folgenden Zeilen am Ende der Datei /etc/fstab eintragen. Die UUID musst du dabei durch deine eigene ersetzen. Zum Bearbeiten der Datei nutzen wir den Editor nano, in dem wir zum Speichern [STRG] + [X], [Y] und anschließend [Enter] drücken müssen.

sudo nano -w /etc/fstab
Hinweis
Es ist ratsam die fstab Datei vorher z. B. mit FileZilla auf dem eigenen PC zu sichern. Sollte ein Fehler auftreten (z. B. ein Schreibfehler in der UUID), bootet der Pi nicht mehr und es ist sehr mühsam den fehlerhaften Eintrag zu korrigieren bzw. zu entfernen. In solch einem Fall kannst du stattdessen die fstab Datei über Filezilla wieder zurück auf den Pi spielen.

FAT32

UUID=3241-40CE /media/usbdrive vfat utf8,uid=pi,gid=pi,noatime 0

NTFS

UUID=3241-40CE /media/usbdrive ntfs-3g utf8,uid=pi,gid=pi,noatime 0

HFS+

UUID=3241-40CE /media/usbdrive hfsplus utf8,uid=pi,gid=pi,noatime 0

exFAT

UUID=3241-40CE /media/usbdrive exfat utf8,uid=pi,gid=pi,noatime 0

ext4

UUID=3241-40CE /media/usbdrive ext4 defaults 0

themaster

Verwandte Beiträge

Android: Apps löschen

Android: Apps löschen

Android: Apps deaktivieren

Android: Apps deaktivieren

Raspberry Pi: Universeller Audio-Empfänger für Musikanlagen

Raspberry Pi: Universeller Audio-Empfänger für Musikanlagen

Raspberry Pi: SenseHat

Raspberry Pi: SenseHat

1 Comment

  1. Gut das Du auf einen Schreibfehler im fstab hinweist.
    Alle Deine Beispielangaben für den Eintrag in die /etc/fstab sind fehlerhaft.

    Z. B. für „UUID=3241-40CE /media/usbdrive / ext4 defaults 0“
    Der „/“ nach mountpoint „/media/usbdrive“ gehört nicht dort hin.
    Trägt man es so in im /etc/fstab ein, ist ein booten nicht mehr möglich und der Rasp. geht in den emergency mode.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

18 + zwei =

TIPP: Jazz CD J’s SEVEN

Lust auf JAZZ? Dann hört in die CD von Komponist und Posaunist Jonathan Strieder rein. Jonathan hat mit seiner Band J’s Seven ein eigenes Album aufgenommen und veröffentlicht. Tongariro heißt es und es klingt ganz fantastisch.

Zur CD: [Link]

Besucht Jonathan Strieder auch gerne auf seiner Webseite.

Über Mich

Mein Name ist Philipp und ich beschäftige mich gerne mit Homeprojekten im Hardware- und Softwarebereich. Ich stelle dabei immer wieder fest, dass es im Internet viele unvollständige  Tutorials gibt. Daher bin ich dazu übergegangen, meine Projekte in eigenen Anleitungen festzuhalten. Diese werde ich hier möglichst verständlich und mit dem nötigen Hintergrundwissen aufbereiten. Vielleicht kann ich dabei den entscheidenden Hinweis liefern, der in vielen anderen Tutorials fehlt.

Mein Ziel ist es, dass jeder mit den Tutorials zurecht kommt und alle notwendigen Informationen erhält, um es nachmachen zu können.

Artikelreihen

Tutorials abonnieren


Unterstütze Uns

Wenn du uns unterstützen möchtest und genau wie wir einen werbefreien Blog bevorzugst, freuen wir uns über eine kleine Kaffee-Spende :).

IBAN: DE51 1203 0000 1067 7545 54
oder
PayPal Spendenlink: