Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blockly - exec Befehl mit ssh

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    11
    1
    354

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.6k

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    9.5k

Blockly - exec Befehl mit ssh

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
33 Beiträge 7 Kommentatoren 6.3k Aufrufe 6 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • SegwayS Offline
    SegwayS Offline
    Segway
    schrieb am zuletzt editiert von
    #7

    Also mit den Einstellungen im Blockly sowie debug des javascript Adapters kommt das hier - lediglich die Warnung

    javascript.0	2019-01-23 14:55:00.186	info	script.js.UserDefined.Tests.Skript1:
    javascript.0	2019-01-23 14:55:00.186	info	script.js.UserDefined.Tests.Skript1: setForeignState(id=javascript.0.TestVar, state=0)
    javascript.0	2019-01-23 14:55:00.186	warn	at Process.ChildProcess._handle.onexit (internal/child_process.js:209:5)
    javascript.0	2019-01-23 14:55:00.186	warn	at maybeClose (internal/child_process.js:915:16)
    javascript.0	2019-01-23 14:55:00.186	warn	at ChildProcess.emit (events.js:214:7)
    javascript.0	2019-01-23 14:55:00.186	warn	at emitTwo (events.js:126:13)
    javascript.0	2019-01-23 14:55:00.186	warn	at ChildProcess.exithandler (child_process.js:288:5)
    javascript.0	2019-01-23 14:55:00.186	warn	at script.js.UserDefined.Tests.Skript1:6:7
    javascript.0	2019-01-23 14:55:00.185	warn	Wrong type of javascript.0.TestVar: "number". Please fix, while deprecated and will not work in next versions.
    javascript.0	2019-01-23 14:55:00.123	info	script.js.UserDefined.Tests.Skript1: exec: ssh dirk@192.168.40.6 cat /tmp/temp
    javascript.0	2019-01-23 14:54:37.100	info	script.js.UserDefined.Tests.Skript1: registered 0 subscriptions and 1 schedule
    javascript.0	2019-01-23 14:54:37.100	info	script.js.UserDefined.Tests.Skript1: schedule(cron=* * * * *)
    javascript.0	2019-01-23 14:54:37.100	info	Start javascript script.js.UserDefined.Tests.Skript1
    javascript.0	2019-01-23 14:54:35.179	info	Stop script script.js.UserDefined.Tests.Skript1
    javascript.0	2019-01-23 14:54:19.791	info	script.js.UserDefined.Tests.Skript1: registered 0 subscriptions and 1 schedule
    javascript.0	2019-01-23 14:54:19.790	info	script.js.UserDefined.Tests.Skript1: schedule(cron=* * * * *)
    javascript.0	2019-01-23 14:54:19.769	info	Start javascript script.js.UserDefined.Tests.Skript1
    

    Gruß Dirk
    Intel Proxmox Cluster (3x NUC) mit Debian & Proxmox / IoB als VM unter Debian / 60+ Adapter installiert

    1 Antwort Letzte Antwort
    0
    • paul53P Offline
      paul53P Offline
      paul53
      schrieb am zuletzt editiert von
      #8

      @Segway:

      javascript.0 2019-01-23 14:55:00.186 info script.js.UserDefined.Tests.Skript1:
      ```` `  
      

      Das ist offenbar das Log des Debug-Blocks: result liefert nichts.

      @Segway:

      javascript.0 2019-01-23 14:55:00.185 warn Wrong type of javascript.0.TestVar: "number". Please fix, while deprecated and will not work in next versions.
      ```` `  
      

      Der Datenpunkt "javascript.0.TestVar" sollte vom Typ "Zahl" ("number") sein.

      Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
      Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

      1 Antwort Letzte Antwort
      0
      • SegwayS Offline
        SegwayS Offline
        Segway
        schrieb am zuletzt editiert von
        #9

        Hallo Paul,

        das result anscheinend nichts liefert, dass weiß ich ja nur warum ist das so, wenn ich in der Konsole den Befehl eingebe und etwas wiederbekommen.

        Den Typ des Datenpunktes habe ich bereits geändert, aber hat nicht die erhoffte Lösung gebracht.

        Ich steh da voll auf dem Schlauch warum da nichts kommt ???

        Gruß Dirk
        Intel Proxmox Cluster (3x NUC) mit Debian & Proxmox / IoB als VM unter Debian / 60+ Adapter installiert

        1 Antwort Letzte Antwort
        0
        • paul53P Offline
          paul53P Offline
          paul53
          schrieb am zuletzt editiert von
          #10

          @Segway:

          warum da nichts kommt ??? `
          :?: Vielleicht liefern error, stderr die Antwort (Debug-Blöcke) ?

          Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
          Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

          1 Antwort Letzte Antwort
          0
          • SegwayS Offline
            SegwayS Offline
            Segway
            schrieb am zuletzt editiert von
            #11

            Ich habe mal auf error gestellt und siehe da:

            Host key verification failed
            

            Mhhh, User "dirk" und "root" ist definitiv eingetragen. Kann es sein dass über iobroker er mit einem anderen user kommt obwohl der Befehl ja mit dirk@ ist ???

            Gruß Dirk
            Intel Proxmox Cluster (3x NUC) mit Debian & Proxmox / IoB als VM unter Debian / 60+ Adapter installiert

            1 Antwort Letzte Antwort
            0
            • SegwayS Offline
              SegwayS Offline
              Segway
              schrieb am zuletzt editiert von
              #12

              Obwohl ich nochmal die Authentifizierung gemacht habe geht es nicht. Fehlermeldung:

              script.js.UserDefined.Tests.Skript1: Permission denied, please try again. Permission denied, please try again. Permission denied (publickey,password). 
              

              Gruß Dirk
              Intel Proxmox Cluster (3x NUC) mit Debian & Proxmox / IoB als VM unter Debian / 60+ Adapter installiert

              1 Antwort Letzte Antwort
              0
              • SegwayS Offline
                SegwayS Offline
                Segway
                schrieb am zuletzt editiert von
                #13

                @Segway:

                Mhhh, User "dirk" und "root" ist definitiv eingetragen. Kann es sein dass über iobroker er mit einem anderen user kommt obwohl der Befehl ja mit dirk@ ist ??? `

                Hier bräuchte ich einmal Hilfe.

                Wenn ich per exec Befehl im Blockly den ssh Befehl absetze, komme ich dann mit den angegebenen User auch rüber auf dem entfernten Rechner, so wie ich es über die Konsole auch machen würde, oder macht der javascript-Adapter "etwas anderes daraus", sprich ich komme mit dem user iobroker rüber oder wie auch immer ?

                Per Konsole geht es per root und username einwandfrei allerdings per Blockly NICHT !

                Ja, es ist ein Rechteproblem wohl, daher die Frage wie der Befehl letztendlich abgesetzt wird ?

                Gruß Dirk
                Intel Proxmox Cluster (3x NUC) mit Debian & Proxmox / IoB als VM unter Debian / 60+ Adapter installiert

                1 Antwort Letzte Antwort
                0
                • S Offline
                  S Offline
                  Smolo
                  schrieb am zuletzt editiert von
                  #14

                  Hallo,

                  hat jemand mittlerweile eine reproduzierbare Methode zum Ausführen eines Scripts aus ioBroker per ssh auf einen anderen Rechner hinbekommen? (Blocky oder JavaScript etc. ist egal wenigstens es funktioniert.

                  also sowas wie

                  ssh pi@x.x.x.x uptime ??

                  Ich hatte jetzt schon diverse Lösungen am Start aber nach einem Neuaufbau geht wieder mal gar nichts mehr :-(

                  AlCalzoneA 1 Antwort Letzte Antwort
                  0
                  • S Smolo

                    Hallo,

                    hat jemand mittlerweile eine reproduzierbare Methode zum Ausführen eines Scripts aus ioBroker per ssh auf einen anderen Rechner hinbekommen? (Blocky oder JavaScript etc. ist egal wenigstens es funktioniert.

                    also sowas wie

                    ssh pi@x.x.x.x uptime ??

                    Ich hatte jetzt schon diverse Lösungen am Start aber nach einem Neuaufbau geht wieder mal gar nichts mehr :-(

                    AlCalzoneA Offline
                    AlCalzoneA Offline
                    AlCalzone
                    Developer
                    schrieb am zuletzt editiert von
                    #15

                    @Smolo Es gibt das Paket node-ssh. Damit kannst du aus einem Skript heraus eine Verbindung mit Passwort oder Key herstellen und mehrere Befehle ausführen, Dateien kopieren etc.

                    Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                    1 Antwort Letzte Antwort
                    0
                    • E Offline
                      E Offline
                      el_malto
                      schrieb am zuletzt editiert von
                      #16

                      @Segway @Smolo warum macht ihr nicht den umgekehrten Weg und führt ein Skript auf den SSH Host aus und übergibt die Daten mit Hilfe des simple-api Adapters zu ioBroker?
                      Anonsten in anlehnung an @AlCalzone Vorschlag habe ich hier mal AlCalzone Skript benutzt um eine ssh Verbindung zum iPad aufzubauen. Vielleicht hilft das ja sonst auch weiter.

                      1 Antwort Letzte Antwort
                      1
                      • liv-in-skyL Offline
                        liv-in-skyL Offline
                        liv-in-sky
                        schrieb am zuletzt editiert von liv-in-sky
                        #17

                        wenn das fixer script gelaufen ist, muss man mit sudo arbeiten, damit z.b. ein exec() befehl läuft (indem ein ssh befehl ist) - damit das funktioniert muss im ordner /etc/sudoers.d ein neues file angelegt werden - name ist egal - und dies sieht dann folgendermaßen aus:

                        Image 9.png

                        damit lassen sich dann die befehle richtig ausführen
                        will man etwas mit root direkt im exec-blockly ausführen: sudo -u root .......

                        beispiel:

                        Image 10.png

                        hier noch ein wenig info in einem anderen thread:
                        https://forum.iobroker.net/topic/9405/offen-root-rechte-für-exec/33
                        https://forum.iobroker.net/post/269945

                        nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                        AlCalzoneA 1 Antwort Letzte Antwort
                        1
                        • liv-in-skyL liv-in-sky

                          wenn das fixer script gelaufen ist, muss man mit sudo arbeiten, damit z.b. ein exec() befehl läuft (indem ein ssh befehl ist) - damit das funktioniert muss im ordner /etc/sudoers.d ein neues file angelegt werden - name ist egal - und dies sieht dann folgendermaßen aus:

                          Image 9.png

                          damit lassen sich dann die befehle richtig ausführen
                          will man etwas mit root direkt im exec-blockly ausführen: sudo -u root .......

                          beispiel:

                          Image 10.png

                          hier noch ein wenig info in einem anderen thread:
                          https://forum.iobroker.net/topic/9405/offen-root-rechte-für-exec/33
                          https://forum.iobroker.net/post/269945

                          AlCalzoneA Offline
                          AlCalzoneA Offline
                          AlCalzone
                          Developer
                          schrieb am zuletzt editiert von
                          #18

                          @liv-in-sky sagte in Blockly - exec Befehl mit ssh:

                          damit z.b. ein exec() befehl läuft (indem ein ssh befehl ist)

                          Nur solche Befehle, die root-Rechte benötigen. Und dann bitte auch nur die Befehle die tatsächlich benötigt werden und nicht alles mögliche. swapfind ist für ssh z.B. nicht nötig ;)

                          Für SSH ist es tatsächlich unnötig, da man prima wie oben geschrieben auch mit verminderten Rechten SSH-Befehle absetzen kann.

                          Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                          liv-in-skyL MartinK.M 2 Antworten Letzte Antwort
                          0
                          • AlCalzoneA AlCalzone

                            @liv-in-sky sagte in Blockly - exec Befehl mit ssh:

                            damit z.b. ein exec() befehl läuft (indem ein ssh befehl ist)

                            Nur solche Befehle, die root-Rechte benötigen. Und dann bitte auch nur die Befehle die tatsächlich benötigt werden und nicht alles mögliche. swapfind ist für ssh z.B. nicht nötig ;)

                            Für SSH ist es tatsächlich unnötig, da man prima wie oben geschrieben auch mit verminderten Rechten SSH-Befehle absetzen kann.

                            liv-in-skyL Offline
                            liv-in-skyL Offline
                            liv-in-sky
                            schrieb am zuletzt editiert von
                            #19

                            @AlCalzone

                            swapfind ist ein bash datei - die alle laufenden processe als tabelle in die vis bringt - ohne root geht da garnichts

                            ssh - habe ich nicht getestet - da hast du wohl recht - um auf andere server zuzugreifen nutze ich auch bashscripts (kommt noch von früher - nutzen sshpass) - diese können tatsächlich ohne sudo oder root laufen

                            nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                            AlCalzoneA 1 Antwort Letzte Antwort
                            0
                            • liv-in-skyL liv-in-sky

                              @AlCalzone

                              swapfind ist ein bash datei - die alle laufenden processe als tabelle in die vis bringt - ohne root geht da garnichts

                              ssh - habe ich nicht getestet - da hast du wohl recht - um auf andere server zuzugreifen nutze ich auch bashscripts (kommt noch von früher - nutzen sshpass) - diese können tatsächlich ohne sudo oder root laufen

                              AlCalzoneA Offline
                              AlCalzoneA Offline
                              AlCalzone
                              Developer
                              schrieb am zuletzt editiert von
                              #20

                              @liv-in-sky Ich meinte das als Hinweis für alle die möglicherweise nur deine Datei abtippen.

                              Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                              liv-in-skyL 1 Antwort Letzte Antwort
                              0
                              • AlCalzoneA AlCalzone

                                @liv-in-sky Ich meinte das als Hinweis für alle die möglicherweise nur deine Datei abtippen.

                                liv-in-skyL Offline
                                liv-in-skyL Offline
                                liv-in-sky
                                schrieb am zuletzt editiert von
                                #21

                                @AlCalzone
                                ok - missverstanden - sorry

                                nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                                1 Antwort Letzte Antwort
                                0
                                • AlCalzoneA AlCalzone

                                  @liv-in-sky sagte in Blockly - exec Befehl mit ssh:

                                  damit z.b. ein exec() befehl läuft (indem ein ssh befehl ist)

                                  Nur solche Befehle, die root-Rechte benötigen. Und dann bitte auch nur die Befehle die tatsächlich benötigt werden und nicht alles mögliche. swapfind ist für ssh z.B. nicht nötig ;)

                                  Für SSH ist es tatsächlich unnötig, da man prima wie oben geschrieben auch mit verminderten Rechten SSH-Befehle absetzen kann.

                                  MartinK.M Offline
                                  MartinK.M Offline
                                  MartinK.
                                  schrieb am zuletzt editiert von
                                  #22

                                  @AlCalzone Hallo, ich habe da auch eine kurze Frage zum SSH Befehl über das Blockly -exec Modul ... Ich würde gerne meinen USB-Port vom Rasperry deaktivieren / aktivieren über folgenden SSH Befehl: sudo ./uhubctl -p 2 -a 0 -l 1-1....

                                  Das klappt auch super über die SSH-Konsole , aber wie muss der korrekte Befehl im Blockly - exec Block heißen? mit dem Konsolen Befehl klappt es leider nicht :-(

                                  ...konnte ich helfen ? Dann würde ich mich über ein Voting freuen ! (rechts unten)...

                                  AlCalzoneA 1 Antwort Letzte Antwort
                                  0
                                  • MartinK.M MartinK.

                                    @AlCalzone Hallo, ich habe da auch eine kurze Frage zum SSH Befehl über das Blockly -exec Modul ... Ich würde gerne meinen USB-Port vom Rasperry deaktivieren / aktivieren über folgenden SSH Befehl: sudo ./uhubctl -p 2 -a 0 -l 1-1....

                                    Das klappt auch super über die SSH-Konsole , aber wie muss der korrekte Befehl im Blockly - exec Block heißen? mit dem Konsolen Befehl klappt es leider nicht :-(

                                    AlCalzoneA Offline
                                    AlCalzoneA Offline
                                    AlCalzone
                                    Developer
                                    schrieb am zuletzt editiert von
                                    #23

                                    @MartinK Wie oben beschrieben, musst du diesen Befehl erst erlauben. Wie das geht, findest du im Forum zuhauf, wenn du nach sudoers suchst. Z.B. dieser Post https://forum.iobroker.net/post/356868

                                    Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                                    MartinK.M 3 Antworten Letzte Antwort
                                    0
                                    • AlCalzoneA AlCalzone

                                      @MartinK Wie oben beschrieben, musst du diesen Befehl erst erlauben. Wie das geht, findest du im Forum zuhauf, wenn du nach sudoers suchst. Z.B. dieser Post https://forum.iobroker.net/post/356868

                                      MartinK.M Offline
                                      MartinK.M Offline
                                      MartinK.
                                      schrieb am zuletzt editiert von
                                      #24

                                      @AlCalzone Vielen Dank für den Tip! :+1: aber leider habe ich irgendwo immer noch einen Fehler verbaut :-( .... Ich habe wie in der tollen Anleitung den Dateipfad - sogar die genauen Datei Variablen angegeben, (probeweise in der Original iobroker Datei)
                                      Bildschirmfoto 2020-01-26 um 18.03.20.png

                                      ioBroker anschließend neu gestartet ;-)

                                      aber leider wird der Befehl von exec in Blockly einfach nicht ausgeführt...
                                      Bildschirmfoto 2020-01-26 um 17.54.27.png
                                      Wenn ich den Befehl von der Konsole starte (egal in welchem Verzeichnis) klappt es :astonished: ... wo liegt denn mein Fehler ??

                                      ...konnte ich helfen ? Dann würde ich mich über ein Voting freuen ! (rechts unten)...

                                      AlCalzoneA 1 Antwort Letzte Antwort
                                      0
                                      • MartinK.M MartinK.

                                        @AlCalzone Vielen Dank für den Tip! :+1: aber leider habe ich irgendwo immer noch einen Fehler verbaut :-( .... Ich habe wie in der tollen Anleitung den Dateipfad - sogar die genauen Datei Variablen angegeben, (probeweise in der Original iobroker Datei)
                                        Bildschirmfoto 2020-01-26 um 18.03.20.png

                                        ioBroker anschließend neu gestartet ;-)

                                        aber leider wird der Befehl von exec in Blockly einfach nicht ausgeführt...
                                        Bildschirmfoto 2020-01-26 um 17.54.27.png
                                        Wenn ich den Befehl von der Konsole starte (egal in welchem Verzeichnis) klappt es :astonished: ... wo liegt denn mein Fehler ??

                                        AlCalzoneA Offline
                                        AlCalzoneA Offline
                                        AlCalzone
                                        Developer
                                        schrieb am zuletzt editiert von AlCalzone
                                        #25

                                        @MartinK Die Parameter würde ich in sudoers weglassen. Beim Befehl im Blockly fehlt jetzt ein sudo davor - auf der Konsole bist du ja schon root.

                                        Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                                        MartinK.M 1 Antwort Letzte Antwort
                                        0
                                        • AlCalzoneA AlCalzone

                                          @MartinK Die Parameter würde ich in sudoers weglassen. Beim Befehl im Blockly fehlt jetzt ein sudo davor - auf der Konsole bist du ja schon root.

                                          MartinK.M Offline
                                          MartinK.M Offline
                                          MartinK.
                                          schrieb am zuletzt editiert von
                                          #26

                                          @AlCalzone Suuuper ! Vielen Dank :grinning: Das war der Fehler!
                                          Ich bin da leider noch nicht so ganz fit in Sachen linux & co.... :wink:
                                          aber hier im Forum wird einem meist immer irgendwie geholfen :-) :+1:

                                          ...konnte ich helfen ? Dann würde ich mich über ein Voting freuen ! (rechts unten)...

                                          1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          350

                                          Online

                                          32.5k

                                          Benutzer

                                          81.8k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe