Hallo Liste,
ich habe probiert meine Synology Diskstation per NFS zu erreichen. Das habe ich mit Hilfe von Yast (NFS Client) gemacht. Yast trägt ja dann die Freigaben als automount in /etc/fstab ein. Das funktioniert auch wirklich gut, solange der Server an ist. Nun geht meine Diskstation morgens an und abends nach Zeitplan wieder aus. Wenn mein Server aus ist, und ich meine SUSE (NFS Client) hochfahre, hängt die SUSE bzw. wartet natürlich. Ist der Server eingebunden und der Server geht aus, hängt die SUSE danach beim Runterfahren. Ich habe jetzt bei den Einstellungen für die NFS Freigaben etwas rumprobiert (mit timeo, retrans, retry, intr oder bg). Dann habe ich danach die Diskstation runtergefahren und geschaut, was die SUSE macht. Leider hängt sie immer nur, wenn der Server nicht greifbar ist. Ich hätte ganz gern, dass sobald der Server aus ist, die SUSE eine kleine Zeit probiert und dann die Operation abbricht und ohne den Server zu mounten oder wieder zu entbinden, rauf oder runterfährt. Geht das überhaupt? Welche Optionen muss ich eintragen.
Danke und Grüße Philipp
Hallo,
Am Dienstag, 5. September 2017, 21:43:30 CEST schrieb Philipp:
Hallo Liste,
snip
Ich hätte ganz gern, dass sobald der Server aus ist, die SUSE eine kleine Zeit probiert und dann die Operation abbricht und ohne den Server zu mounten oder wieder zu entbinden, rauf oder runterfährt. Geht das überhaupt? Welche Optionen muss ich eintragen.
Ja
Das hier sind die Optionen (Auszug aus NFS (5) ) soft/hard Bestimmt das Wiederherstellungsverhalten des NFS-Clients nachdem es zu einer Zeitüberschreitung für eine NFS-Anfrage kam. Falls keine der Optionen angegeben ist (oder falls die Option hard angegeben ist), werden NFS-Anfragen unendlich oft erneut versucht. Falls die Option soft angegeben ist, lässt der NFS-Client eine NFS-Anfrage nach retrans Übertragungs- versuchen fehlschlagen. Dadurch liefert der NFS-Client einen Fehler an die aufrufende Anwendung zurück.
Nebenbemerkung: Eine sogenannte »weiche« Zeitüberschreitung kann in bestimmten Fällen zu stiller Datenverfälschung führen. Verwenden Sie daher die Option soft nur, wenn die Reaktions‐ fähigkeit des Clients wichtiger als die Datenintegrität ist. Die Verwendung von NFS über TCP oder die Erhöhung des Wertes der Option retrans kann einige der Risiken des Einsatzes der Option soft verringern.
Am 05.09.2017 um 22:43 schrieb Matthias Müller:
Das hier sind die Optionen (Auszug aus NFS (5) ) soft/hard Bestimmt das Wiederherstellungsverhalten des NFS-Clients nachdem es zu einer Zeitüberschreitung für eine NFS-Anfrage kam. Falls keine der Optionen angegeben ist (oder falls die Option hard angegeben ist), werden NFS-Anfragen unendlich oft erneut versucht. Falls die Option soft angegeben ist, lässt der NFS-Client eine NFS-Anfrage nach retrans Übertragungs- versuchen fehlschlagen. Dadurch liefert der NFS-Client einen Fehler an die aufrufende Anwendung zurück.
Nebenbemerkung: Eine sogenannte »weiche« Zeitüberschreitung kann in bestimmten Fällen zu stiller Datenverfälschung führen. Verwenden Sie daher die Option soft nur, wenn die Reaktions‐ fähigkeit des Clients wichtiger als die Datenintegrität ist. Die Verwendung von NFS über TCP oder die Erhöhung des Wertes der Option retrans kann einige der Risiken des Einsatzes der Option soft verringern.
Hallo Matthias,
über soft/hard habe ich auch bereits gelesen. Doch das Risiko eines Datenverlustes bei soft, wollte ich nicht eingehen. Kenn' mich aber nicht aus, ob das bei mir auch Relevanz hätte bzw. kann das Risiko von soft nicht einschätzen. Was mir wichtig ist, sind Daten (meist private Fotos, Videos) mit Dolphin auf die Diskstation zu schaufeln. Bevor der Server runterfährt habe ich meist den Client zuvor runtergefahren. Aber hier möchte ich natürlich nie Datenverlust riskieren. Dann macht es also gar keinen Sinn retrans mit hard zu kombinieren? Ich hatte gehofft, dass man mein Ziel mit hard + Optionen irgendwie realisieren kann.
Aber mir ist da noch ne andere Idee gekommen: Wenn ich in die Freigabe noauto,user eintrage und mir ein Skript schreibe, dass den Server anpingt, und wenn der Ping positiv ist, die Freigabe hard mountet. Und dann mach ich noch einen Eintrag in die crontab, dass ein Skript mit umount ... die Freigaben kurz vor dem Serverrunterfahren (bei mir täglich um 23:00) aushängt. Dann müsste man nur das Mount Skript mit Ping starten, sobald die SUSE oben ist, und man den Server möchte. Wäre das eine gangbare Lösung? Bevor ich ans Basteln gehe.
Danke und Grüße Philipp
Hallo Philipp,
Am Mittwoch, 6. September 2017, 19:59:03 CEST schrieb Philipp:
Am 05.09.2017 um 22:43 schrieb Matthias Müller:
Das hier sind die Optionen (Auszug aus NFS (5) ) soft/hard Bestimmt das Wiederherstellungsverhalten des NFS-Clients
snip
über soft/hard habe ich auch bereits gelesen. Doch das Risiko eines Datenverlustes bei soft, wollte ich nicht eingehen. Kenn' mich aber nicht aus, ob das bei mir auch Relevanz hätte bzw. kann das Risiko von soft nicht einschätzen. Was mir wichtig ist, sind Daten (meist private Fotos, Videos) mit Dolphin auf die Diskstation zu schaufeln.
Bei uns in der Firma, sind ca 150 Konstrukteure am Werk, die früher mit Win NT, über XP und jetzt Win 7 arbeiten. Der Punkt ist, dass alle Anwender ein Laufwerksmapping zur Verfügung haben, das in der Anfangszeit (ca 1994 bis 2000) ein NFS-Laufwerk war, jetzt per Samba bereit gestellt wird. Auf diesem Laufwerk werden die Arbeitsdaten (Konstruktionen) gespeichert, bevor sie in der Dokumentenverwaltung eingecheckt werden.
Dieses Laufwerk war, während der NFS-Ära, _immer_ mit der Option soft an den PC montiert. Verwaltung des zugehörigen Unix-Servers (kein Linux sondern AIX) inkl. NFS-Server war meine Verantwortung. Datenverluste aufgrund von Netzwerkproblemen gab es eigentlich nie. Es kam ab und zu vor, dass Zugriffsprobleme auftraten, die konnten aber meistens ohne Datenverlust gelöst werden. Hier hat auch die Anwendung und der NFS-Client seinen Teil beigetragen, in dem gescheite Fehlermeldungen kamen und der Speicherdialog offen blieb. Datenverluste gab es nur dann, wenn ein Anwender meinte, den Rechner austricksen zu müssen (abwürgen der Anwendung über Taskmanager, hartes Ausschalten etc.)
Bevor der Server runterfährt habe ich meist den Client zuvor runtergefahren. Aber hier möchte ich natürlich nie Datenverlust riskieren.
Bei uns lief der Server durch, weil, zusätzlich für den Schichtbetrieb, weitere Datenzugriffe per NFS notwendig waren und sind (Werkzeugmaschinen hölen teilweise per NFS NC-Daten). Die aktuellen NFS-Mounts (Server -> WkzMaschine) sind ebenfalls alle soft eingehängt.
Dann macht es also gar keinen Sinn retrans mit hard zu kombinieren? Ich hatte gehofft, dass man mein Ziel mit hard + Optionen irgendwie realisieren kann.
In der Anfangsphase hatte ich, wenn ich hard verwendet habe, immer wieder Probleme gehabt. Vor allem wenn der Server aus Wartungsgründen doch mal down war und die Frühschicht ihre WkzMasch hoch gefahren haben. Da konnte es passieren, dass so eine Maschine ne ganze Weile nicht lief, weil der NFS- Client auf den Server gewartet hat. Nach der Umstellung auf soft kam das nie wieder vor.
Aber mir ist da noch ne andere Idee gekommen: Wenn ich in die Freigabe noauto,user eintrage und mir ein Skript schreibe, dass den Server anpingt, und wenn der Ping positiv ist, die Freigabe hard mountet. Und dann mach ich noch einen Eintrag in die crontab, dass ein Skript mit umount ... die Freigaben kurz vor dem Serverrunterfahren (bei mir täglich um 23:00) aushängt. Dann müsste man nur das Mount Skript mit Ping starten, sobald die SUSE oben ist, und man den Server möchte. Wäre das eine gangbare Lösung? Bevor ich ans Basteln gehe.
Dazu kann ich nichts sagen. Aber afaik müsste das mit systemd und einem entsprechenden Target lösbar sein. Aber dafür fehlen mir auch die entsprechenden Kenntnisse.
Zum Thema Samba in deiner anderen Mail, kann ich nur sagen, dass nach der NFS- Ära das Zeitalters des Sambas begann. Auch hier so gut wie keine Datenverluste und wenn dann in 95% der Fälle: pebdac.
Am 07.09.2017 um 22:55 schrieb Matthias Müller:
Hallo Philipp,
Hallo Matthias,
danke für Deine ausführliche Antwort!
...
Dieses Laufwerk war, während der NFS-Ära, _immer_ mit der Option soft an den PC montiert. Verwaltung des zugehörigen Unix-Servers (kein Linux sondern AIX) inkl. NFS-Server war meine Verantwortung. Datenverluste aufgrund von Netzwerkproblemen gab es eigentlich nie. Es kam ab und zu vor, dass Zugriffsprobleme auftraten, die konnten aber meistens ohne Datenverlust gelöst werden. Hier hat auch die Anwendung und der NFS-Client seinen Teil beigetragen, in dem gescheite Fehlermeldungen kamen und der Speicherdialog offen blieb. Datenverluste gab es nur dann, wenn ein Anwender meinte, den Rechner austricksen zu müssen (abwürgen der Anwendung über Taskmanager, hartes Ausschalten etc.)
Ich würde auch vermuten, dass Dolphin beim Speichern oder Kopieren einen Fehler ausgibt, falls der Server auf einmal weg ist. Die Eventualität eines Fehlers wird deshalb gering sein, weil die meisten Programme mit einer Fehlermeldung umgehen können. Und wenn der Client vor dem Server runtergefahren wird, wahrscheinlich noch viel mehr bis ausgeschlossen, falls in einen Cache geschrieben werden sollte. Und die Verbindung zum Server schätze ich bei mir als stabil ein.
...
Aber mir ist da noch ne andere Idee gekommen: Wenn ich in die Freigabe noauto,user eintrage und mir ein Skript schreibe, dass den Server anpingt, und wenn der Ping positiv ist, die Freigabe hard mountet. Und dann mach ich noch einen Eintrag in die crontab, dass ein Skript mit umount ... die Freigaben kurz vor dem Serverrunterfahren (bei mir täglich um 23:00) aushängt. Dann müsste man nur das Mount Skript mit Ping starten, sobald die SUSE oben ist, und man den Server möchte. Wäre das eine gangbare Lösung? Bevor ich ans Basteln gehe.
Dazu kann ich nichts sagen. Aber afaik müsste das mit systemd und einem entsprechenden Target lösbar sein. Aber dafür fehlen mir auch die entsprechenden Kenntnisse.
Ich habe jetzt um auf Nummer sicher zu gehen trotzdem hard gelassen und hänge wie oben beschrieben die Freigaben über ein Skript erst ein, sobald der Client hochgefahren ist. Und um 22:55 habe ich in die crontab einen Eintrag vorgenommen, der auf ein Skript verweist, das alle Freigaben umountet. Kurz davor lasse ich mit kdialog eine Info ausgeben, dass man seine Arbeit mit dem Server beenden muss. Mit der Lösung probiere ich das jetzt mal auf Alltagstauglichkeit. Praktischer wäre es sicherlich, den Server prüfen zu lassen, ob noch Clients da sind, bevor er runterfährt. Aber ich will an der Diskstation nicht rumpfuschen. Ich kann ja immer noch mal soft beim Client probieren, falls alle Stricke reißen.
Zum Thema Samba in deiner anderen Mail, kann ich nur sagen, dass nach der NFS- Ära das Zeitalters des Sambas begann. Auch hier so gut wie keine Datenverluste und wenn dann in 95% der Fälle: pebdac.
Netter Ausdruck, habe ich erst mal googlen müssen. Ja das zum Thema Datenverlust und samba bzw. smb würde mich schon interessieren, da hier ja soft default sein muss. Aber bei smb habe ich in Verbindung mit soft noch nie so was wie Datenverlust zu lesen bekommen.
Viele Grüße Philipp
Am 05.09.2017 um 22:43 schrieb Matthias Müller:
Nebenbemerkung: Eine sogenannte »weiche« Zeitüberschreitung kann in bestimmten Fällen zu stiller Datenverfälschung führen. Verwenden Sie daher die Option soft nur, wenn die Reaktions‐ fähigkeit des Clients wichtiger als die Datenintegrität ist. Die Verwendung von NFS über TCP oder die Erhöhung des Wertes der Option retrans kann einige der Risiken des Einsatzes der Option soft verringern.
Ach ja noch eine Frage, die sich mir aufdrängt, wie sieht es eigentlich mit Datenverlust bei samba aus. Bisher habe ich cifs mounts in die /etc/fstab eingetragen. Wenn der Server weg ist, geht der Client trotzdem. Das ist doch quasi soft.
Grüße Philipp
Hallo Philipp,
wenn Du die Einträge in der /etc/fstab vornimmst, ist das nicht automount. Aber genau das wäre die Lösung für Dich. Schau Dir den autofs Service an, konfiguriert über /etc/auto.master und ggfs. weitere Dateien. Von opensuse nicht als default gestartet, also
systemctl enable autofs.service und systemctl start autofs.service
Der macht genau das, was Du haben willst. Er versucht auf die nfs-Freigabe zuzugreifen, wenn sie benötigt wird. Wenn das nicht klappt, bleibt der Rest Deines Suse-Rechners davon ungestört.
Gruß Jan
Am 05.09.2017 um 21:43 schrieb Philipp:
Hallo Liste,
ich habe probiert meine Synology Diskstation per NFS zu erreichen. Das habe ich mit Hilfe von Yast (NFS Client) gemacht. Yast trägt ja dann die Freigaben als automount in /etc/fstab ein. Das funktioniert auch wirklich gut, solange der Server an ist. Nun geht meine Diskstation morgens an und abends nach Zeitplan wieder aus. Wenn mein Server aus ist, und ich meine SUSE (NFS Client) hochfahre, hängt die SUSE bzw. wartet natürlich. Ist der Server eingebunden und der Server geht aus, hängt die SUSE danach beim Runterfahren. Ich habe jetzt bei den Einstellungen für die NFS Freigaben etwas rumprobiert (mit timeo, retrans, retry, intr oder bg). Dann habe ich danach die Diskstation runtergefahren und geschaut, was die SUSE macht. Leider hängt sie immer nur, wenn der Server nicht greifbar ist. Ich hätte ganz gern, dass sobald der Server aus ist, die SUSE eine kleine Zeit probiert und dann die Operation abbricht und ohne den Server zu mounten oder wieder zu entbinden, rauf oder runterfährt. Geht das überhaupt? Welche Optionen muss ich eintragen.
Danke und Grüße Philipp
Am 06.09.2017 um 10:18 schrieb Handwerker, Jan (IMK):
Hallo Philipp,
wenn Du die Einträge in der /etc/fstab vornimmst, ist das nicht automount. Aber genau das wäre die Lösung für Dich. Schau Dir den autofs Service an, konfiguriert über /etc/auto.master und ggfs. weitere Dateien. Von opensuse nicht als default gestartet, also
systemctl enable autofs.service und systemctl start autofs.service
Der macht genau das, was Du haben willst. Er versucht auf die nfs-Freigabe zuzugreifen, wenn sie benötigt wird. Wenn das nicht klappt, bleibt der Rest Deines Suse-Rechners davon ungestört.
Diese Option ist mir auch sofort in den Sinn gekommen (Ich mache das so seit Jahrzehnten)
Allerdings löst das nicht alle Problem, die Phillip erwähnt hat:
Wenn während des aktiven Mounts die NAS heruntergefahren wird, hängt das System ebenso
Ebenfalls ist autofs beleidigt, wenn ein mount auf ein Share erfolgen soll und der Server nicht da ist und der mount somit fehlschlägt. Ab da gelingen automounts auf das betreffende Share in der Regel erst dann wieder, wenn man autofs neu startet. Es gibt da in autofs zwar einen konfigurierbaren Timeoutwert der in solch einem Fall den Zugriff wieder erlauben soll, jedoch funktioniert das zumindest bei mir leider nicht (openSUSE und Debian Systeme sind da gleichermaßen betroffen)
systemd hat ja auch solch eine mount Möglichkeit in petto, das der mount erst erfolgen soll beim ersten Zugriff auf das Share. Damit kenn ich mit allerdings nicht aus und kann daher nicht sagen, wie sich das System in diesem Falle verhält
Gruß Manfred
Gruß Jan
Am 05.09.2017 um 21:43 schrieb Philipp:
Hallo Liste,
ich habe probiert meine Synology Diskstation per NFS zu erreichen. Das habe ich mit Hilfe von Yast (NFS Client) gemacht. Yast trägt ja dann die Freigaben als automount in /etc/fstab ein. Das funktioniert auch wirklich gut, solange der Server an ist. Nun geht meine Diskstation morgens an und abends nach Zeitplan wieder aus. Wenn mein Server aus ist, und ich meine SUSE (NFS Client) hochfahre, hängt die SUSE bzw. wartet natürlich. Ist der Server eingebunden und der Server geht aus, hängt die SUSE danach beim Runterfahren. Ich habe jetzt bei den Einstellungen für die NFS Freigaben etwas rumprobiert (mit timeo, retrans, retry, intr oder bg). Dann habe ich danach die Diskstation runtergefahren und geschaut, was die SUSE macht. Leider hängt sie immer nur, wenn der Server nicht greifbar ist. Ich hätte ganz gern, dass sobald der Server aus ist, die SUSE eine kleine Zeit probiert und dann die Operation abbricht und ohne den Server zu mounten oder wieder zu entbinden, rauf oder runterfährt. Geht das überhaupt? Welche Optionen muss ich eintragen.
Danke und Grüße Philipp
Am 06.09.2017 um 11:51 schrieb Manfred Kreisl:
Allerdings löst das nicht alle Problem, die Phillip erwähnt hat:
Wenn während des aktiven Mounts die NAS heruntergefahren wird, hängt das System ebenso
Hallo Jan, hallo Manfred,
danke für den Ansatz mit autofs, aber wegen obigem Grund scheidet das für mich ja dann auch aus. Mit systemd kenne ich mich leider nicht aus.
Danke und Grüße Philipp