Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Exec führt .py nicht aus

    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

    Exec führt .py nicht aus

    This topic has been deleted. Only users with topic management privileges can see it.
    • K
      kücken @mickym last edited by

      @mickym Ja der Haken ist gesetzt

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

        ioBroker läuft als Benutzer iobroker - jedenfalls bei mir.
        Ich nehme an der hat keine Berechtigungen auf den Pfad.

        1 Reply Last reply Reply Quote 0
        • Thomas Braun
          Thomas Braun Most Active @kücken last edited by

          @kücken

          Der user iobroker ist per sudoers eingeschränkt, außerhalb von /opt/iobroker darf der nicht viel.

          1 Reply Last reply Reply Quote 0
          • mickym
            mickym Most Active @kücken last edited by

            @kücken Woran merkst Du denn, dass das script nicht funktioniert? an der Ausgabe?

            Ich hab auf meinem System den iobroker in die Gruppe pi aufgenommen und ein test.py in Homeverzeichnis des pi installiert.

            Da ich mich mit Blockly zuwenig mit den Exec-Ausgaben auskenne - habe ich das mit NodeRed versucht und das funktioniert wunderbar:

            9f866676-d8bf-416e-a3e3-b23b6e5d26ba-image.png

            Also behaupte ich mal - dass es eigentlich keine Hindernisse auf Systemebene geben sollte - da auch der NodeRed Adapter unter dem Benutzer iobroker arbeitet.

            K A 2 Replies Last reply Reply Quote 0
            • K
              kücken @mickym last edited by kücken

              @BananaJoe @Thomas-Braun @mickym
              Das Blockly sieht so aus, falls das hilft:

              Bild_2021-04-14_190709.png

              'python /home/iobroker/led_strip.py' schaltet eine Lampe an, zumindest wenn es im Terminal des Raspberry ausgeführt wird. Über das Blockly funktioniert es allerdings nicht.

              Wenn ich stattdessen das ganze im Verzeichnis /home/opt/iobroker/led_strip.py ausführe, passiert trotzdem nichts. Muss ich dem Benutzer iobroker den Pfad zusätzlich freigeben?

              mickym 1 Reply Last reply Reply Quote 0
              • mickym
                mickym Most Active @kücken last edited by mickym

                @kücken Versuch doch mal im Terminalfenster - über die Shell mit dem iobroker User zu arbeiten.

                Geht es denn im Terminal - wenn Du

                sudo -su iobroker 
                python led_strip.py
                

                machst - nicht das der iobroker innerhalb des Skripts keine Berechtigung hat.

                Ich würde auch mal wie ich es gemacht haben ein Python skript mit einer simplen Ausgabe versuchen - damit Du siehst ob es ausgeführt wird und ob nicht nur der Befehl zum Schalten der Lampe in dem Skript nicht ausgeführt wird.

                1 Reply Last reply Reply Quote 0
                • M
                  Muhagl @kücken last edited by

                  @kücken Hi, evtl. den ganzen Pfad zu python angeben:
                  /usr/bin/python /home/pi/test.py
                  VG

                  J 1 Reply Last reply Reply Quote 0
                  • J
                    jack99n @Muhagl last edited by

                    Meine Python Skripte liegen unter /usr/local/bin/ und die kann ich ohne Probleme mit IoBroker ausführen.

                    1 Reply Last reply Reply Quote 0
                    • K
                      kücken last edited by

                      @mickym

                      Danke für den Tipp, tatsächlich kann ich das Skript als iobroker User im Terminal nicht ausführen.
                      Wie erteile ich denn die Berechtigung?

                      OliverIO 1 Reply Last reply Reply Quote 0
                      • OliverIO
                        OliverIO @kücken last edited by OliverIO

                        @kücken sagte in Exec führt .py nicht aus:

                        @mickym

                        Danke für den Tipp, tatsächlich kann ich das Skript als iobroker User im Terminal nicht ausführen.
                        Wie erteile ich denn die Berechtigung?

                        wie lautet den die Berechtigung deiner Datei.
                        In der Oktalnotation sollten die ersten beiden (von 3) Ziffern 7 lauten
                        Die mittlere 7 erlaubt auch Mitgliedern einer Gruppe das ausführen einer Datei
                        https://wiki.ubuntuusers.de/chmod/

                        1 Reply Last reply Reply Quote 0
                        • A
                          Amutep @mickym last edited by

                          @mickym

                          Hallo

                          sry das ich das thema nochmal raufhole aber ich habe auch ein Python Script welches ich im iobroker ausführen will.

                          Da ich absoluter noob bin und mir schon stunden um die ohren geschlagen habe muss ich nochmal fragen.

                          Ich nehme die Script Datei und kopiere sie über Putty von meinem PC in den Ordner auf dem Raspi
                          /home/pi/

                          und dann schreibe ich den Node Red Befehle so wie in deinem Bild ?

                          danke

                          mickym OliverIO 2 Replies Last reply Reply Quote 0
                          • mickym
                            mickym Most Active @Amutep last edited by

                            @amutep Nein nicht in das homeverzeichnis des pi, sondern in das homeverzeichnis des <Benutzers iobroker. Also in /home/iobroker

                            A 1 Reply Last reply Reply Quote 0
                            • OliverIO
                              OliverIO @Amutep last edited by OliverIO

                              @amutep

                              das ist sicherlich eine berechtigungssache
                              zum testen warum das nicht funktioniert kannst du folgendes tun
                              auf der console:

                              sudo -u iobroker bash
                              cd /opt/iobroker
                              

                              mit der ersten zeile wirst du zum user iobroker
                              mit der 2.zeile wechselst du in das stammverzeichnis von iobroker
                              als 3. kannst du dann deinen befehl eintippen zum starten des programms

                              • entweder darf oder sieht iobroker python nicht
                              • entweder darf oder sieht iobroker das skript nicht

                              ich tippe auf letzteres, aber das siehst du dann an der fehlermeldung

                              besser wäre das skript irgendwo in das verzeichnis von iobroker zu kopieren. bspw /opt/iobroker/pythonscripts
                              und dann den owner des skripts auf iobroker ändern mit chown

                              oder
                              der owner der datei bleibt bei dir dein user ist in der benutzergruppe iobroker und du passt die dateiattribute auf 775 an.

                              Nachtrag
                              Wenn ihr schon alte Threads wieder ausgrabt, warum lest ihr den dann nicht durch?

                              1 Reply Last reply Reply Quote 0
                              • A
                                Amutep @mickym last edited by

                                @mickym

                                ok dann versuch das mit meinem halbwissen mal zu bewerkstelligen

                                @OliverIO
                                auch dir danke, ich habe diesen thread ca 50x mal gelesen und wie ich geschrieben habe nur bahnhof verstanden und darum hab ich das thema nochmals ausgegraben...

                                habe zwar immer noch nicht alles verstanden aber learning by doing 😄

                                OliverIO 1 Reply Last reply Reply Quote 0
                                • OliverIO
                                  OliverIO @Amutep last edited by

                                  @amutep

                                  dann wäre es gut gewesen aufzuschreiben was du konkret nicht verstanden hast, bzw. wo es fehlermeldungen gegeben hat.

                                  der test auf der shell steht schon beschrieben und auch das thema mit den dateiattributen

                                  zum thema berechtigungen kannst du dir diesen artikel durchlesen
                                  https://wiki.ubuntuusers.de/Rechte/

                                  bei ubuntu nicht wundern, das passt zu 99% auch auf raspi, da beide betriebssysteme von debian abstammen

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

                                  Support us

                                  ioBroker
                                  Community Adapters
                                  Donate

                                  644
                                  Online

                                  31.9k
                                  Users

                                  80.1k
                                  Topics

                                  1.3m
                                  Posts

                                  blockly
                                  8
                                  17
                                  1544
                                  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