Prüfen, ob Diskstation bereit ist.

  • Ab sofort steht euch hier im Forum die neue Add-on Verwaltung zur Verfügung – eine zentrale Plattform für alles rund um Erweiterungen und Add-ons für den DSM.

    Damit haben wir einen Ort, an dem Lösungen von Nutzern mit der Community geteilt werden können. Über die Team Funktion können Projekte auch gemeinsam gepflegt werden.

    Was die Add-on Verwaltung kann und wie es funktioniert findet Ihr hier

    Hier geht es zu den Add-ons

Status
Für weitere Antworten geschlossen.

PommFriz

Benutzer
Registriert
06. Juni 2014
Beiträge
8
Reaktionspunkte
0
Punkte
0
Ich habe die DS213 und folgendes Problem:
Ich möchte auf meinem Host-Rechner ein Script erstellen, welches mit 'wakeonlan' die DS213 einschaltet.
Dann soll überprüft werden, ob die Diskstation bereit ist, damit sie dann automatisch gemountet werden kann.

Was mir zu meinem Glück fehlt, ist ein Kriterium, ob die DS bereit ist.
'ping' funktioniert nicht, da schon eine Antwort kommt bevor gemountet werden könnte.
Was kann ich denn überprüfen ?

Gruß
Andreas
 
Eigentlich sollte doch reichen, eine Schleife zu programmieren, die einen Mountversuch unternimmt und dann den exit-code zu prüfen. Hats nicht geklappt ein paar Sekunden schlafen und dann nächster Versuch, andernfalls bist Du fertig. Du solltest noch einen Zähler einbauen und die Versuche nach einer bestimmten Anzahl abbrechen, um eine mögliche Endlosschleife zu vermeiden. Ich kenne mich mit Windows Skriptprogrammierung nicht so gut aus, deshalb benutze ich Unix-Begriffe.
 
set Host=X.X.X.X
:start
ping %Host% -n 0
IF ERRORLEVEL 0 GOTO okay
IF NOT ERRORLEVEL 0 GOTO end

:okay -->sollte ": okay" ohne leerzeichen sein. Aber forum macht hier mist.
Net use irgendwas
:end

#Schnell zusammengeschraubt. Einfach noch anpassen...
 
Aber Du testest hier doch über ping. Der TO schreibt jedoch mit recht, dass ein Ping zu früh erfolgreich ist, Samba seine Shares zu dem Zeitpunkt aber noch nicht bereitstellen kann.
 
Hatte vergessen zu erwähnen:
Der Host ist auch Linux, kein Windoof!
 
Dann so:
#!/bin/bash
VAR=`ping -s 1 -c 2 desknas > /dev/null; echo $?`

if [ $VAR -eq 0 ]; then
echo "NAS BOX is up - Mounting NAS Share"
mount /mnt/NAS | echo "NAS Mounted Successfully"
fi

if [ $VAR -gt 0 ]; then
wakeonlan 00:xx:xx:xx:xx:xx | echo "NAS not turned on. WOL sent to NAS"
fi

sleep 6m
if [ $VAR -eq 0 ]; then
echo "NAS is UP - Mounting NAS Share"
mount /mnt/NAS | echo "NAS Mounted Successfully"
fi

http://stackoverflow.com/questions/...ned-on-then-start-rsync-if-not-then-wol-and-t
 
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