E2 hängt komplett weg, wenn NFS Zugriff ausfällt....

  • An meiner DM900 hängt ausschliesslich mein Synology NAS als Datenspeicher.
    Mir ist nun aufgefallen, das wenn ich vom PC aus das NAS in der Bandbreite komplett auslaste, es zu einem kompletten Freeze von E2 kommen kann wenn gleichzeitig auf der DM900 z.b. in Aufnahmen vor gesprungen wird.
    Die Aufnahme spielt dann zwar weiter ab, OSD hängt aber komplett fest, sogar die Spinner drehen nicht mehr.


    In dem Moment geht SSH sowie FTP, und die Dreambox hat weiterhin (oder wieder) Zugriff auf den NFS Mount zum NAS
    Der E2 Task lastet dann aber die CPU dauerhaft zu ca. 95% aus.
    Auf ein systemctl restart enigma2 wird aber nicht mehr reagiert
    Ein anschliessendes reboot hängt die Kiste dann komplett weg und SSH sowie FTP gehen dann auch nicht mehr.
    Dann hilft leider nur noch der Netzschalter.


    Ich erhoffe mir nun durch eine Optimierung des mount's dem Problem entgegen zu wirken.
    Der Mount wurde mir mehr oder weniger so vom Mountmanager erstellt:
    192.168.2.2:/volume1/Dreambox /media/Dreambox nfs x-systemd.automount,retrans=1,tcp,noauto,wsize=8192,x-systemd.idle-timeout=60,retry=0,nolock,rw,x-systemd.device-timeout=15,timeo=2,rsize=8192,soft,nofail 0 0
    Wobei ich so nicht ganz mit allen Parametern zufrieden bin, und da wohl mal etwas rum probieren werden, aber so der Spezialist in Sachen Linux Mount bin ich leider auch nicht.
    Ich bin also für jegliche Vorschläge offen! ;)


    mount wirft im Moment folgendes aus:
    systemd-1 on /media/Dreambox type autofs (rw,relatime,fd=26,pgrp=1,timeout=60,minproto=5,maxproto=5,direct)


    Im Anhang noch das Log mit den relevanten Teilen wenn das Problem auftritt.
    Am Anfang sieht man die time out's vom NFS Server und am Ende dann auch das der "Spinner" angeworfen wird


    main thread is non-idle! display spinner!
    *** Error in `/usr/bin/enigma2': free(): invalid pointer: 0x005aa07c ***
    Aborted
    0xb3df9fac(sp=0xbea5be14) <gsignal+48>

    Files

    • Freez.log.txt

      (34.5 kB, downloaded 40 times, last: )

    >> Wir Schweizer haben die Uhren, aber keine Zeit ! <<

    Edited once, last by Swiss-MAD ().

  • Um die DM900 besser zu stellen in der Priorität, ist es sinnvoll die Puffer rsize und wsize dramatisch höher zu stellen, z.B.: 256k. Das bringt die DM900 vom Speicher nicht um.
    Waren der Auslöser Lese- oder Schreibvorgänge vom PC auf das NAS?
    Wenn es Schreibvorgänge sind, dann empfiehlt sich etwas Kernel tuning auf dem NAS zu machen um zu verhindern, das zu viele dirty buffer gibt.
    Ob man das bei Synology machen kann weiß ich nicht.

  • Danke für deine Antwort. Den Buffer werde ich versuchsweise mal vergrössern, das könnte unter Umständen schon reichen.
    Weil das NAS in der Regel nicht sehr lange unter Volllast ist.
    Ich meine es spielt keine Rolle ob es durch schreib oder lesevorgänge ausgelöst wird.
    Die Netzwerk Bandbreite des NAS ist dabei einfach am Limit.


    Wenn es dadurch wenigstens nur Aussetzer bei Aufnahmen an der Dream geben würde, wäre das ja noch zu verkraften. Ich weis ja weshalb das dann passiert.
    Was mich aber wirklich stört, ist das sich E2 dadurch komplett aufhängt. Wäre fein wenn man das verhindern könnte.


    Ich dachte mir das vielleicht mit dem einen oder anderen Timeout Parameter oder mit dem Parameter timeo, das verhindern kann. Der soll defaultmässig ja auf 600 sein, und ist bei mir auf 2. ?(
    Oder den Parameter retrans könnte vielleicht auch öfter mal versuchen.


    Werde bei Gelegenheit mal damit etwas rumspielen, aber über Weihnachten ist am Abend erst mal anderes angesagt, als da rum zu spielen. ;)

    >> Wir Schweizer haben die Uhren, aber keine Zeit ! <<

  • Hallo @Swiss-MAD


    Ich würde mal die size-werte komplett weglassen und das ganze zu testen.
    Hatte ich auch schon 100 mal gefühlt geschrieben, normalerweise kommunizieren Client und Server miteinander und Handelns sich selbst die Size aus ;)


    In der Art wie:

    Code
    1. 192.168.1.13:/media/hdd /media/dreambox/DB820-hdd nfs x-systemd.automount,noauto,retry=0,x-systemd.idle-timeout=60,nolock,rw,timeo=2,retrans=1,x-systemd.device-timeout=2,soft,nofail 0 0


    Aber, ich würde es auch nicht ausschließen das dies an der Box selbst (DreamboxOS) mit seinem systemd hängt.
    Den normalerweise wie ich hier geschrieben habe:


    https://wiki.manjaro.org/index…Use_SystemD_automount_(de)


    Sollte eigentlich durch das setzten der "Option"

    nofail - Mit nofail wird der mount nur von local-fs.target oder remote-fs.target gewünscht, nicht benötigt. Dies bedeutet, dass der Bootvorgang fortgesetzt wird, auch wenn dieser Einhängepunkt nicht erfolgreich eingebunden ist.


    Aber so 100 % sicher bin ich mir nicht das bei der Dreambox alles so läuft wie es sein sollte seit autofs nicht mehr supportet wird und systemd alles übernimmt ;)


    zumindest bei meinen Mipsel-boxen werden Verbindungen auch nicht wieder sauber "getrennt", was mir aber mittlerweile bei der Dreambox egal ist,
    da meine Postings zu diesem Thema ehh immer in der vergangenheit als Hirngespinnste abgetan wurden.....


    kleines Beispiel im Anhang sieht man zwei Mipselbosen die immer als Online gezeigt werden, die DM900 die auch im Netz vorhanden ist eben nicht :D

    Images

    MfG EgLe



    Kernel : 4.19.66-1-MANJARO x86_64
    GUI : KDE 5.60.0 / Plasma 5.16.4
    Machine : Intel NUC8i7HVK
    Graphics : Radeon RX Vega M GH (DRM 3.27.0 4.19.66-1-MANJARO LLVM 8.0.1)
    CPU : Intel Core i7-8809G @ 8x 4.2GHz
    RAM : Gskill F4-3000C16S-16GRS Speicherkarte so D4 3000 16GB C16 Rip

  • Auf den timeo Wert hatte ich nicht geachtet. Der default mit 600 ist keine gute Idee, ein Wert von 2( 200ms) ebenfalls nicht bei Verwendung von normalen Platten.
    Manchmal ist der Server nicht so responsitiv wie gewünscht.
    Ich würde einen Wert zwischen 500 ms und 5 Sekunden wählen (5..50).

  • So dann will ich hier mal noch etwas Rückmeldung geben.
    Nachdem in diesem Tread --> Probleme mit Aufnahmen auf Server auch noch so einiges über die Mounts besprochen wurde,
    habe ich dann auch mal meinen Mount auf das nötigste reduziert und den Rest einfach automatisch aushandeln lassen.
    Resultat ist im Moment:
    Flags: rw,relatime,vers=3,rsize=131072,wsize=131072,namlen=255,soft,proto=tcp,timeo=600,retrans=2,sec=sys,mountaddr=192.168.2.2,mountvers=3,mountport=892,mountproto=tcp,local_lock=none,addr=192.168.2.2


    Ein kurzer Test während einer Aufnahme und unter Last setzten des NAS vom PC aus, sind vorerst mal keine Aussetzer entstanden.

    >> Wir Schweizer haben die Uhren, aber keine Zeit ! <<

    Edited once, last by Swiss-MAD: typo ().

  • Hallo @Swiss-MAD,


    ist doch schön wenn es nun "besser" klappt, wünsche dir das es so auch bleibt :thumbsup:


    Frage mich nur warum bei die NFS vers=3noch verwendet wird :?:




    Selbst hatte ja auch geschrieben das ich soweit schon immer auf ein Minimum fahre, und bin sogar noch einen Schritt weiter gegangen...


    Ich selbst mounte per NFS schon gar keine einzelne Freigaben mehr, sondern mache alles soweit Zentral und überlassen alles dem Server ;)


    kleines Beispiel einer gekürzten fstab:



    somit werden alle meine Freigegeben Mounts der einzelnen Server in /media/nfs unter dem Name des entsprechenden Server eingebunden und zwar genau mit dem entsprechenden Freigabe-Namen wie er am Server auch benannt wurde.


    Zumindest unter meinem Rechner mittels "autofs" werden neu erstellte oder geänderte Freigaben nach einigen Sekunden übernommen ohne Neustart des Sytems,
    und auch die entsprechend automatisch erstellte Verzeichnisse die nicht mehr stimmen (benötigt) werden, werden auch automatisch vom System wieder gelöscht.
    Aber außer mir will sowas ja keiner drum eben auf der Dreambox kein (angeblich veraltetes) autofs-support mehr ;)


    Auf den Dreamboxen musste halt manuell aktualisieren oder die Box neu starten um automatisch neue Freigaben zu erhalten bzw. auf der Dreambox werden auch nicht mehr verwende Verzeichnisse auch vom systemd nicht mehr automatisch entfernt (ist ja besser weil neuer) :D


    Aber egal wie zumindest vereinfacht es das einrichten von NFS-Mounts und man muss nicht nach irgendwelche Freigaben suchen z.B. mittels "showmount".
    Sowas benötigst dann höchsten noch wenn es mal Probleme gibt um den Fehler die Ursache zu finden ob es am Server oder Client liegt wenn was nicht mehr geht ;)



    Also Ehrlich, wenn ich mit einer Zeile in der fstab einen Kompletten Server einrichtet als mount.........

    Images

    MfG EgLe



    Kernel : 4.19.66-1-MANJARO x86_64
    GUI : KDE 5.60.0 / Plasma 5.16.4
    Machine : Intel NUC8i7HVK
    Graphics : Radeon RX Vega M GH (DRM 3.27.0 4.19.66-1-MANJARO LLVM 8.0.1)
    CPU : Intel Core i7-8809G @ 8x 4.2GHz
    RAM : Gskill F4-3000C16S-16GRS Speicherkarte so D4 3000 16GB C16 Rip

  • Frage mich nur warum bei die NFS vers=3noch verwendet wird

    Das habe ich mich auch schon gefragt, und bin eben mal auf meinem Synology NAS in die NFS Einstellungen.
    Da musste ich NFSv4 explizit freigeben, ansonsten wird nur v2 & v3 verwendet. K.a. weshalb die das so gemacht haben. :D
    Nun passt auch das:
    Flags: rw,relatime,vers=4.0,rsize=131072,wsize=131072,namlen=255,soft,proto=tcp,port=0,timeo=600,retrans=2,sec=sys,clientaddr=192.168.2.10,local_lock=none,addr=192.168.2.2 ;)


    Einzig was mir die mount abfrage egal wie nicht ausspuckt, ist ob nun async oder sync gemountet wurde. ?(


    Deine fstab ist die von deinem Manjaro Rechner für die Mounts auf die verschiedenen NFS Server?
    Naja automount mag schon auch seine Vorteile haben, aber im allgemeinen bin ich auf der Dreambox sonst mit systemd zufrieden. Wobei ich da aber auch keine besondere Anforderungen habe. Wenn der Mount zum NAS klappt und stabil läuft, bin ich zufrieden. :D

    >> Wir Schweizer haben die Uhren, aber keine Zeit ! <<

  • Da musste ich NFSv4 explizit freigeben, ansonsten wird nur v2 & v3 verwendet. K.a. weshalb die das so gemacht haben.

    Ist bei QNAP auch so.
    Auch da muss NFSv4 explizit aktiviert werden.


    Btw. die ausgehandelten Werte hängen von dem NAS ab, daher macht es imho Sinn bei solchen Angaben auch NAS und FW zu nennen.


    Ich habe auch kaum Parameter in der fstab.
    Zwischen DM900 und QNAP TS-569L (4.3.4.0820) ergibt sich:

    Code
    1. qnap:/Media on /media/Media type nfs4 (rw,relatime,vers=4.1,rsize=32768,wsize=32768,namlen=255,soft,proto=tcp,port=0,timeo=2,retrans=1,sec=sys,clientaddr=192.168.xxx.xxx,local_lock=none,addr=192.168.xxx.xxx)
  • Hallo @Swiss-MAD,


    Also die das obige Beispiel ist von meiner fstab aus der Dreambox, den Scrrenshot habe ich zwar unter meinem Manjaro-Linux gemacht aber die NFS-Verbindungen dort sind obwohl diese per autofs gemacht werden identisch ;)


    Machhe immer dieselbe Struktur, egal ob per fstab oder autofs....


    So zu deiner Frage was den nun "default" ist, (sync oder asycn), muss ich als nicht Englisch-Könner auch die Man-Page konsulitieren.
    Habe diese Aussage dazu gefunden, welche Versionen auf der Dreambxo eingesetzt werden weiß ich nicht ;)


    In releases of nfs-utils up to and including 1.0.0, the async option was the default. In all releases after 1.0.0, sync is the default, andasync must be explicitly requested if needed. To help make system administrators aware of this change, exportfs will issue a warning if neithersync nor async is specified.


    Warum man NFS4.x bei den NAS seperat aktivieren muss ist eigentlich recht Simple erklärt :D
    Diese werden meist von WindowsUser entwickel und auch für Windowsuser hauptsächlich vorkonfiguriert,
    daher gibt bzw. gab es gerade auch bei Qnap öfters das die NFS-Netzwerke je nach Firmware besser oder schlechter liefen.


    Der zweite Punkt ist das NFS4 ja eigentlich ein neueres Protokoll ist und auch dadurch schneller ist als das alte NFS 2-3 weil man bei NFS4 weil nur noch ein Protokoll genutzt wird.


    So mal als Kurze Info kann ich dies mal aufzeigen:



    According to me the major difference lies in the points below:
    NFSv3

    • Exports : All exports are mounted separately.
    • Protocol : Numerous protocols for different aspects collected together. MOUNT, LOCK, STATUS…etc.
    • Locking : Permanent locks in yet another protocol.
    • Security : UNIX based. SecureNFS. Mode Bit Locking.
    • Communication : One operation per RPC.
    • I18N : All locales must match.
    • Parallel high bandwidth access : None native. (Addition such as MPFS)

    NFSv4

    • Exports : All exports can be mounted together in a directory tree structure as part of a pseudo-filesystem.
    • Protocol : A single protocol with the addition of OPEN and CLOSE for security auditing.
    • Locking : Lease based locking in the same protocol.
    • Security : Kerberos and ACL based.
    • Communication : Multiple operations per RPC. (Improves performance)
    • I18N : UTF-8.
    • Parallel high bandwidth access : pNFS.


    Für mich persönlich ist auch Entscheidend das NF4 nicht nur wegen des Protokolls schneller ist sondern das durch verwendung von UTF-8 dort nun auch Sonderzeichen erlaubt und akzeptiert werden. Die Sicherheits durch Kerberos würde das System wieder ein wenig ausbremsen bei der Sicherheit über ACL bin ich erst durch den Openmediavault-NAS aufmerksam geworden und
    da bin ich wegen der Englischsprachigen Anleitungen noch nicht ganz durchgestiegen.


    Wichtiger Interessanter Punkt: ^^
    Wer nur ein reines NFS4 Netzwerk aufbauen bzw. Betreiben würde, könnte mit dem Befehls "showmount -e Ip-Adresse" gar keine NFS4 Freigaben abrufen.
    Weil dieser Befehl das Protokoll von NFS4 gar nicht kennt und Unterstützt.


    Und da ich ja gerade hier immer für NFS4, "werbe", daher auch mein Vorschlag mit meiner Einzeiligen fstab (mounts).
    ist ja gerade der erste Punkt in der Auflistung :D


    All exports can be mounted together in a directory tree structure as part of a pseudo-filesystem.



    Weitere Infos, können Englisch-Verstehende sich selbst nachlesen unter: https://linux.die.net/man/5/nfs


    PS. ich muss mir auch immer Englische Man-pages anschauen und dann seperat nach deutschen Erklärungen bespiele Googenl die ich dann verstehe,
    darum dauert bei mir der Lernprozess auch wesentlich Länger als bei anderen ;(
    Aber zum Glück helfen da auch Treffer oder Anleitunge die auch etliche Jahre alt sein können :D

    MfG EgLe



    Kernel : 4.19.66-1-MANJARO x86_64
    GUI : KDE 5.60.0 / Plasma 5.16.4
    Machine : Intel NUC8i7HVK
    Graphics : Radeon RX Vega M GH (DRM 3.27.0 4.19.66-1-MANJARO LLVM 8.0.1)
    CPU : Intel Core i7-8809G @ 8x 4.2GHz
    RAM : Gskill F4-3000C16S-16GRS Speicherkarte so D4 3000 16GB C16 Rip

    Edited 3 times, last by EgLe ().

  • Hinzufügen möchte ich das NSF4 nur noch TCP benutzt. Was sinnvoll ist bei Aufnahmen. Sollte also die erste Wahl sein. Weshalb der Netzwerkbrowser Standartmäßig NFS3 mountet, Bleibt mir ein Rätsel.

    Ich bin Guybrush Threepwood, ein mächtiger Pirat!

  • Weshalb der Netzwerkbrowser Standartmäßig NFS3 mountet, Bleibt mir ein Rätsel.

    Der macht noch andere komische Sachen. ;)
    Der wurde einfach schon lange nicht mehr angefasst, deshalb sind da einfach noch einige alte Sache mit drin.
    Der gehört einfach mal überholt.


    @EgLe
    Wird dann default wohl sync sein, und wird bei den grossen Dateien von Aufnahmen wohl nicht viel ausmachen.

    >> Wir Schweizer haben die Uhren, aber keine Zeit ! <<


  • Ich habe auch kaum Parameter in der fstab.
    Zwischen DM900 und QNAP TS-569L (4.3.4.0820) ergibt sich:

    Code
    1. qnap:/Media on /media/Media type nfs4 (rw,relatime,vers=4.1,rsize=32768,wsize=32768,namlen=255,soft,proto=tcp,port=0,timeo=2,retrans=1,sec=sys,clientaddr=192.168.xxx.xxx,local_lock=none,addr=192.168.xxx.xxx)

    Hast du timeo=2,retrans=1 selbst gesetzt ? Default scheint ja z.b. timeo=600 zu sein.

    >> Wir Schweizer haben die Uhren, aber keine Zeit ! <<

  • Jupp, ich hatte noch timeo=2 und retrans=1 in der fstab drin.


    Nachdem ich die Einträge entfernt habe wird - wie bei dir - auch retrans=2 und timeo=600 ausgehandelt.


    Interessant fand ich deine hohen r/w-size-Werte. Bei mir werden 32768 ausgehandelt. Scheint aber zu reichen, weil ich keinerlei Probs beim Abspielen von Dateien von der NAS habe.

  • Ja der Unterschied bei rsize und wsize ist mir auch aufgefallen. Ist ja beides mal eine DM900, dann wird der Unterschied wohl am Server liegen.
    Naja die DM900 hat ja ausreichend RAM und verkraftet die grösseren Blöcke problemlos.

    >> Wir Schweizer haben die Uhren, aber keine Zeit ! <<

  • Hallo,


    also mich selbst würde eher mal Interessieren bei denjenigen die Fritzboxen haben und immer Ihre Fritzboxen "kastrieren"
    wegen den Hängern usw. ob es bei einer Minimalkonfiguration und Ohne Kastration der Fritzboxen auch noch hänger gibt.


    Selbst habe ich ja kein Fritzbox und kann da leider selbst nicht testen, aber wundern würde es mich nicht wenn es da dann auch gehen würde ;)


    Kann mir selbst nicht vorstellen das AVM wirklich so schlecht ihre Boxen Konfiguriert bzw. ausliefert :D

    MfG EgLe



    Kernel : 4.19.66-1-MANJARO x86_64
    GUI : KDE 5.60.0 / Plasma 5.16.4
    Machine : Intel NUC8i7HVK
    Graphics : Radeon RX Vega M GH (DRM 3.27.0 4.19.66-1-MANJARO LLVM 8.0.1)
    CPU : Intel Core i7-8809G @ 8x 4.2GHz
    RAM : Gskill F4-3000C16S-16GRS Speicherkarte so D4 3000 16GB C16 Rip

  • Fritzbox habe ich glücklicherweise auch keine. Ich bin sehr glücklich mit meinem auch schon etwas älteren Asus RT-AC66U.
    Aber da ist sowieso noch ein TP-Link TL-SG2008 Switch dazwischen.


    Bis auf das Problem wie am Anfang geschrieben, hatte ich sonst nie probleme mit Aussetzer oder Ruckler.


    Ich hatte vor dem NAS sogar mal eine ext. HDD am USB2.0 Port des oben genannten Router über NFS gemountet, und nicht mal damit hatte ich Probleme auch bei mehreren HD Aufnahmen gleichzeitig.

    >> Wir Schweizer haben die Uhren, aber keine Zeit ! <<

  • Ältere Fritzboxen haben Probleme, wenn der Switch in der Fritzbox von 100 auf 1000 MBit/s umsetzen muss, wegen begrenztem Pufferspeicher.
    Neuere Fritzboxen sind meines Wisssens nicht betroffen. Reine 100 MBit/s oder 1000 MBit/s sind unkritisch.