Raspberrys untereinander steuern

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • Hallo zusammen,
    ich hoffe das hier ist der passende Bereich.

    hätte nach langer Zeit des mitlesens jetzt auch mal eine Frage zu der ich nicht wirklich etwas im Forum oder bei Dr. Goggle gefunden habe.
    Und zwar habe ich bei mir zwei RPis im Einsatz, einer als NAS mit der ein oder anderen Spielerei (Funksteckdosen) und einen mit Raspian mit XBMC (zum testen ;))
    Folgende Situation:

    1. Pi soll immer laufen
    2. Pi nur bei Bedarf. Ein und Ausschalten wird per Funksteckdose realisiert.

    Zum vernünftigen Herunterfahren muss natürlich vorher der entsprechende Befehl gesendet werden.
    Also wäre mein Ziel per Android App (oder etwas ähnlichem) erst den Befehl an den einen Raspberry zu senden (shutdown) und dann nach einiger Zeit die Steckdose mittels des anderen Pis auszuschalten.
    Opimal sollte das natürlich von Nr. 1 machbar sein, dann bleibt alles auf einem Maschienchen.

    Eine evtl. passende Android App habe ich denke ich schon (Skript Kitty) dort kann man gespeicherte Skripte an verschiedene Pis schicken.

    Also ums kurz zu machen: Kann man von einem Pi einen Befehl an einen anderen Pi schicken, bzw kennt jemand eine andere Lösung.

    Vielen Dank für eure Hilfe!

  • beide PI empfangen das shutdown Kommando, nur der PI der runterfahren soll wertet den Befehl aus z.B.

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)

  • ja klar, aber frag mich nicht wie, bin PI script Linuxdoof, für den PC hatte ich mir mal ein warte_ms geschrieben in lcc32

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)

    • Offizieller Beitrag

    ja das geht, um die passwort abfrage zum umgehen würde ich mittels ssh-copy-id den ssh key des users root zwischen den beiden pi austauschen. ansonsten musst du jedes mal das pw eintippen, hinderlich bei nem script :)

    Aber das wäre ein anderes problem, ergo ein neuer Thread (oder vielleicht sogar ein FAQ artikel ;) )

  • Ich würde das über ein Webinterface auf dem 1. Raspberry regeln, das du dort einen Knopf hast um den 2.Raspberry Ein oder Aus zu schalten - das php Script übernimmt dann den Rest (erst den 2. PI herunterfahren und anschliesend nach zum Beispiel 2 Minuten die Steckdose abschalten)

    ...ich mach vieles übern Webserver, mag den einen oder anderen hier vielleicht schon nerven aber ich bin Bequem :D

    Ich kau dir das mal ein bischen vor, allerdings weiss ich nicht womit du die Steckdose schaltest also müsstest du das noch entsprechend ergänzen:

    Auf dem 1.RPI (MainPI) muss ein Webserver und php5 installiert sein, zum Beispiel apache2:

    Code
    apt-get install php5 apache2

    Ein php Script erstellen das du dann über dein Handy ansurfen kannst, ich nenn es mal Control.php, mit folgendem Inhalt:


    bash Script anlegen: nano /var/webscript.sh

    Dort wo ich jetzt die beiden echo "..hier dein code zum xxxschalten der Steckdose.." hab müsstest du wie gesagt noch anpassen (und die echo Zeilen löschen) sowie die beiden Variablen SSHpass sowie SSHhost aber ansonsten wars das eigentlich schon..

    Zum Testen einfach die IP des 1.Raspberrys ansurfen und das php Script aufrufen


    PS: das PHP Script hab ich nur flux zusammengeschustern aber nicht getestet..

  • Puh, danke ! Steuer die dosen mit ./send xxxxxxxxx aus dem raspberry remote ordner an. Dafuer gibt auch eine php seite. Werde ich heute abend mal testen. Danke !

    edit: klappt leider nicht. habe alle werte und orte angepasst und die befehle an sich funktionieren. werde wohl nochmal ein wenig experimentieren müssen :)

    Einmal editiert, zuletzt von drind (30. Oktober 2013 um 20:23)

  • Hi, sorry, hatte unerwartet wenig zeit zum testen. Leider schickt er weder einen befehl zum herunterfahren raus noch sendet er den befehl zum ausschalten der dose (eigentlich sudo ./send 10010 1 0)
    Kann aber leider nicht sehen, wo es haengt. Dein scipt sagt es waere ok. Passwort, ip, pfade... alles kontrolliert. Irgendeinen Tipp?

    Einmal editiert, zuletzt von drind (8. November 2013 um 20:11)

  • Poste doch mal bitte die Scripts so wie sie bei dir zzt sind...

    Ich hab nämlich auch keine Ahnung in welchem Pfad du dich befindest wenn du "sudo ./send 10010 1 0" ausführst - es fehlen mir also wichtige Details im dir ein fix und fertiges Script zu geben, du musst da schon noch ein bischen was selber anpasssen

  • hi,

    hier mal die control.php.
    habe den pfad vom skript angepasst, damit es direkt bei der fernsteuerung liegt


    und hier das skript, habe damit schon etwas gespielt, den shell exec hatte ich im netz gefunden:


    prinzipeill muss ich zum senden im remote ordner sein und dann mit "sudo ./send X" also dem jeweiligen dip code die dosen ansteuern.

    vielen dank für eure hilfe!

    Einmal editiert, zuletzt von drind (10. November 2013 um 17:17)

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!