Jammer dat een zo op het oog simpel probleem, op zo een ingewikkelde manier moet worden "opgelost"
Maar ik begrijp dat linux dus geen methode heeft om de ontbrekende mount te onderkennen.
Al zou de box maar stoppen met proberen te verbinden en het verder aan de gebruiker overlaten wat nu te doen.
Vanuit de gebruiker gezien is het heel raar en onbegrijpelijk hoe e.e.a. met network-mounts werkt (en soms niet), maar vanuit de techniek gezien is het 100% logisch.
Het mounten zelf hoeft overigens niet eens het probleem te zijn. Ik ben niet zo bij met mounten van SMB shares, maar er zit vast ook wel een optie bij om het direct op te geven als de server niet antwoordt. Of om het juist een x aantal seconden te blijven proberen (maar niet eindeloos, daar wordt niemand blij van). En als dat niet kan, kunnen we ook nog wel iets maken dat er eerst een ping gedaan voor het mounten. Misschien zelfs wel een SMB-ping om te kijken of het SMB-gebeuren ook wel echt werkt.
De problemen gaan pas echt komen als het mounten is gelukt (ooit) en de NAS daarna niet meer bereikbaar is. Het operating system heeft dan al data vanuit de user processes (enigma in dit geval) geaccepteert om weggeschreven te worden naar een file (of vergelijkbaar een leesopdracht). Als de disk waar die file op staat er opeens niet meer is, wat dan? Ik weet dat NFS koste wat koste file-integriteit probeert de behouden en daarom tot in het oneindige de data alsnog probeert weg te schrijven, ook al is de server al lang uit/dood noem maar op. Er zijn wel opties om dat te voorkomen, maar de ervaring leert dat die niet heel erg effectief zijn.
Maar dan, het is je gelukt om je NAS te mounten. De NAS is in slaapstand gegaan en is dus niet meer bereikbaar. Enigma doet iets waardoor een block van de remote disk nodig is. Wat dan? Het operating system kan niet beoordelen of de applicatie ermee om kan gaan dat er een leesfout (of zelfs schrijf-fout) wordt gegeven. En blijft daarom maar eindeloos wachten tot het NAS alsnog reageert. In de tussentijd staat de betreffende thread in enigma compleet stil. Sterker nog, je kunt enigma op z'n moment vaak niet eens killen (ook niet met kill -9, process "D" state = niet killen).
Het is ook nog eens niet te voorspellen vanuit de applicatie (= enigma) wanneer het operating system de disk gaat aanspreken. Dit is geen MS/DOS-tijdperk meer. Alle disk-aanspraken gaan via drie lagen operating system waarde applicatie geen zeggenschap over heeft.
En zo kan ik nog wel even doorgaan.
Maar nogmaals, als het alleen om het mounten gaat, dan is het op zich nog wel op te lossen. Maar enigma moet dan ook worden aangepast zodat die kan omgaan met een mislukte mount en het dan bijvoorbeeld later nog eens probeert, of het aan de gebruiker voorlegt. Ik denk dat je meestal weinig hebt aan een ontvanger waar de mount mislukt is, er moeten in ieder geval geen opnames plaatsvinden. Wil je dat?