Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Ausführen von Befehlen mit exec

    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

    Ausführen von Befehlen mit exec

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

      @Nas007 said in Ausführen von Befehlen mit exec:

      Habt ihr eine Idee?!

      Unzureichende Berechtigungen zur Ausführung vvielleicht?
      Welche Berechtigungen unter welchem User hat das Skript?

      N AlCalzone 2 Replies Last reply Reply Quote 0
      • N
        Nas007 @hans_999 last edited by

        @hans_999 das könnte eine Idee sein. Leider steck ich nicht gnaz so tief in der Materie.

        Wie kann ich das kontrollieren?

        1 Reply Last reply Reply Quote 0
        • TeNNo2k5
          TeNNo2k5 last edited by

          Lege die Variablen so wie im Screenshot zu sehen an, dann bekommst du die Informationen im log

          6e2dd800-0cc1-4829-9c76-7b2b884d1a3c-grafik.png

          Der Befehl wird aber vermutlich vom iobroker User abgesetzt, und diesem fehlen die nötigen Rechte.

          Du kannst aber auch einfach direkt Javascript benutzen, Wake on Lan ist im Javascript Adapter default mit dabei und aktiv einfach mal im Forum für Script Beispiele suchen.

          N 1 Reply Last reply Reply Quote 0
          • N
            Nas007 @TeNNo2k5 last edited by Nas007

            @TeNNo2k5 danke für den Tipp. Ich würde es gerne so umsetzen.

            Das hier kam raus:

            javascript.0	2020-03-07 17:00:36.825	warn	(10083) script.js.common.Sonstiges.tet_wol2: {'killed':false,'code':1,'signal':null,'cmd':'sudo etherwake -i eth0 00:08:9B:E5:8A:BE'}
            javascript.0	2020-03-07 17:00:36.824	warn	(10083) script.js.common.Sonstiges.tet_wol2: Wir gehen davon aus, dass der lokale Systemadministrator Ihnen die Regeln erklärt hat. Normalerweise läuft es auf drei Regeln hinaus: #1) Respektier
            javascript.0	2020-03-07 17:00:36.824	info	(10083) script.js.common.Sonstiges.tet_wol2: undefined
            javascript.0	2020-03-07 17:00:36.823	info	(10083) script.js.common.Sonstiges.tet_wol2: 
            

            Das hört sich so an, als ob die Berechtigung fehlen. Wie kann ich diese denn Zuweisen?

            1 Reply Last reply Reply Quote 0
            • Glasfaser
              Glasfaser @Nas007 last edited by

              @Nas007 sagte in Ausführen von Befehlen mit exec:

              etherwake

              Schau mal hier : Link Text

              N 1 Reply Last reply Reply Quote 0
              • TeNNo2k5
                TeNNo2k5 last edited by TeNNo2k5

                Der iobroker User ist bestimmt nicht ohne Grund Rechte Technisch eingeschränkt, ich würde da lieber nicht zu viel an den Rechten rumschrauben.

                Wenn ich raten soll denke ich das es am sudo liegt, wenn du unbedingt diese WOL Variante nutzen möchtest kannst du probieren mit visudo deinen Befehl für den iobroker User ohne Passwort Eingabe freizugeben: https://kofler.info/sudo-ohne-passwort/

                PS: Mit "whereis etherwake" bekomsmt du den kompletten Programmpfad..

                Edit: Während ich den Text verfasst habe, hat Glasfaser schon die Antwort verlinkt 😊, hatte wohl richtig geraten.

                1 Reply Last reply Reply Quote 0
                • N
                  Nas007 @Glasfaser last edited by Nas007

                  @Glasfaser und @TeNNo2k5
                  Vielen dank für die Hilfe.

                  @TeNNo2k5
                  Wie würde es denn per Blockly mit dem Wake on Lan ist im Javascript Adapter funktionieren. Ich habe da eben nichts gefunden beim suchen.

                  Ich habe jetzt das gefunden. Das Skript verwendet die mitgebrachte bib:
                  https://forum.iobroker.net/topic/8018/gelöst-wol-als-magicpaket-an-nas-per-blockly-script/13

                  Das hat als in java auch funktioniert.

                  Wie kann ich das denn in Blockly nachbauen? Mir fehlt bspw. diese require also Befehl.

                  paul53 1 Reply Last reply Reply Quote 0
                  • paul53
                    paul53 @Nas007 last edited by

                    @Nas007 sagte:

                    Wie würde es denn per Blockly mit dem Wake on Lan ist im Javascript Adapter funktionieren.

                    Die Funktion require('wake_on_lan') gibt es in Blockly nicht.

                    TeNNo2k5 1 Reply Last reply Reply Quote 0
                    • AlCalzone
                      AlCalzone Developer @hans_999 last edited by AlCalzone

                      @hans_999 sagte in Ausführen von Befehlen mit exec:

                      Welche Berechtigungen unter welchem User hat das Skript?

                      Das läuft als User iobroker. Wenn das Kommando auf der Kommandozeile root-Rechte benötigt, muss

                      1. der Befehl mittels sudo ausgeführt werden und
                      2. dem User erlaubt werden, etherwake als Root auszuführen.

                      Letzteres wurde hier im Forum schon mehrfach beschrieben, wie es geht.

                      Edit: mist, zu langsam 🦆

                      Glasfaser 1 Reply Last reply Reply Quote 0
                      • Glasfaser
                        Glasfaser @AlCalzone last edited by

                        @AlCalzone sagte in Ausführen von Befehlen mit exec:

                        Edit: mist, zu langsam 🦆

                        Echt süß die Ente 😎

                        1 Reply Last reply Reply Quote 0
                        • TeNNo2k5
                          TeNNo2k5 @paul53 last edited by TeNNo2k5

                          @paul53 sagte in Ausführen von Befehlen mit exec:

                          @Nas007 sagte:

                          Wie würde es denn per Blockly mit dem Wake on Lan ist im Javascript Adapter funktionieren.

                          Die Funktion require('wake_on_lan') gibt es in Blockly nicht.

                          Man könnte die wake on lan Funktion, per Javascript Funktions Block laden, aber es muss ja nicht immer alles zwingend via Blockly gelöst werden.

                          N 1 Reply Last reply Reply Quote 0
                          • N
                            Nas007 @TeNNo2k5 last edited by

                            @TeNNo2k5

                            Danke für den hinweis. Natürlich muss nicht alles in Blockly umgesetzt werden, aber mich hat interessiert wie man das umsetzen kann.

                            Hat funktioniert. Vielen Dank an alle!

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

                            Support us

                            ioBroker
                            Community Adapters
                            Donate

                            404
                            Online

                            31.8k
                            Users

                            80.0k
                            Topics

                            1.3m
                            Posts

                            blockly javascript
                            6
                            13
                            1132
                            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