Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. Shutdown remote linux raspi

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Shutdown remote linux raspi

    This topic has been deleted. Only users with topic management privileges can see it.
    • R
      rupobk last edited by

      Ich versuche einen remoten raspi über ssh abzuschalten, und zwar mit folgendem Script:
      on({id: "0_userdata.0.schalter.OpenMediaVaultEin"/OpenMediaVaultEin/, change: "ne"}, async function (obj) {
      var value = obj.state.val;
      var oldValue = obj.oldState.val;
      if (getState("0_userdata.0.schalter.OpenMediaVaultEin").val) {
      console.debug("NAS RaspiOpenMediaVault eingeschalten!");
      setState("shelly.0.SHSW-1#8CAAB50558E3#1.Relay0.Switch"/[object Object]/, true);
      setState("0_userdata.0.schalter.OpenMediaVaultEin"/OpenMediaVaultEin/, true);
      } else {
      console.debug("NAS RaspiOpenMediaVault ausgeschalten!");
      console.debug("exec: " + "'ssh -t rupi@192.168.1.65 'sudo shutdown -h 0'");
      /exec('/opt/iobroker/script/shutdown_raspiomv.sh');/
      exec("ssh -t rupi@192.168.1.65 'sudo shutdown -h 0'");
      setStateDelayed("shelly.0.SHSW-1#8CAAB50558E3#1.Relay0.Switch"/[object Object]/, false, 30000, false);
      setState("0_userdata.0.schalter.OpenMediaVaultEin"/OpenMediaVaultEin/, false);
      }
      });

      Auf der Befehlszeile funktioniert der SSH-Befehl tadellos. Im Script wird interessanterweise nur der SetStateDelayed vom Shelly-Schalter ausgeführt u. der PC eiskalt ausgeschalten. Weder der console.debug, noch der exec-Befehl werden ausgeführt. Ich verstehe nicht warum. Kann mir da jemand helfen?

      mickym 1 Reply Last reply Reply Quote 0
      • mickym
        mickym Most Active @rupobk last edited by

        @rupobk 1. Musst Du die ssh keys im Homeverzeichnis des jeweiligen Users einrichten und 2. Wenn Dein Script läuft, läuft es mit dem User iobroker, wenn Du die Befehlszeile aufmachst mit dem User, mit dem Du Dich angemeldet hast. Du musst also den User iobroker auch auf dem Zielsystem die entsprechenden Rechte einrichten.

        1 Reply Last reply Reply Quote 0
        • First post
          Last post

        Support us

        ioBroker
        Community Adapters
        Donate

        597
        Online

        31.8k
        Users

        80.0k
        Topics

        1.3m
        Posts

        2
        2
        168
        Loading More Posts
        • Oldest to Newest
        • Newest to Oldest
        • Most Votes
        Reply
        • Reply as topic
        Log in to reply
        Community
        Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
        The ioBroker Community 2014-2023
        logo