Netzwerkfreigabe mounten mit systemd Mount Unit

  • Als Schnellschuss (evtl. nicht zu Ende gedacht ;) :(

    per cron ein Script laufen lassen, das den mount überprüft (touch... oder if exist ...) und bei entsprechender Rückmeldung die systemctl aufruft.


    Gruss

  • Ich habe mir cron mal angesehen. Ich denke, das sollte man nicht nutzen. Ein einmaliger Skript ist wahrscheinlich besser. Ich möchte die Überwachung engmaschig realisieren und wenn ich jede Minute einen Prozess mit cron starte, könnte es passieren, daß bei Wiederverfügbarkeit der Verbindung 2 Instanzen des Skripts sich gegenseitig stören.


    Worum es mir geht, ist die Verfahrensweise, den mount-Prozess manuell anzustoßen. Du hast geschrieben, die systemctl aufzurufen. In dem Beitrag sind aber nur eine serverctl.service bzw. serverctl erwähnt.

    Ich habe hier mal - mein erster bash skript überhaupt - einen Versuch unternommen. Bis dahin auch getestet.

    Aber wie stelle ich es richtig an, dann neu zu mounten? Und wie kann ich den Skript nach dem erstmaligen mounten während des Bootprozesses anstoßen?

  • , daß der 2. Raspi neu gestartet wird und die Verbindung dabei verloren geht.

    Muss ich zwar selbst nochmals testen, aber ich dachte die wird von alleine wieder hergestellt. Ich hatte zumindest noch nie Probleme diesbezüglich.



    Deine Skripte basieren offenbar auf dem Startprozess des Betriebssystems und wie es genau abläuft, kann ich nur teilweise nachvollziehen.

    mit systemctl enable <serviceunitname> veranlasst man, dass die Unit bei dem Autostart ausgeführt wird. Wann genau diese gestartet wird definieren die Abhängigkeiten.

    Details hier: https://wiki.ubuntuusers.de/sy…nen-fuer-die-Unit-Sektion


    In dem hier vorliegenden Tutorial haben wir mit

    systemctl enable media-fritz_nas.mount es veranlasst, dass diese in den Autostart kommt.

    In der Mount Unit definierten wird, mittels requires, dass die Service Unit serverctl.service mit gestartet wird, das After definiert, dass die Mount Unit warten muss bis die serverctl.service meldet dass sie erfolgreich gestartet ist (was sie macht sobald der Ping mit dem Ziel positiv verläuft)


    Aber wie stelle ich es richtig an, dann neu zu mounten?

    Für Zeile 20 in deinem Skript entweder:

    systemctl start <mountunit name>

    oder aber

    systemctl restart <mountunit name>

  • Wo habe ich denn geschrieben, das der cron job minütlich laufen soll :conf: ?

    Da hast nur von einer zyklischen Prüfung gesprochen, dafür ist cron prädestiniert.

    Aber wie schon gesagt, es gibt sicherlich auch andere Lösungen.


    Gruss

  • Wo habe ich denn geschrieben, das der cron job minütlich laufen soll :conf: ?

    Hast du gar nicht, das ist von mir, aber deshalb muss ich es doch nicht verschweigen. Dein Beitrag war auf jeden Fall eine gute Anregung für mich, etwas über cron zu lernen. Danke für den Hinweis.


    Muss ich zwar selbst nochmals testen, aber ich dachte die wird von alleine wieder hergestellt. Ich hatte zumindest noch nie Probleme diesbezüglich.

    Ich hatte festgestellt, daß meine Verbindung abgebrochen war und habe es darauf zurückgeführt, daß ich zwischendurch den Server rebootet hatte. Deine Antwort hat mich angeregt, das noch einmal genau zu überprüfen.

    Ergebnis: Du hast recht. Nach Reboot des Servers wird die Verbindung wieder hergestellt.

    Mein Thema hat sich damit erübrigt und mein Problem ist ein anderes.

    Danke für Deine Reaktion.

  • Hallo zusammen,

    ich habe nun leider erneut ein Problem mit dem Mount des Fritzbox NAS.

    Seit einem Update (apt update und apt full-upgrade) auf einem Raspberry Pi4 mit Raspberry Pi OS, gibt es folgendes Problem:

    Der mount selbst funktioniert ohne Probleme, es werden auch die üblichen Verzeichnisse angezeigt (faxbox, mediabox, voicebox), bei einem Versuch in eines der Verzeichnisse zu wechseln, kommt jedoch ein Fehler: "Datei oder Verzeichnis nicht gefunden".

    Zur Vollständigkeit: Fritzbox 7590 mit Fritz OS 7.28. Vor dem Update des Pi gab es keine Probleme.

    Eine Fehlermeldung in log Dateien konnte ich bisher auch nicht finden.

    Was kann ich tun, um den Fehler zu beheben?

  • Um meine Frage selbst zu beantworten (bzw. für andere einen Hinweis zu geben): folgendes funktioniert aktuell bei mir (ich weiß aber nicht, ob damit dauerhaft das Problem behoben wird oder welche Änderung dafür gesorgt hat, dass es notwendig ist).

    Die Angabe des sec Parameters in den Options hat geholfen. In den Beispielen am Anfang wäre das also:


    Für den manuellen mount zum Testen:
    mount -t cifs -o credentials=/etc/smbcredentials,uid=1000,gid=1000,sec=ntlmv2 //192.168.178.1/fritzbox/ /media/fritz_nas

    In der systemd mount unit:
    Options=credentials=/etc/smbcredentials,uid=1000,gid=1000,sec=ntlmv2

  • Möglicherweise kam mit dem Upgrade ein neuer Kernel? Dieser könnte einen anderen Default security mode haben, welcher nicht mit der Fritzbox funktioniert. Sollte aber im Bootlog stehen, oder auch man mount.cifs. Im Raspberry Pi OS Changelog könnte diesbezüglich auch etwas stehen. Ebenso im Fritz OS Changelog.

  • Ich habe dazu leider nichts gefunden und die oben beschriebene Lösung war nur von kurzer Dauer - das Problem besteht leider weiterhin und trotz der Änderung mit dem sec Parameter.

  • Der mount selbst funktioniert ohne Probleme, es werden auch die üblichen Verzeichnisse angezeigt (faxbox, mediabox, voicebox), bei einem Versuch in eines der Verzeichnisse zu wechseln, kommt jedoch ein Fehler: "Datei oder Verzeichnis nicht gefunden".

    Ich hab exakt das gleiche Problem an zwei verschiedenen Pis. Es liegt nicht am Kernel, den hab ich versuchsweise wieder auf 5.10.38 zurückgedreht.

    Aber seit dem letzten apt-upgrade wurden auch die Pakete "libgssapi-krb5-2, libk5crypto3, libkrb5-3, libkrb5support0" aktualisiert, bei denen ich einen Zusammenhang vermute.


    Konntest du mittlerweile näheres herausfinden?

  • Ich hab exakt das gleiche Problem an zwei verschiedenen Pis. Es liegt nicht am Kernel, den hab ich versuchsweise wieder auf 5.10.38 zurückgedreht.

    Aber seit dem letzten apt-upgrade wurden auch die Pakete "libgssapi-krb5-2, libk5crypto3, libkrb5-3, libkrb5support0" aktualisiert, bei denen ich einen Zusammenhang vermute.


    Konntest du mittlerweile näheres herausfinden?

    Ich denke tatsächlich, dass es am Kernel liegt (oder einer Kombination aus Kernel und anderen Paketen). Ich habe bei einem Pi ein Downgrade auf 5.10.17 durchgeführt (das ist vom Februar 2021), damit funktioniert es wieder problemlos.

  • Die von Hand zu Fuß Methode für ein Nas-Verzeichnis auf einem an der Fritzbox angeschlossenen USB Stick hat prima funktioniert. Eine Kleinigkeit funktioniert nicht sauber. Wenn man eine Datei mit Text vom Nas- Verzeichnis z.B. auf den Raspberry kopiert bleibt der Kopiervorgang hängen (siehe screenshot). Die Datei ist zwar schon längst kopiert, aber die Anzeige, daß der Kopiervorgang andauert verschwindet nicht. Kein Problem ist es vom Raspberry auf das Nas Verzeichnis zu kopieren. Merkwürdigerweise gibt beim Kopieren von Bilddateien in beide Richtungen kein Problem. Wie gesagt nur mit Text Dateien funktioniert es nicht richtig.

    Was auch funktioniert ist wenn man im Dateimanager über "Gehe Zu" die freigegebene Netzwerkressource/Verzeichnis von Hand mountetd. Dann ist Kopieren aller Dateiarten vor und zurück möglich. Betriebssytem ist ein frisches 2021-05-07-raspios-buster-armhf. Gibt es Ideen?

  • Gibt es Ideen?

    Verwende selbst kein GUI, tippe aber eher auf ein Problem vom GUI des OS. Da dürfte die Mountunit nicht viel damit zu tun haben.

    Freut mich das es nun klappte, wobei es auch mit dem Pythonskript hätte funktionieren müssen. Du könntest dir ja mal die Abweichungen ansehen zwischen dem funktionierenden und dem nicht funktionierenden.

  • Ohne GUI (z.B. in einem LXTerminal) funktioniert auch alles prima. Das Ganze wird aber in der GUI noch merkwürdiger. Textdateien, die man z.B. mit Notepad auf Windows erstellt und auf Fritz.Nas kopiert bleiben beim Übertragen auf den Raspberry hängen. Textdateien, die man z.B aus Excel exportiert und auf dem Fritz.Nas Verzeichnis ablegt werden problemlos übertragen.

  • Textdateien, die man z.B. mit Notepad auf Windows erstellt

    Der einzigsten Unterschied Notepad-Text und Unix-Text ist das LF+CR bzw. das CR am Zeilenende.


    Ob das daran liegt?


    MfG


    Jürgen