Wie kann man Feststellen, wann das NAS komplett hochgefahren ist...

Status
Für weitere Antworten geschlossen.

_Joachim_

Benutzer
Mitglied seit
05. Jun 2016
Beiträge
62
Punkte für Reaktionen
0
Punkte
0
Hallo zusammen,

in meinem Backup-Script prüfe ich vor Ausführung des Backups, ob mein NAS eingeschaltet ist. Falls nicht, wird es gestartet. Soweit, so gut.
In den frühen DSM 6 - Versionen genügte es die Erreichbarkeit des NAS per ping zu prüfen und alsbald nach 'Pingbarkeit' den eigentlichen Backup-Auftrag zu starten.

Mit den höheren DSM - 6 Versionen allerdings ist mein NAS nach ca. 120 Sekunden per ping erreichbar - jedoch dauert es derzeit weitere ca. 180 Sekunden bis mein NAS komplett gestartet / hochgefahren ist und den Backup-Auftrag entgegen nehmen kann.

Ich wüsste nun gern, ob es eine geschicktere Möglichkeit gibt zu prüfen, ob das NAS komplett gestartet ist? (Also die blaue LED meiner DS716+ nicht mehr blinkt.) Das ganze sollte von Windows aus funktionieren (PuTTY/PLink).

Hat jemand eine Idee / einen Tipp oder kennt jemand einen Trick?

Dass es eindeutige Kriterien geben sollte, ist dem Verhalten der DSM-GUI zu entnehmen; die weiß etwa nach einem Firmware-Update, wann das NAS komplett hochgefahren ist.

Besten Dank im Voraus.
 

_Joachim_

Benutzer
Mitglied seit
05. Jun 2016
Beiträge
62
Punkte für Reaktionen
0
Punkte
0
Dann will ich die Frage mal selbst beantworten und aus einer Antwort von Synology zitieren...

If you can integrate SNMP in your script, probably this feature will be useful (there is a system status available): Synology Diskstation MIB Guide.pdf

Of course, as you have mentioned, the same start of ping + 10 minutes should work (just look how much time your system booting). :cool:

Also, if you have possibility to use ssh or telnet connection*, there is a following string in /var/log/messages
2018-03-01T10:15:57+03:00 SOME_NAS root: == DSM 6.1 15217-5 finished boot up ==​
Please note that this string can be changed with further DSM update (at least DSM version there will be definitely changed).

*Please be careful when working over ssh/telnet or executing scripts in the Task Scheduler. Not right actions there can be dangerous for your files. Synology do not responsible for possible consequences.​

:cool: habe ich hinzugefügt.
 

blurrrr

Benutzer
Sehr erfahren
Mitglied seit
23. Jan 2012
Beiträge
6.204
Punkte für Reaktionen
1.104
Punkte
248
Einen "akustischen" Sensor, denn das NAS piept, wenn es komplett hochgefahren ist :p

Aber mal ernsthaft - ist halt wie bei allem anderen auch - "ping" ist eine denkbar schlechte Idee, wenn es darum geht, das "vollständige" Hochfahren eines Gerätes zu überprüfen, da das Netzwerk i.d.R. relativ früh hochgefahren wird und danach erst die ganzen anderen Dienste (welche eben auch vom Netzwerk abhängen). Einen Ping kriegt man ziemlich flott, aber bis so ein MySQL, Apache und Gekrösel dann auch "irgendwann" mal da ist, das kann dann schon etwas dauern (je nachdem wieviele Dienste eben laufen).

Du sagst "Backup"... Quelle oder Ziel? Das Backup wirst Du ja auf eine bestimmte Art und Weise vornehmen (via SMB/CIFS, rsync, etc.). Eine Möglichkeit wäre nun, ein Checker laufen zu lassen, der z.B. alle 5 Sekunden prüft, ob die entsprechenden Ports denn auch Rückmeldung geben. Wenn dem so ist, kann man dann davon ausgehen, dass der Dienst dahinter läuft und somit kann dann auch das Backup gestartet werden. Du könntest ggf. "nmap" dafür nutzen, was dann so aussehen sollte:

139/tcp open netbios-ssn
445/tcp open microsoft-ds

oder eben:

873/tcp open rsync

Kommt natürlich darauf an, was Du dann entsprechend wie sichern möchtest. Dieser Weg wäre aber deutlich praktikabler als der Ping-Test. Alternativ musst Du halt eine gewisse Kulanzzeit für das System reinräumen (z.B. +2 oder +5 Minuten). Da das ganze sowieso automatisiert ablaufen soll, sollten da auch 5 Minuten mehr oder weniger nicht groß stören, aber das bleibt ganz Dir überlassen :)
 

synfor

Benutzer
Sehr erfahren
Mitglied seit
22. Dez 2017
Beiträge
9.020
Punkte für Reaktionen
1.614
Punkte
308
Einen "akustischen" Sensor, denn das NAS piept, wenn es komplett hochgefahren ist :p
Selbst damit hat man keine Garantie, dass da zu diesem Zeitpunkt bereits alle bereitgestellten Dienste betriebsbereit sind.
 

_Joachim_

Benutzer
Mitglied seit
05. Jun 2016
Beiträge
62
Punkte für Reaktionen
0
Punkte
0
Aber mal ernsthaft - ist halt wie bei allem anderen auch - "ping" ist eine denkbar schlechte Idee, ...

Du sagst "Backup"... Quelle oder Ziel?
...
Kommt natürlich darauf an, was Du dann entsprechend wie sichern möchtest. Dieser Weg wäre aber deutlich praktikabler als der Ping-Test. Alternativ musst Du halt eine gewisse Kulanzzeit für das System reinräumen (z.B. +2 oder +5 Minuten). Da das ganze sowieso automatisiert ablaufen soll, sollten da auch 5 Minuten mehr oder weniger nicht groß stören, aber das bleibt ganz Dir überlassen :)

Danke für die Hinweise.

Dass 'ping' keine der besten Ideen war, hat sich im Laufe der DSM-Entwicklung gezeigt; Anfangs funktionierte es jedoch.

Unter 'Backup' habe ich ein Backup zum NAS verstanden, dass PC-seitig über Macrium Reflect läuft. Das für das Backup von Reflect erzeugte Script ist ideal geeignet, um weitere Funktionalitäten wie das Ein- oder Ausschalten des NAS, Logs o.ä. hinzuzufügen.

Was das Warten angeht: es ist, von einer Kleinigkeit abgesehen, überhaupt kein Problem ggf. auch einen Delay von 10 Minuten nach dem ersten 'ping' einzufügen. (Der beantwortete 'ping' dient daher eher zur Kontrolle des NAS-Starts.) Einzig meine Neugier und das Vermeiden 'unnötiger Wartezeiten' (bzw. nötige Korrekturen des 'Delay') haben zu meiner Frage geführt, wie denn Festzustellen sei, wann meine DS soweit hochgefahren sei, dass sie den Reflect-Backup-Job auch tatsächlich und sicher entgegennehmen kann.
 

blurrrr

Benutzer
Sehr erfahren
Mitglied seit
23. Jan 2012
Beiträge
6.204
Punkte für Reaktionen
1.104
Punkte
248
Na okay, wenn es Backup vom "PC" angestossen wird, ist die Warterei vielleicht doch etwas nervig (dachte da erst an NAS zu NAS oder sowas).

Wenn es danach geht, schau einfach mit NMAP (gibts auch als Windows-Version für die Eingabeaufforderung, was der Scripterei ja zugute kommen sollte) und frag die entsprechenden Ports ab. Wenn die dann den Status "open" haben, solltest Du eigentlich loslegen können. Die einfachste Abfrage wäre dann etwas á la "nmap -p 139,445 <NAS-IP>", Ausgabe sieht dann so aus:

Starting Nmap 5.51 ( http://nmap.org ) at 2018-03-08 19:19 Mitteleuropäische Zeit
Nmap scan report for XXX.XXX.XXX.XXX
Host is up (0.00011s latency).
PORT STATE SERVICE
139/tcp open netbios-ssn
445/tcp open microsoft-ds
MAC Address: 00:11:32:XX:XX:XX (Synology Incorporated)
Nmap done: 1 IP address (1 host up) scanned in 7.19 seconds

Da kannst Du Dir dann die beiden Zeilen rausgrabbeln und wenn da jeweils das "open" zu finden ist, sollte es hinhauen. :eek:
 

_Joachim_

Benutzer
Mitglied seit
05. Jun 2016
Beiträge
62
Punkte für Reaktionen
0
Punkte
0
Danke für die zusätzlichen Infos.
Ich bin mir derzeit noch nicht sicher, ob und wenn ja, ich welche Lösung angehen werde - ist im Grunde 'nur' Interesse und Hobby. Und derzeit spielt auch der Zeitfaktor eine Rolle.
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat