FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: cornelius fillmore am 29 August 2015, 10:39:01

Titel: Befehl zu shtudown eines Raspi senden
Beitrag von: cornelius fillmore am 29 August 2015, 10:39:01
Hallo Forum,
ich habe folgende Aufgabenstellung.
Ich möchte bei der Ausschalten eines Receiver einen Rasperry Pi via Befehl zum Herunterfahren bringen und dann nach sicherem shutdown, die Stromversorung abstellen.

Hat das schon mal jemand reaslisiert.

Anmerkungen und Ideen willkommen.
Titel: Antw:Befehl zu shtudown eines Raspi senden
Beitrag von: Knallfrosch am 29 August 2015, 11:49:07
Hallo,

was meinst du mit "Stromversorgung" abstellen?

Läuft FHEM auf dem Raspberry den du runterfahren willst?


Grüße
Titel: Antw:Befehl zu shtudown eines Raspi senden
Beitrag von: DieterL am 29 August 2015, 13:26:13
sollte kein problem sein, der befehl zum sicheren herunterfahren lautet : {system('sudo shutdown -h 0');;}
Titel: Antw:Befehl zu shtudown eines Raspi senden
Beitrag von: Doggiebert am 29 August 2015, 13:51:47
Ich habe so ein Setup:
1 FHEM-Raspi, und ein separater Kodi-Raspi für die Musik, der an einer Schaltsteckdose hängt.

Meine simple Lösung: beide raspis sind der Einfachhalber gleich aufgesetzt, d.h. auf dem Kodi-Raspi ist auch FHEM und darüber ist auch der Shutdown fernsteuerbar.

Der Ablauf auf dem Haupt-FHEM-Raspi:
1. Befehl an den Kodi-Raspi zum Shutdown schicken (z.B. per FHEM2FHEM)
2. der Kodi-Raspi wird per PRESENCE überwacht (notify), d.h. wenn sich der Kodi-Raspi als absent meldet, schalte ich den Strom weg.

Ist das sowas, wie's Dir vorschwebt? Bei mir ist's noch etwas ausgefeilter, ich hab einen Dummy-Button, der mir auch den jeweiligen Gesamtstatus anzeigt (Up, Down, Upping, Downing), da kann man sich beliebig spielen...
Titel: Antw:Befehl zu shtudown eines Raspi senden
Beitrag von: Tom111 am 29 August 2015, 14:42:37
Das klappt ganz gut mit folgendem Befehl:

define RPi_System dummy
attr RPi_System eventMap on:reboot off:halt
attr RPi_System webCmd reboot:halt
define Pi_reboot_Notify notify RPi_System { if (( Value("RPi_System") eq "reboot")) { system("sudo reboot")}}
define Pi_halt_Notify notify RPi_System { if (( Value("RPi_System") eq "halt")) { system("sudo halt")}}


Folgende Einträge müssen aber noch in der Datei etc/sudoers hinzugefügt werden :

# User privilege specification
fhem    ALL=NOPASSWD:/sbin/halt, /sbin/reboot


Gruß
Tom
Titel: Antw:Befehl zu shtudown eines Raspi senden
Beitrag von: Hollo am 29 August 2015, 14:49:28
Wozu dafür extra eine zusätzliche FHEM-Instanz?

Per ssh mit dem anderen Rechner verbinden und dann shutdown absetzen.
Wenn man die Password-Abfrage umgehen will, muss man den entsprechenden Key hinterlegen.

Gleichzeitig ein 2-Minuten-at anlegen oder bei presence einen watchdog zum Ausschalten der entsprechenden Funksteckdose.
Titel: Antw:Befehl zu shtudown eines Raspi senden
Beitrag von: cornelius fillmore am 30 August 2015, 11:50:47
Zitat von: Hollo am 29 August 2015, 14:49:28
Wozu dafür extra eine zusätzliche FHEM-Instanz?

Per ssh mit dem anderen Rechner verbinden und dann shutdown absetzen.
Wenn man die Password-Abfrage umgehen will, muss man den entsprechenden Key hinterlegen.

Gleichzeitig ein 2-Minuten-at anlegen oder bei presence einen watchdog zum Ausschalten der entsprechenden Funksteckdose.
Hallo Hollo, vielen Dank für die Antwort.

Kannst du mir für diese Lösung den fhem.cfg Ausschnitt zeigen?
Titel: Antw:Befehl zu shtudown eines Raspi senden
Beitrag von: Doggiebert am 30 August 2015, 12:27:54
Zitat von: Hollo am 29 August 2015, 14:49:28
Wozu dafür extra eine zusätzliche FHEM-Instanz?
wohl wahr, wenn es nur um den Shutdown geht, gibt's natürlich andere Lösungen. Das mit dem ssh-Key ist etwas Gefrickle, aber da finden sich im Internet genügend Anleitungen.
Titel: Antw:Befehl zu shtudown eines Raspi senden
Beitrag von: cornelius fillmore am 01 September 2015, 13:23:00
Hollo?
Titel: Antw:Befehl zu shtudown eines Raspi senden
Beitrag von: volschin am 01 September 2015, 13:46:51
Zitat von: Doggiebert am 30 August 2015, 12:27:54
da finden sich im Internet genügend Anleitungen.
Titel: Antw:Befehl zu shtudown eines Raspi senden
Beitrag von: Hollo am 01 September 2015, 23:06:34
Zitat von: cornelius fillmore am 30 August 2015, 11:50:47
Hallo Hollo, vielen Dank für die Antwort.

Kannst du mir für diese Lösung den fhem.cfg Ausschnitt zeigen?
Nicht direkt... ;D
Ich nutze sowas in der Art auf meinem Linux-Server, damit der automatisch das Backups-System per WakeOnLan startet, sich dann per ssh verbindet und per rsync die Daten synchronisiert. Anschliessend wird die Kiste dann wieder runtergefahren. Das passiert aber alles in einem Bash-Script.

Aber ich hab mal für Dich die Suche benutzt...
http://forum.fhem.de/index.php/topic,34905.msg272198.html#msg272198 (http://forum.fhem.de/index.php/topic,34905.msg272198.html#msg272198)
http://linux.robert-scheck.de/software/ssh-key/ (http://linux.robert-scheck.de/software/ssh-key/)
Titel: Antw:Befehl zu shtudown eines Raspi senden
Beitrag von: beSmart am 02 September 2015, 21:30:18
Hallo.

Ich häng mich hier mal mit rein.

Ich möchte meinen Raspberry auch per Tastendruck herunterfahren. Der Taster hängt an einem MCP23017 und soweit ist alles eingerichtet und funktioniert.
Allerdings möchte ich, das der raspberry erst heruntergefahren wird, wenn der Taster länger als 3 Sekunden gedrückt wird.
Wie muss ich die 3 Sekunden Verzögerung in das Notify einbauen? Sleep bringt mich ja nicht weiter...


Gruß
beSmart
Titel: Antw:Befehl zu shtudown eines Raspi senden
Beitrag von: cornelius fillmore am 03 September 2015, 09:02:07
Zitat von: Hollo am 01 September 2015, 23:06:34
s-System per WakeOnLan startet, sich dann per ssh verbindet und per rsync die Daten synchronisiert. Anschliessend wird die Kiste dann wieder runtergefahren. Das passiert aber alles in einem Bash-Script.

Aber ich hab mal für Dich die Suche benutzt...
http://forum.fhem.de/index.php/topic,34905.msg272198.html#msg272198 (http://forum.fhem.de/index.php/topic,34905.msg272198.html#msg272198)
http://linux.robert-scheck.de/software/ssh-key/ (http://linux.robert-scheck.de/software/ssh-key/)

thx
Titel: Antw:Befehl zu shtudown eines Raspi senden
Beitrag von: Otto123 am 04 September 2015, 09:33:02
Zitat von: beSmart am 02 September 2015, 21:30:18
Ich möchte meinen Raspberry auch per Tastendruck herunterfahren. Der Taster hängt an einem MCP23017 und soweit ist alles eingerichtet und funktioniert.
Allerdings möchte ich, das der raspberry erst heruntergefahren wird, wenn der Taster länger als 3 Sekunden gedrückt wird.
Wie muss ich die 3 Sekunden Verzögerung in das Notify einbauen? Sleep bringt mich ja nicht weiter...
Ich weiß nicht ganz Deine Frage, aber ich mache das so: http://www.forum-raspberrypi.de/Thread-tutorial-hoch-und-runterfahren-mittels-taster-incl-status-led

Zu Deiner eigentlichen Frage: DOIF kennt Wait und Doppelbetätigung. Du müsstest aber ein "long press" erkennen. Dein Taster müsste also echt den Status ändern und Du müsstetst in in einer Schleife drei sekunden abfragen ob er immer gedrückt ist.

Gruß Otto