Einbinden von NFS Freigaben über autofs (z.B. für Synology NAS)

. Bisher habe ich meine NFS Freigaben von meinem Synology NAS immer direkt beim Booten über fstab gemountet. Die Einträge in der fstab sahen dann in etwa so aus:

IP_NAS:/volumeUSB7/usbshare /mnt/NAS/Dokumente nfs rw 0 0
IP_NAS:/volume1/music /mnt/NAS/musik nfs rw 0 0

Das funkioniert im Prinzip auch soweit ganz gut. Allerdings hat es zwei Nachteile:

  • Die NFS Freigaben werden während des Bootens bereits gemountet, je nach Distribution und Konfiguration, geschieht dies in einem Moment wo der Network Manager (oder andere abhängige Dienste) noch nicht gestartet wurden. Hier muss dann manuell an der Konfiguration geschraubt werden. Genauso kann es vorkommen, dass das NAS nicht verfügbar ist und dadurch der Bootvorgang lange dauert oder schlichtweg der Rechner nicht mehr sauber startet, wenn das NAS nicht verfügbar ist. Sowas passiert zum Beispiel gerne mal, wenn man sein Notebook ausserhalb des eigenen Netzes nutzt.
  • Ein weiterer Nachteil ist die Auslastung des eigenen Netzwerkes. Hat man zum Beispiel noch fünf USB Platten am NAS hängen und diese auch in der fstab eingetragen, werden alle Platten des NAS beim Booten des Rechners aus dem „Tiefschlaf“ gerissen und es findet schon jede Menge Traffic statt ohne dass man den Zugriff in diesem Moment überhaupt benötigt. Ganz zu schweigen vom Stromverbrauch.

Vor ein paar Tagen bin ich dann über einen Artikel auf tuxanddroid.de auf autofs aufmerksam geworden. Der Artikel auf tuxanddroid bezieht sich auf SMB Freigaben, ausserdem bin ich noch auf ein, zwei Stolpersteinchen gestoßen, sodass ich hier ebenfalls noch einen Artikel zu dem Thema verfassen möchte.

autofs macht nichts anderes als Freigaben (egal ob NFS, SMB etc.) erst dann zu mounten wenn sie benötigt werden. Die Notwendigkeit wird zum Beispiel durch einen Klick in Nautlius auf den jeweiligen Ordner oder aber auch durch ein „ls“ auf der Console bestimmt. Auch übernimmt autofs das automatische „aushängen“ wenn auf die Laufwerke nicht mehr zugegriffen wird.

autofs ist in jeder Distribution als Paket enthalten. Die Installation ist also sehr einfach.

Für Sabayon:

sudo equo install autofs

Auch die Konfiguration ist recht einfach. Sie wird prinzipiell über zwei Dateien erledigt.

Alle notwendigen Dateien liegen unter:

etc/autofs/

Beginnen wir mit der Datei auto.master. Diese laden wir in einen beliebigen Editor mit root Rechten.

sudo nano /etc/autofs/auto.master

Und ja… ich liebe nano! :-)

Viel gibt es hier nicht zu tun, lediglich eine Zeile ist hinzuzufügen.

/mnt/NAS    /etc/autofs/auto.synology --ghost

Teil 1 gibt den Mount Punkt für die NFS Freigaben an. Dieses Verzeichnis sollte bereits vor der Nutzung von autofs angelegt werden:

sudo mkdir /mnt/NAS

Teil 2 gibt an in welcher Datei die NFS Freigaben konfiguriert sind. Die Datei kann einen beliebigen Namen haben. Noch existiert die Datei nicht, also legen wir sie fix an.

sudo touch /etc/autofs/auto.synology

Teil 3 ist optional. Hier werden Optionsparameter gesetzt. Achtung! auf das doppelte Minus achten! Bei jedem weiteren Optionsparameter ist nur ein minus zu setzen.

-ghost gibt an, dass die mount Punkte sichtbar sind auch wenn die NFS Freigabe noch nicht gemountet wurde. Die Option -ghost ist einer der von mir erwähnten Stolpersteine. Ist diese Option nicht gesetzt, werden die Verzeichnisse wo die NFS Freigaben landen nicht angezeigt. Wenn die Verzeichnisse nicht angezeigt werden, kann man auch nicht darauf klicken, um das automount zu triggern. Typisches „Henne-Ei-Problem“ :-)

Nun tragen wir die Freigaben in die gerade erstellte Datei auto.synology ein.

sudo nano /etc/autofs/auto.synology

Hier wird nun pro Zeile eine NFS (oder SMB, etc) Freigabe eingetragen.

Hier mal drei selbsterklärende Beispiele:

Bilder -fstype=nfs,rw IP_VOM_NAS:/volume1/photo
Web -fstype=nfs,rw IP_VOM_NAS:/volume1/web
Dokumente -fstype=nfs,rw IP_VOM_NAS:/volumeUSB4/usbshare

Über den Namen am Beginn jeder Zeile wird dann ein Verzeichnis unter dem definierten Mount Punkt angelegt.

Die beiden modifizierten Dateien müssen noch mit den entsprechenden Rechten verarztet werden.

sudo chmod 644 /etc/autofs/auto.master
sudo chmod 644 /etc/autofs/auto.synology

Grundsätzlich war es das erstmal. Allerdings gibt es noch einen weiteren Stolperstein. 😉

Wenn ihr eure NFS Freigaben wie ich bisher über die fstab gemountet habt, wird autofs solange nicht funktionieren, bis ihr die Einträge aus der fstab entfernt habt und die Freigaben mit einem

sudo umount -a

gelöst habt. Denn eine NFS Freigabe kann genau nur einmal gemountet werden. Mit den Einträgen in der fstab wird autofs die NFS Laufwerke nicht mounten können. Bei mir gab es sogar nichtmals eine Fehlermeldung in /var/log/messages….

Wenn ihr vorher schon Einträge in der fstab hattet, empfehle ich euch den Rechner einmal durchzustarten.

Unter Sabayon wird der Dienst autofs nicht direkt automatisch gestartet.

Das geschieht über:

sudo /etc/init.d/autofs start | stop | restart

Wenn man möchte das der Dienst auch beim Booten gestartet wird, ist am Beispiel von Sabayon noch folgendes Kommando abzusetzen:

sudo rc-update add autofs default

Das war es schon! Wenn man seine Verzeichnisse auch im home wiederfinden mag, geht das am besten über Links. Beispiel:

ln -s /mnt/NAS/Bilder /home/BENUTZER/Bilder/Bilder_NAS

oder

ln -s /mnt/NAS/Dokumente /home/BENUTZER/Dokumente

Wenn jetzt alles funkitoniert hat, dann solltet ihr beim nächsten Klick auf die Verzeichnisse erst dann die dazugehörige NFS Freigabe gemountet haben.

Und wenn man sich die paar Zeilen Konfiguration anschaut, kann man diese natürlich wieder ganz wunderprächtig in ein Skript gießen um nach dem Neuaufsetzen eines Rechners nicht wieder alles von Hand machen zu müssen. :-)

 

Flattr this!

8 Gedanken zu “Einbinden von NFS Freigaben über autofs (z.B. für Synology NAS)

  1. Pingback: Linux Mint: Probleme mit autofs | Netbunker

  2. hallo
    herzlichen dank für diese sehr gute anleitung, diese möglichkeit mit autosf kannte ich noch nicht.
    aber eine frage hab ich noch
    du verwendes als OS Sabayon, gehen die befehle auch unter linux mint?

    grüsse

    • Die reinen Linux Kommandos (kopieren, symlinks, etc…) sind distributionsunabhängig.
      Die Installation von Paketen oder Konfiguration für autostarts weicht allerdings ab.

  3. Hast du schon mit Autofs per Wlan eine Fritzbox NAS eingebunden? Wenn ja, wie.
    Wartezeit Wlan ist hier mein Stichwort und zugangsbeschraenkung per passwort.
    Unter der Prämisse, dass autofs schon fuer synology nas mit nfs laeuft

  4. Hallo,
    eine Fachfrage hätte ich noch zu dem Ganzen, ich möchte nicht einzelne Verzeichnisse einbinden sonder das ganze volume1 meiner DS. Ist das
    möglich und falls ja, wie? Mir konnte bisher niemand so richtig helfen.
    Gruß
    Das Original

  5. Tiptop. Endlich die Lösung für meine Probleme. Vielen Dank für diese gute und erfolgreiche Anleitung.
    Wo hast du den Tip mit der Option –ghost her? Ich finde sie nicht in der manpage, die für autofs insgesamt auch etwas dürftig ist.

  6. Hallo zusammen, kann mir jemand helfen? Ich mach jetzt schon 2 Tage mit dem Problem rum. Bin völliger Neuling auf Linux. Habe Linux Mint 17.3 und eine DS215j und bringe keine autom. Verbindung hin. Dein Bsp. oben scheitert schon daran das es bei mir keinen Ordner autofs in etc oder sonstwo gibt. Einen handisches Einhängen funkt.
    2. Da ich viele Musikstücke auf der DS habe. wollte ich Amarok einsetzten. Da Banshee beim einlesen Abstürzt. Amarok erkennt aber das handisch eingeh. LW nicht :-(

  7. Danke! Super Tutorial (bzw. TutorialS! @
    TuxAndDroid 😉 ) – das hat mir sehr geholfen. autofs ist das was man haben will, wenn Netzwerkressourcen dauerhaft angebunden werden sollen.

    Ein allgemeiner Hinweis noch zum Starten des autofs-Dienstes:

    Dieses Tutorial betrifft Systeme mit dem Init-System „SysV“ (/etc/init.d/). Wer wie ich ein Manjaro mit dem Init-System „systemd“ verwendet, muß die Services folgendermaßen aktivieren, um sie dauerhaft beim Booten mitzustarten:

    systemctl is-active rpcbind.service # rpcbind aktiviert?
    systemctl enable rpcbind.service # rpcbind aktivieren
    systemctl restart rpcbind.service # rpcbind rebooten
    systemctl is-active autofs.service # autostart aktiviert?
    systemctl enable autofs.service # autostart aktivieren
    systemctl restart autostart.service # autostart rebooten

    Und ganz persönlich finde ich noch wichtig in der auto.master Datei eine Timeout-Option zu verwenden, um nach x Sekunden den Mount wieder zu trennen:

    /mnt/NAS /etc/autofs/auto.synology –timeout=300 –ghost

    Gruß

Schreibe einen Kommentar

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


*