Ich wurde jetzt schon mehrmals gefragt, ob es auch möglich ist, eine NAS / Netzwerkfreigabe mit smb auf dem Raspberry Pi einzubinden (zu mounten) so wie ich es bereits für das NFS-Protokoll in diesem Artikel gezeigt hatte.
Im Prinzip also, dass die SMB Netzwerkfreigabe automatisch und direkt, sowie jedes mal bei Bedarf, gemountet und bei nicht benutzen auch wieder entmounted wird.
Und ja, dies ist genauso machbar wie über das NFS-Protokoll.
Ich habe alles selbst durchgeführt und mir mein System nicht zerschossen oder sonst irgendwelche negativen Auffälligkeiten bemerkt.
Aber dennoch… Backups sind immer gut….
Ich übernehme keine Haftung für irgendwelche Schäden am System, der Hardware oder der Katze….
NAS / Netzwerkfreigabe via SMB auf einem Raspberry Pi mounten
Das SMB-Protokoll (Server Message Block), oder ursprünglich auch bezeichnet als Common Internet File System (CIFS), ist im Grunde wie das NFS ein Netzprotokoll. Dieses hier speziell für Datei, Druck und einige andere Serverdienste. Für mehr Informationen und in welchen Versionen es vorliegt, kannst du dir gerne den Artikel auf WikiPedia durchlesen.
SMB ist vor allem unter Windows verbreitet und nicht immer kann man dort ohne weiteres NFS nutzen, oder will es auch nicht.
Daher zeige ich dir jetzt, wie du eine Netzwerkfreigabe / NAS auf deinem Raspberry Pi mit autofs automatisch mounten kannst.
autofs installieren
Wir werden die Konfigurationen nicht in der fstab vornehmen. Viele Freigaben werden auf einem NAS oder Server eingerichtet, der aber auch evtl. in den Ruhemodus (zumindest die Festplatten) gesetzt werden soll. Dies ist bei einer durchgehenden gemounteten Quelle aber nicht möglich.
Außerdem kann es vorkommen, das bei einem Neustart des Raspberry (wo der mount erfolgen soll) die Netzwerkverbindung nicht schnell genug einsatzbereit ist, und somit das mounten nicht funktioniert.
Daher habe ich mich, um die NAS / Netzwerkfreigabe einzubinden, für autofs entschieden, welches aber erst installiert werden muss.
Also legen wir endlich einmal los und installieren autofs. Dazu loggst du dich auf deinem Raspberry / Linux ein bzw. startest eine ssh-Verbindung über Putty / MobaXterm und gibst mit root-Rechten folgenden Befehl ein:
sudo apt-get install autofs
autofs für die NAS / Netzwerkfreigabe konfigurieren
Das Konfigurieren geschieht in Map-Dateien. Diese liegen nach der Installation unter /etc/
Die Master-Map-Datei enthält Angaben in welchen weiteren Dateien autofs schauen soll, um etwas zu mounten. Diese befindet sich unter /etc/auto.master
.
Wir editieren diese jetzt mit sudo nano /etc/auto.master
und fügen in die letzte Zeile folgenden Eintrag hinzu:
/mnt/smb /etc/auto.smb.shares --timeout=60
Hiermit geben wir an, dass wir auf dem Raspberry unter /mnt/smb, etwas einhängen wollen. Was genau definieren wir in /etc/auto.smb.shares .
Und nach 60 Sekunden Inaktivität soll es wieder ausgehangen werden –timeout=60
Die Ordnerstruktur muss nicht erst erstellt werden. Autofs übernimmt das für uns.
Solltest du unter /mnt also kein /smb haben, wird dieser Ordner automatisch angelegt.
sudo nano /etc/auto.master # # Sample auto.master file # This is a 'master' automounter map and it has the following format: # mount-point [map-type[,format]:]map [options] # For details of the format look at auto.master(5). # #/misc /etc/auto.misc # # NOTE: mounts done from a hosts map will be mounted with the # "nosuid" and "nodev" options unless the "suid" and "dev" # options are explicitly given. # #/net -hosts # # Include /etc/auto.master.d/*.autofs # The included files must conform to the format of this file. # +dir:/etc/auto.master.d # # Include central master map if it can be found using # nsswitch sources. # # Note that if there are entries for /net or /misc (as # above) in the included master map any keys that are the # same will not be seen as the first read key seen takes # precedence. # +auto.master /mnt/smb /etc/auto.smb.shares --timeout=60
Das Speichern nicht vergessen (nano: STRG+X und Yes/Ja, vi: Esc : wq ).
Als nächstes erstellen wir die zugehörige Map-Datei auf die wir uns beziehen (auto.smb.shares).
Und fügen das eigentliche mounten für unsere NAS / Netzwerkfreigabe hinzu:
sudo nano auto.smb.shares tutorials -fstype=cifs,username=USER,password=PASSWORD,uid=1000,gid=1000,file_mode=0660,dir_mode=0770,vers=2.1 ://192.168.1.79/Sonstiges_User/Tutorials
Anschließend die Datei speichern und schließen. (STRG+X Yes/Ja)
Was haben wir hier jetzt gemacht fragst du dich?!
Zerpflücken wir ein wenig die eingetragene Zeile:
Das tutorials am Anfang sagt autofs mit welchen Namen er die Freigabe mounten soll. Da wir in der master.Datei bereits den eigentlichen Pfad angegeben haben, würde dieser nun komplett: /mnt/smb/tutorials lauten.
mit -fstype=cifs,username=USER,password=PASSWORD,uid=1000,gid=1000 geben wir zum einen das Protokoll (cifs) an, sowie den User inkl. seinem Passwort auf dem Hostsystem(!) von dem wir etwas einbinden wollen (z.B. von deiner NAS oder deinem Windows-PC)
uid und gid besagen dann, welcher User auf deinem Linux-System / auf deinem Raspberry Zugriff zu dem eingehangenen Ordner haben dürfen. (hier root)
vers=2.1 gibt die verwendete cifs/SMB Version mit an.
Am Ende steht dann der Pfad zum freigegebenen Ordner auf dem Hostsystem welcher eingebunden werden soll. Beachte den Doppelpunkt(:) am Anfang!
://192.168.1.79/Sonstiges_User/Tutorials
autofs starten / neu starten
Nun solltest du alles soweit eingerichtet haben, damit autofs deine Netzwerkfreigabe erfolgreich mounten kann.
Versuchen wir es einfach mal:
sudo systemctl start autofs oder sudo systemctl restart autofs falls es bereits läuft
Danach einfach ausprobieren ob du Zugriff auf deine eingebundene NAS / Netzwerkfreigabe erhältst ( in dem Beispiel von mir habe ich die Freigabe unter /mnt/smb/tutorials/ gemounted. Bei dir musst du es natürlich entsprechend anpassen):
ls /mnt/smb/tutorials/
NAS Freigabe via NFS auf Raspberry Pi mounten
Die möchtest deine Freigaben mit NFS und autofs einbinden?
Dann wirst du in diesem Artikel von mir fündig!
Schwierigkeiten beim mounten? Fehler? Keine Berechtigung?
In diesem Artikel gehe ich auf diverse Schwierigkeiten beim mounten mit autofs ein und biete ein paar Lösungen.
Sobald neue Probleme gemeldet werden – die ich auch lösen kann – werde ich sie in dem Artikel aktualisieren.
Natürlich kannst du mich auch gerne via Discord anschreiben wenn du Hilfe benötigst