12 Aug

Raspberry Pi mit WD My Cloud (oder einem anderen NAS) verbinden

Willst du von deinem Raspberry Pi* aus auf einen Netzwerkspeicher* zugreifen? Dann mounte ihn einfach als Ordner! Wie das schnell und einfach geht, zeige ich dir in diesem Post.

 

Raspberry Pi mit WD My Cloud oder einem anderen NAS bzw Netzwerkspeicher verbinden

 

 

Allgemeine Infos

Ich habe einen zwei Raspberry Pis. Einen „alten“ Modell B 2 von 2014* und einen „neuen“ Raspberry Pi 3*. Diese Anleitung funktioniert mit beiden RasPis, sofern sie über eine halbwegs aktuelle Version von Raspbian o.ä. verfügen. Außer Zugang zu deinem RasPi brauchst du noch die IP-Adresse des Netzwerkspeichers (z.B. Western Digital My Cloud*), mit dem du ihn verbinden willst. Und natürlich Benutzernamen und Passwort.

Achtung: Du musst für diese Anleitung auf deinem RasPi das Terminal und sudo benutzen. Überprüfe dabei vor jeder Aktion, ob die angegebenen Daten (z.B. der Standard-Benutzername „pi“) mit denen deines Pis übereinstimmen. Ich übernehme keine Haftung, falls du dich vertust und hinterher dein OS neu aufsetzen musst.

Achtung 2: Der Ordner auf dem Pi entspricht dem Ordner auf dem Netzwerkspeicher. Was du in diesem Ordner löschst, wird auch auf dem Netzlaufwerk gelöscht.

Alles klar? Dann ist es jetzt Zeit, deinen RasPi hochzufahren und/oder dich über VNC oder SSH damit zu verbinden. Oh, und vielleicht solltest du dem NAS noch eine statische IP zuweisen, damit du dieses Tutorial nur einmal befolgen musst… 😉

 

 

Ordner auf dem Pi erstellen

Um einen Ordner im Netzwerk oder ein Netzlaufwerk mounten (= wie einen normalen Ordner verwenden) zu können, musst du zunächst einen Ordner auf dem Pi erstellen. Dieser Ordner auf dem Pi dient später gewissermaßen als  Verweis auf den Netz-Ordner.

Am schnellsten geht das per Terminal mit dem Befehl „sudo mkdir /Pfad/Name“. Mein Cloud-Ordner trägt den tollen Namen „cloud“ und liegt im Verzeichnis des Standard-Benutzers Pi, also in /home/pi. Dementsprechend lautet der Befehl für das Terminal bei mir:

sudo mkdir /home/pi/cloud

Und schon gibt es einen Ordner „cloud“ im Benutzerordner von „pi“.

Ordner "cloud": Hier soll später die Cloud gemountet werden.

Ordner „cloud“: Hier soll später die Cloud gemountet werden.

 

 

UID und GID herausfinden

Um die Verknüpfung zwischen NAS und Pi herzustellen, benötigst du außer der IP-Adresse des Netzwerkspeichers auch noch die UID und GID deines RasPi-Benutzers. Dafür gibst du im Terminal einfach Folgendes ein:

id

Daraufhin wird eine Reihe von IDs angezeigt. Wichtig sind nur die ersten zwei, nämlich User-ID und Gruppen-ID. Bei einer Standardinstallation von Raspbian und dem Standard-Benutzernamen Pi könnte das z.B. so aussehen:

Raspbian: GID (Group ID) und UID (User-ID) herausfinden.

Raspbian: UID (User-ID) und GID (Group-ID) herausfinden.

Zu merken sind hier: „pi“ und „pi“. Ziemlich einfach. 😉

 

 

Ran an die fstab

Das hier ist jetzt der heikle Teil des gesamten Mount-Vorgangs. Nun musst du nämlich die Datei /etc/fstab bearbeiten, in der alle zu mountenden (und gemounteten) Dateisysteme enthalten sind.

Öffne die Datei dazu in nano, um sie zu bearbeiten:

sudo nano /etc/fstab

Du solltest dann etwas vor dir haben, das so ähnlich aussieht wie dieser Screenshot:

nano: /etc/fstab bearbeiten.

nano: /etc/fstab bearbeiten.

Drücke solange deine Pfeil-runter-Taste, bis du unter dem allerletzten Text bist. Und in dieser neuen Zeile gibst du nun ein:

//IP.DER.CLOUD/Ordner /Pfad/Ordner cifs username=USERNAME,password=PASSWORT,uid=pi,gid=pi 0 0

Es ist wichtig, dass du keine Leerzeichen zwischen den Kommata eingibst und alles in eine Zeile schreibst. Auch wenn dein Browser vermutlich den Text da oben mittendrin umbricht. 😉

 

Stellen wir uns folgendes Szenario vor:

  • Dein NAS die IP 192.168.2.15, du willst im Ordner ABC speichern.
  • Der Ordner auf deinem Pi, der zum Mounten genutzt wird, ist /home/pi/cloud.
  • Dein Username (zum Zugriff auf die Cloud) ist „ich“, dein Passwort ist „12345“.
  • Deine UID auf dem RasPi ist „pi“, genau wie deine GID.

In diesem Fall musst du diese Zeile an deine /etc/fstab „anhängen“:

//192.168.2.15/ABC /home/pi/cloud cifs username=ich,password=12345,uid=pi,gid=pi 0 0

Nochmal überprüfen, mit Strg+O die Datei speichern, dann mit Strg+X nano schließen und den Pi neu starten.

nano: So oder so ähnlich sieht die /etc/fstab aus.

nano: So oder so ähnlich sieht die /etc/fstab aus.

 

Das war’s auch schon! Wenn du jetzt zum Ordner auf dem Pi („/home/pi/cloud“) navigierst, findest du dort den Inhalt des Netz-Ordners („192.168.2.15/ABC“). Und bitte denk daran: Das ist keine Kopie des Ordnerinhalts, sondern eine direkte Verknüpfung, also Vorsicht beim Löschen und Bearbeiten von Dateien! 😉

 

 

Nachtrag vom 25.10.2017:

Wer Usernamen und Passwort aus Sicherheitsgründen nicht im Klartext in der fstab speichern will, kann diese Anleitung von fabi befolgen:

Besser ist es, in deinem Fall am Pi, einen versteckten Ordner zu erstellen, .smb-credentials. Dort schreibt man untereinander:
username=xy
password=xy
Sicherstellen, dass nur root drauf Zugriff hat!
In die fstab kommt nun folgendes: credentials=/pfad/zu/.smb-credentials.

Ich habe mich bewusst dagegen entschieden, eine eigene Credentials-Datei anzulegen, weil ich das Sicherheitsrisiko in meinem Fall als überschaubar (und nicht soo groß) einschätze. Zunächst entspricht keine der in den Screenshots gezeigten Angaben der Realität. (Es wird euch vielleicht überraschen, aber mein Passwort ist wirklich nicht „12345“ und der Rest ist auch erfunden.) Wichtiger ist aber, dass außer mir niemand Zugriff auf Pi oder Cloud hat und die in der fstab angegebenen Benutzer jeweils nur sehr eingeschränkt agieren können. Am allerwichtigsten: Die beiden Geräte sind derzeit nicht ans Internet angeschlossen. Sollte sich das ändern, werde ich möglicherweise auch eine Credentials-Datei verwenden.

12 Gedanken zu „Raspberry Pi mit WD My Cloud (oder einem anderen NAS) verbinden

  1. Hallo Frau Nerd, ich bedanke mir hier kurz für den Beitrag, ich habe zuvor zwar schon smb freigaben via fstab unter linux eingebunden jedoch brauchte ich die optionen uid=xy,gid=xy bisher noch nicht.
    Die Freigabe vom NAS wurde ohne diese Angaben auf meinem homeserver als root eingebunden sowie alle unterordner. Andere Nutzer am homeserver konnten daher nicht drauf zugreifen und „schrien“ permission denied.. Hatte quasi zu viele Rechte 😀 ist mir auch noch nicht passiert.
    Ein kleiner Tipp noch wegen benutzername u. passwort:
    Besser ist es, in deinem Fall am Pi, einen versteckten Ordner zu erstellen, .smb-credentials. Dort schreibt man untereinander:
    username=xy
    password=xy
    Sicherstellen, dass nur root drauf Zugriff hat!
    In die fstab kommt nun folgendes: credentials=/pfad/zu/.smb-credentials.
    Nun hat man seine Daten nicht im Klartext in einem fstab Eintrag stehen.

    • Hallo fabi,
      vielen Dank für deinen Hinweis. Hilft bestimmt dem einen oder anderen Benutzer. 🙂

      In meinem Fall ist das mit dem Klartext nicht soo dramatisch, weil die echten Daten der fstab zu einem User mit stark eingeschränkten Möglichkeiten gehören. Außerdem dürfen weder Pi noch Cloud ans „große“ Netz und ich bin die Einzige, die Zugang zu den Geräten hat. 😉

  2. Hallo,

    vielen Dank für das Tutorial. Ich habs genauso eingegeben wie du gelistet hast. Nach dem Neustart der Pi bekomme ich zwar keine Fehlermeldung, allerdings ist der Ordner /home/pi/cloud leer. Was kann ich machen ? Ich verwende eine WDmyCloud.

    • Hallo!
      In diesem Fall ist beim Start der entsprechende Ordner bzw. die Cloud nicht gemountet worden. Sofern die sonstige Konfiguration der fstab stimmt, kannst du dies mit
      sudo mount -a
      nachholen. So kannst du ‚manuell‘ alles (= „-a“) einbinden lassen, was laut fstab gemountet werden soll.

  3. Hallo Frau Nerd,

    Ich habe alles gelesen aber ich habe nichts erstellen konnen.

    Ich Habe einen Raspberry pi3 + eine WD Mycloud Home drive
    Ich habe LibreElec mit Kodi Krypton 17 auf dem Pi3
    Aber ich kann nicht die program zeilen benotitgen
    weil LibreElec kein SUDO kennt
    Ist es Moglich dass program um ze endern

    Ich bin ein Niederlander und mein Deutsch ist noch nicht so gut

    freundlichen Grussen
    Albert Veldhuizen

    • Hallo!
      Scheinbar akzeptiert/benötigt LibreElec kein SUDO, weil bereits alles als root ausgeführt wird. Deshalb werden die Befehle in diesem Fall ohne das „sudo“ davor benutzt. Inwiefern das funktioniert, müsstest du nun selbst ausprobieren, weil ich kein LibreElec habe. 😉
      Also:
      1. Ordner erstellen mit mkdir /home/pi/cloud
      2. fstab öffnen mit nano /etc/fstab
      3. Mounten durch Neustart oder z.B. mit mount -a

  4. Auch Danke für die Zusammenfassung aber weder automatisch, noch durch „Smudo mount -a“ füllt sich der Ordner.

    Gibt es noch andere Fehlerquellen?

    • Hallo!
      Ich hoffe, du hast „sudo“ und nicht „smudo“ verwendet. 😉 Bekommst du eine Fehlermeldung oder wird dir irgendetwas anderes angezeigt? Sind garantiert alle Daten (Passwort, IP, User, usw.) richtig? Existiert das Verzeichnis?

      • 🙂 ja, sudo natürlich. Nach einem Neustart und mount -i kommt nun:

        Mount error 115: Operation now in progress
        Refer to the mount.cifs(8) manual page

        Habe alle Angaben noch mal überprüft und sie stimmen. 🙁

        Was mich noch wundert ist das mit der uid. Ist das wirklich beides „pi“? Da steht doch 1000.

        Bin ein wenig ratlos, warum das nicht geht.

        • Zunächst zu deiner Frage: Hast du mit „id“ überprüft, ob wirklich beides bei dir pi heißt? Wenn ja, dann sollte das auch funktionieren. An sich handelt es sich hier aber nur um die Freigabe für einen bestimmten User bzw. eine bestimmte Usergruppe.
          Ich vermute, dass dein Problem eher woanders liegt. Die Ferndiagnose ist allerdings etwas schwierig, deshalb jetzt ein paar Fragen, anhand derer du dein Problem ggf. eingrenzen könntest….
          Bist du sicher, dass die IP-Adresse der Cloud stimmt bzw. der RasPi im selben Netzwerk ist und auch wirklich darauf zugreifen kann? Hast du die IP der Cloud im Format //123.123.123.123 angegeben? Oder nutzt du den „Namen“ der Cloud? Verwendest du irgendwo „\“ statt „/“? Hast du schon einmal versucht, die Cloud über das Terminal anzupingen (wenn ja, hat das geklappt)? Sind noch irgendwelche Tippfehler oder überflüssigen Leerzeichen usw. in der fstab? Hast du für den verwendeten User den Ordner auf der Cloud freigegeben?

Schreibe einen Kommentar

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