eMail bei USV-Einsatz

Status
Für weitere Antworten geschlossen.

SHCSHC

Benutzer
Mitglied seit
12. Feb 2009
Beiträge
191
Punkte für Reaktionen
7
Punkte
24
Hallo,

ich nutze eine DS-408 zusammen mit der USV APC CS650. Beides funktioniert sehr gut zusammen.

Für den Protokollversand habe ich auch die eMail-Funktion eingerichtet, dadurch erhalte ich z.B. eine Nachricht bei erfolgreichen Backupaktionen.

Im Protokoll habe ich nun entdeckt, dass die USV desöfteren angesprungen ist - offenbar haben wir öfters Stromschwankungen im Haus. Da ich tagsüber nicht da bin, habe ich das nicht bemerkt.

Kann ich mir eine eMail schicken lassen, sobald die USV genutzt wird? Ich finde hierfür keine Einstellungsmöglichkeit.


Vielen Dank für Eure Hilfe,
Christian
 

toppen

Benutzer
Mitglied seit
05. Jan 2010
Beiträge
87
Punkte für Reaktionen
0
Punkte
0
Hallo! Hast Du bezüglich Deiner Frage mittlerweile eine Lösung gefunden? Sowas suche ich nämlich auch.
 

SHCSHC

Benutzer
Mitglied seit
12. Feb 2009
Beiträge
191
Punkte für Reaktionen
7
Punkte
24
Nein, leider nicht.

SHC
 

Trolli

Benutzer
Mitglied seit
12. Jul 2007
Beiträge
9.848
Punkte für Reaktionen
1
Punkte
0
Schickt doch solche Vorschläge mal direkt an Synology. Die haben eigentlich immer ein offenes Ohr für solche Sachen.
 

toppen

Benutzer
Mitglied seit
05. Jan 2010
Beiträge
87
Punkte für Reaktionen
0
Punkte
0
In Englisch? - Hilfe!
Und an welche Adresse?
 

itari

Benutzer
Mitglied seit
15. Mai 2008
Beiträge
21.900
Punkte für Reaktionen
14
Punkte
0

SHCSHC

Benutzer
Mitglied seit
12. Feb 2009
Beiträge
191
Punkte für Reaktionen
7
Punkte
24
ich auch ;-)

sie wollen die Anfrage prüfen und evtl. in ein späteres Firmware-Update übernehmen.


SHC
 

meeshaa

Benutzer
Mitglied seit
23. Mai 2010
Beiträge
5
Punkte für Reaktionen
0
Punkte
0
Hallo zusammen.

Ich arbeite bei APC, falls ich euch von unserer Seite helfen kann. Wir haben z.B. ein kleines Test-Lab, an das Synology Anlagen schicken kann, um die Kompatibilität zu dokumentieren.

Gruß
meeshaa
 

Matthieu

Benutzer
Mitglied seit
03. Nov 2008
Beiträge
13.222
Punkte für Reaktionen
88
Punkte
344
Vielleicht lässt sich ja in die Runlevel-Skripte was einbauen? Oder in den deamon der das überwacht?
(setzt allerdings voraus das ihr euch ein wenig mit der Kommandozeile auseinandersetzt)

MfG Matthieu
 

itari

Benutzer
Mitglied seit
15. Mai 2008
Beiträge
21.900
Punkte für Reaktionen
14
Punkte
0
Hallo zusammen.

Ich arbeite bei APC, falls ich euch von unserer Seite helfen kann. Wir haben z.B. ein kleines Test-Lab, an das Synology Anlagen schicken kann, um die Kompatibilität zu dokumentieren.

Gruß
meeshaa

Dies ist sehr nett. Leider gibt es hier im Forum keine Synology-Mitarbeiter - ist ja ein reines Community-Forum. So kann diese Anregung nicht aufgenommen werden. Besser wäre, wenn du diese Möglichkeit im internationalen Synology-Forum posten würdest; dort wird mitgelesen ... ;)

Itari
 

meeshaa

Benutzer
Mitglied seit
23. Mai 2010
Beiträge
5
Punkte für Reaktionen
0
Punkte
0
...geht klar! ;-)

@Matthieu: unsere Software wird zentral entwickelt, außerhalb unserer bescheidenen Landesgrenzen. Die Jungs sind fit, aber ich denke, dass die Kommunikation in dieser Konstellation von der DS kommen muß. Ist die USV mit dem PC verbunden, geht das ja.

meeshaa
 

Matthieu

Benutzer
Mitglied seit
03. Nov 2008
Beiträge
13.222
Punkte für Reaktionen
88
Punkte
344
...geht klar! ;-)

@Matthieu: unsere Software wird zentral entwickelt, außerhalb unserer bescheidenen Landesgrenzen. Die Jungs sind fit, aber ich denke, dass die Kommunikation in dieser Konstellation von der DS kommen muß. Ist die USV mit dem PC verbunden, geht das ja.
Ja ich weiß, war auch eher an die beiden Fragesteller gerichtet. Die DS bemerkt ja auch sobald sich der "Zustand" ändert. Und wenn man dort eine kleine Zeile einbaut, dann wäre das mit der Mail bestimmt machbar. Aber es ist halt nicht sehr einfach weil man etwas tiefer ins System muss.

MfG Matthieu
 

toppen

Benutzer
Mitglied seit
05. Jan 2010
Beiträge
87
Punkte für Reaktionen
0
Punkte
0
Bei "nicht sehr einfach" scheide ich aus :-(
 

SHCSHC

Benutzer
Mitglied seit
12. Feb 2009
Beiträge
191
Punkte für Reaktionen
7
Punkte
24
Ich ebenfalls .... ;-)

SHC
 

sschnake

Benutzer
Mitglied seit
06. Aug 2010
Beiträge
12
Punkte für Reaktionen
0
Punkte
0
Hallo Zusammen.
Ich suche auch nach einer Möglichkeit wie mich meine DS210j auf einen Stromausfall aufmerksam macht.
In der /usr/syno/bin/synoups
habe ich was von upssafemode und anderem gelesen.

Aber wo sollte ich den nun Mailfunktion einbauen? Geht das mit einer php Datei?

Gruß Stefan
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
Das Problem hierbei dürfte der SafeMode sein. Sobald die DS im SafeMode ist, hat sie keine Möglichkeit mehr per Mail irgendwas zu verschicken (der Dienst läuft ja nicht mehr und alle Datenvolumes sind ausgehängt).
Es würde dann wohl nur beim anschliessenden Reboot gehen, dass man eine Mail verschickt. Ob die DS nach dem Reboot aber noch "weiss", dass sie einen Stromausfall hatte, weiss ich auch ned ;)
 

sschnake

Benutzer
Mitglied seit
06. Aug 2010
Beiträge
12
Punkte für Reaktionen
0
Punkte
0
Bei dem Aufruf der Funktion werden du dienste ja erst abgeschaltet. Im das maß zu testen, wie kann ich denn aus einem script eine php Datei ausfuhren lassen?
Geht das mit wget?
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
Geht das mit wget?
Ginge auch mit wget. Allerdings ist das imho ein Overkill ein lokales Script via http aufzurufen.
Die DS hat den php Interpreter bereits mit in der Firmware. Du kannst also ein Script z.B. so ausführen
Code:
/usr/bin/php /path/to/file.php
mit dem Pfad zum Interpreter bin ich ned ganz sicher. Den findest du allerdings schnell mit
Code:
which php
oder du legst das php File schon folgendermassen an
Code:
#!/usr/bin/php

<?php
echo 'Hallo Welt';
?>
und machst es mittels chmod +x ausführbar. Dann kannst du das Script auch ohne Angabe des Interpreters direkt aus einem Shellscript aufrufen
 

sschnake

Benutzer
Mitglied seit
06. Aug 2010
Beiträge
12
Punkte für Reaktionen
0
Punkte
0
Script ausführen per ./sriptname.php geht nun.
Jetzt bin ich mir aber doch nicht sicher wo ich es am besten einbaue.
Ich habe den haken bei "USV herunterfahren, wenn das System in den Sicheren Modus geht." nicht gesetzt, da meine FritBox noch bis Batterieende in betrieb bleiben soll.
Hier mal der code der /usr/syno/bin/synoups
Rich (BBCode):
DiskStation> cat /usr/syno/bin/synoups
#!/bin/sh
# Copyright (c) 2008-2009 Synology Inc. All rights reserved.

if [ "x$1" = "x" -o "x$1" = "x-h" ]; then
        echo "Copyright (c) 2008-2009 Synology Inc. All rights reserved."
        echo "Usage: `basename $0` { online | lowbatt | nocomm | fsd }"
        exit
fi

UPSMaster=`/bin/get_key_value /etc/synoinfo.conf upsmaster`
case "${UPSMaster}" in
[Yy][Ee][Ss])
        UPSMaster=1
        EnabledKey="ups_enabled"
        UPSMonServer="localhost"
        ;;
*)
        UPSMaster=0
        EnabledKey="upsslave_enabled"
        UPSMonServer=`/bin/get_key_value /etc/synoinfo.conf upsslave_server`
        if [ "x$UPSMonServer" = "x" ]; then
                UPSMonServer="localhost"
        fi
        ;;
esac

UPSEnabled=`/bin/get_key_value /etc/synoinfo.conf ${EnabledKey}`
case "$UPSEnabled" in
[Yy][Ee][Ss])
        ;;
*)
        echo "UPS is not enable."
        exit
        ;;
esac

UPSSafeShutdown=`/bin/get_key_value /etc/synoinfo.conf ups_safeshutdown`
case "${UPSSafeShutdown}" in
[Nn][Oo])
        UPSSafeShutdown=0;;
*)
        UPSSafeShutdown=1;;
esac

SZF_SAFEMODE="/tmp/ups.safedown"

SYSLOG() {
        logger -p user.err -t synoups "$1"
}

UPSStatusGet() {
        ups_stat=`/usr/syno/bin/upsc ups@${UPSMonServer} ups.status 2>/dev/null`
        if [ $? -ne 0 ]; then
                echo "ERR"
                return 255
        fi
        for status in $ups_stat ; do
                case "$status" in
                "OL"|"OB"|"LB")
                        echo "$status"
                        return
                        ;;
                esac
        done
        echo "ERR"
}

UPSShutdown() {
        if [ $UPSMaster -ne 1 ]; then
                echo "Slave waits for safe shutdown" >> $SZF_SAFEMODE
                touch /.NormalShutdown
                SYSLOG "UPS waits for safe shutdown."
                return
        fi
        OL=0
        LB=0
        while [ $OL -ne 2 -a $LB -ne 2 ]; do
                sleep 10
                St=`UPSStatusGet`
                if [ "$St" = "OL" ]; then
                        OL=`expr $OL + 1`
                        LB=0
                else
                        LB=`expr $LB + 1`
                        OL=0
                fi
                echo "OL=$OL LB=$LB" >> $SZF_SAFEMODE
        done
        if [ $OL -eq 2 ]; then
                synologset1 sys warn 0x11300012
                echo "UPS back to On-Line and reboot." >> $SZF_SAFEMODE
                reboot
        elif [ $LB -eq 2 ]; then
                touch /.NormalShutdown
                if [ $UPSSafeShutdown -eq 0 ]; then
                        echo "Waiting UPS exhausted." >> $SZF_SAFEMODE
                        SYSLOG "Waiting UPS exhausted."
                else
                        echo "UPS safe shutdown." >> $SZF_SAFEMODE
                        SYSLOG "UPS safe shutdown."
                        killall upssched
                        killall upsmon
                        killall upsd
                        /usr/syno/bin/upsdrvctl stop
                        /usr/syno/bin/upsdrvctl shutdown
                fi
        fi
}

UPSSafeMode() {
        if [ -f $SZF_SAFEMODE ]; then
                return
        fi
        St=`UPSStatusGet`
        if [ "$St" = "OL" ]; then
                echo "WARNING: UPS is On-Line"
                return
        fi
        echo "$1" > $SZF_SAFEMODE

        synologset1 sys warn 0x11300011
        SYSLOG "UPS going to stop all services and umount all volumes."

        killall -9 mplayer
        loop=0
        while [ $loop -lt 5 ]; do
                mplayer_pids=`pidof mplayer`
                if [ $? -ne 0 ]; then
                        break
                fi
                for pid in $mplayer_pids ; do
                        kill -9 $pid
                done
                loop=`expr $loop + 1`
        done

        for s in `ls /usr/local/etc/rc.d/*`; do
                $s stop > /dev/null 2>&1
        done
        for s in `ls /usr/syno/etc/rc.d/S*.sh | sort -r`; do
                case "`basename $s`" in
                S02hotplugd.sh)
                        ;;
                *)
                        $s stop > /dev/null 2>&1
                        ;;
                esac
        done

        for v in `grep volume /proc/mounts | awk '{print $2}'`; do
                umount -f $v
        done

        echo "7" > /dev/ttyS1
        sync; sync; sync;

        echo "Stop all services and umount all volumes" >> $SZF_SAFEMODE
        UPSShutdown
}

UPSRestart() {
        if [ ! -f $SZF_SAFEMODE ]; then
                return
        fi
        echo "UPS back on-line, so wait to reboot" >> $SZF_SAFEMODE
        sleep 30
        St=`UPSStatusGet`
        if [ "$St" = "OL" ]; then
                synologset1 sys warn 0x11300012
                SYSLOG "UPS back to On-Line and reboot."
                reboot
        fi
}

case "$1" in
online)
        UPSRestart
        ;;
lowbatt | nocomm)
        UPSSafeMode $1
        ;;
fsd)
        /usr/syno/sbin/upsmon -c fsd
        UPSSafeMode $1
        ;;
esac

Ich dachte erst hier
Rich (BBCode):
SYSLOG "UPS going to stop all services and umount all volumes."

aber ich denke das wird nur ausgelöst, wenn die USV (UPS) in den safe mode geht. Außerdem wäre es ja gut wenn die Mail gesendet wird, sobald der Strom weg ist, und nicht erst wenn die Diskstation runterfährt.
 
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