DS herunterfahren wenn kein Client mehr vorhanden

AndiHeitzer

Benutzer
Mitglied seit
30. Jun 2015
Beiträge
2.750
Punkte für Reaktionen
305
Punkte
129
Ort
Markt Schwaben
Ich würde in der "S99zzcustomstart.sh" auch den Pfad zu "autoshutdown.sh" hineinschreiben.
Also etwa "/usr/bin/autoshutdown.sh" ...

Das wäre so meine Schnapsidee dazu.
 

dil88

Benutzer
Mitglied seit
03. Sep 2012
Beiträge
28.577
Punkte für Reaktionen
3
Punkte
644
Wäre auch mein erster Gedanke. Alternativ die PATH-Variable definieren - z.B. so:

Rich (BBCode):
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/syno/bin:/usr/syno/sbin
 

idotadoteumel

Benutzer
Mitglied seit
29. Sep 2013
Beiträge
10
Punkte für Reaktionen
0
Punkte
0
Danke für die Tipps.
S99zzcustomstart.sh mit Pfadangabe kann ich erst heute Abend testen...

Gesten hab ich jedoch versucht die autoshutdown.sh zu starten. Fehlermeldung:
Screenshot_20160825-014326_01.jpg
 

dil88

Benutzer
Mitglied seit
03. Sep 2012
Beiträge
28.577
Punkte für Reaktionen
3
Punkte
644
Vielleicht kannst Du nochmal das komplette Skript posten. Achte darauf, dass Unix-Zeilenenden verwendet werden.
 

PsychoHH

Benutzer
Mitglied seit
03. Jul 2013
Beiträge
2.967
Punkte für Reaktionen
2
Punkte
78
Warum nicht das Script im Aufgabenplaner schreiben? Klappt 1a.

Alternativ kann man auch advanced power Manager nutzen.
 

dil88

Benutzer
Mitglied seit
03. Sep 2012
Beiträge
28.577
Punkte für Reaktionen
3
Punkte
644
Habe bei diesem Ticket eigentlich auch als erstes an den APM gedacht. Warum nutzt Du den nicht? Der läßt sich auch so konfigurieren, dass er nach aktiven Share-Verbindungen schaut ...
 

idotadoteumel

Benutzer
Mitglied seit
29. Sep 2013
Beiträge
10
Punkte für Reaktionen
0
Punkte
0
Vielleicht kannst Du nochmal das komplette Skript posten. Achte darauf, dass Unix-Zeilenenden verwendet werden.

Rich (BBCode):
Zaehler=0
while expr $Zaehler \< 8; do # Nach Zaehler angeben wie viele erfolglose Pings zum Shutdown fuehren.
RET1=$(ping -c 1 192.168.2.21 | tail -1 | awk '{print $7}') # Rechner 1
RET2=$(ping -c 1 192.168.2.23 | tail -1 | awk '{print $7}') # Rechner 2
if [ "$RET1" = "100%" -a "$RET2" = "100%" ] ; then Zaehler=`expr $Zaehler + 1` ; else Zaehler=0 ; fi
sleep 9 #Wartezeit zwischen den Pings in Sekunden
done
poweroff
Habe bei diesem Ticket eigentlich auch als erstes an den APM gedacht. Warum nutzt Du den nicht? Der läßt sich auch so konfigurieren, dass er nach aktiven Share-Verbindungen schaut ...
Kann ich mir ja mal anschauen.
Aber das ändert ja nichts daran das die andere Methode auch klappen muss...
 

dil88

Benutzer
Mitglied seit
03. Sep 2012
Beiträge
28.577
Punkte für Reaktionen
3
Punkte
644
Das Skript hat keinen Shebang (#!/bin/sh) und nur 8 Zeilen ...
 

idotadoteumel

Benutzer
Mitglied seit
29. Sep 2013
Beiträge
10
Punkte für Reaktionen
0
Punkte
0
Ich hab jetzt erstmal den Code wie folgt angepasst.
autoshutdown.sh
Rich (BBCode):
#!/bin/sh
Zaehler=0
while expr $Zaehler \< 8; do # Nach Zaehler angeben wie viele erfolglose Pings zum Shutdown fuehren.
RET1=$(ping -c 1 192.168.2.21 | tail -1 | awk '{print $7}') # Rechner 1
RET2=$(ping -c 1 192.168.2.23 | tail -1 | awk '{print $7}') # Rechner 2
if [ "$RET1" = "100%" -a "$RET2" = "100%" ] ; then Zaehler=`expr $Zaehler + 1` ; else Zaehler=0 ; fi
sleep 9 #Wartezeit zwischen den Pings in Sekunden
done
poweroff
S99zzcustomstart.sh
Rich (BBCode):
/usr/bin/autoshutdown.sh &
Weiterhin werde ich die Dateien auf dem NAS löschen und neu kopieren um sicher zu gehen das die Datei auch den aktuellen Inhalt hat.
 

PsychoHH

Benutzer
Mitglied seit
03. Jul 2013
Beiträge
2.967
Punkte für Reaktionen
2
Punkte
78
Seit DSM 6 gab es bei mir direkt Probleme mit Startscripten, weswegen ich alle einfach als ausgelöste Aktion (hochfahren) im Aufgabenplaner eingetragen habe.

Das funktioniert sehr gut als alternative.
 

idotadoteumel

Benutzer
Mitglied seit
29. Sep 2013
Beiträge
10
Punkte für Reaktionen
0
Punkte
0
@PsychoHH
Ja wie gesagt ich werde es mir APM mal ansehen.

Unabhängig von dem Startscript hat ja auch das manuelle Ausführen von autoshutdown.sh mit dem Befehl:
"sh /usr/bin/autoshutdown.sh" nicht geklappt.
(siehe Bild Post #223)
 

AndiHeitzer

Benutzer
Mitglied seit
30. Jun 2015
Beiträge
2.750
Punkte für Reaktionen
305
Punkte
129
Ort
Markt Schwaben
Unabhängig von dem Startscript hat ja auch das manuelle Ausführen von autoshutdown.sh mit dem Befehl:
"sh /usr/bin/autoshutdown.sh" nicht geklappt.
(siehe Bild Post #223)

Du hast aber die Antwort drauf (#224) beherzigt?
 

idotadoteumel

Benutzer
Mitglied seit
29. Sep 2013
Beiträge
10
Punkte für Reaktionen
0
Punkte
0
Habe die Dateien mit dem Code ergänzt und von DOS auf UNIX umgewandelt.
Testen kann ich leider erst heute Abend.
Werden die alten Dateien löschen und dann nochmal neu kopieren.

OT: Danke für den tollen Support hier!
 

idotadoteumel

Benutzer
Mitglied seit
29. Sep 2013
Beiträge
10
Punkte für Reaktionen
0
Punkte
0
Test leider nicht erfolgreich.

autoshutdown.jpg

Rich (BBCode):
#!/bin/sh
Zaehler=0
while expr $Zaehler \< 8; do # Nach Zaehler angeben wie viele erfolglose Pings zum Shutdown fuehren.
RET1=$(ping -c 1 192.168.2.21 | tail -1 | awk '{print $7}') # Rechner 1
RET2=$(ping -c 1 192.168.2.23 | tail -1 | awk '{print $7}') # Rechner 2
if [ "$RET1" = "100%" -a "$RET2" = "100%" ] ; then Zaehler=`expr $Zaehler + 1` ; else Zaehler=0 ; fi
sleep 9 #Wartezeit zwischen den Pings in Sekunden
done
poweroff

Datei mit Unixzeilenende
 

PsychoHH

Benutzer
Mitglied seit
03. Jul 2013
Beiträge
2.967
Punkte für Reaktionen
2
Punkte
78
Bau mal ein echo ein und Check die Rechte
 

idotadoteumel

Benutzer
Mitglied seit
29. Sep 2013
Beiträge
10
Punkte für Reaktionen
0
Punkte
0
Habe mir den APM etwas näher angesehen.
Vom Prinzip her würde er meine Anforderungen erfüllen. Jedoch funktioniert die Host-Funktion nicht.

Was mache ich falsch?

Zeitplan.JPG
Host.jpg
Startseite.JPG

Der Vollständigkeit halber: Ja einer der IP's war an. Die DS fährt trotzdem zu dem entsprechenden Zeitpunkt herunter.
Was mich irritiert ist das unter Hosts auf der Startseite keine Zeit für die nächste Überprüfung angegeben wird!?
 
Zuletzt bearbeitet:

dil88

Benutzer
Mitglied seit
03. Sep 2012
Beiträge
28.577
Punkte für Reaktionen
3
Punkte
644
Schaue ich mir bei Gelegenheit einmal bei mir an. Ich benutze die Funktion "Verbindungen", die gut funktioniert. Vielleicht kannst Du die (übergangsweise) einmal ausprobieren.
 

PsychoHH

Benutzer
Mitglied seit
03. Jul 2013
Beiträge
2.967
Punkte für Reaktionen
2
Punkte
78
Auf Port 9 gibt es ja eh keine Antwort. Würde dann 7 probieren, geht 80 im LAN? kA.
Der Befehl ping selbst hat glaub ich eh keine Angabe von Port, wahrscheinlich wird dort was anderes genutzt.


Vielleicht liegt es auch daran, dass du "Port" kleingeschrieben hast?

Aber eigentlich dürfte es langen, wenn du ICMP nutzt und die IP Adressen einträgst.


Bei mir selbst nutze ich aber auch den Reiter Verbindungen.
 

idotadoteumel

Benutzer
Mitglied seit
29. Sep 2013
Beiträge
10
Punkte für Reaktionen
0
Punkte
0
Habe auch bereits Port 7 probiert, sowie ohne Portangabe.
Habe Port groß geschrieben -> APM hat es automatisch klein geschrieben.
 

roedelkroete

Benutzer
Mitglied seit
09. Nov 2020
Beiträge
3
Punkte für Reaktionen
0
Punkte
1
Sorry das ich etwas abschweife..
Ich habe ein UPS (Makelsan LION X SER?S 1500KVA ) , leider gibt es hier nicht die riesige Auswahl in meiner Gegend.
Diese wird weder vom iMac noch vom Synology DS920 erkannt. Unter Windows, war dies jedoch möglich.

Mein Gedanke ist, vielleicht gibt es ja eine Möglichkeit doch gebrauch vom UPS zu machen, zb. das Die Synology automatisiert herunterfährt falls kein Internet für 1-2 Minuten da ist, weil kein Strom = Kein Internet. Vielleicht kann man dieses script ja anpassen?
 
NAS-Central - Ihr Partner für NAS Lösungen