Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. ioBroker und exec an Raspbian "kill -SIGSTOP"

    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

    ioBroker und exec an Raspbian "kill -SIGSTOP"

    This topic has been deleted. Only users with topic management privileges can see it.
    • liv-in-sky
      liv-in-sky @e-i-k-e last edited by

      @e-i-k-e

      kommt darauf an, wie iobroker installiert ist - oder auch ob das fixer.sh installiert wurde

      hatte auch problem - vielleicht hilft das weiter

      https://forum.iobroker.net/post/269945

      1 Reply Last reply Reply Quote 1
      • liv-in-sky
        liv-in-sky @e-i-k-e last edited by

        @e-i-k-e

        bei mir wurde iobroker mit root installiert - exec() (iobroker) wurde aber wegen des fixer.sh scripts mit dem user iobroker ausgeführt - da meine befehle aber den root brauchten, funktionierte es nicht - aber es gab eine lösung dafür - siehe post vorher

        1 Reply Last reply Reply Quote 1
        • E
          e-i-k-e last edited by

          vielen Dank @liv-in-sky !

          Iobroker wurde damals als root installiert, den fixer habe ich in der Vergangenheit ausführen müssen.

          Habe ich es richtig verstanden, dass ich einfach nur "sudo -u root" vor meinem Befehl eintragen muss?

          liv-in-sky 1 Reply Last reply Reply Quote 0
          • liv-in-sky
            liv-in-sky @e-i-k-e last edited by

            @e-i-k-e nee - nicht ganz

            du must den befehl sozusagen freigeben - unter /etc/sudoers.d muss ein eintrag dazu gemacht werden

            unter https://forum.iobroker.net/post/270742 - habe ich es noch kurz beschrieben

            1 Reply Last reply Reply Quote 1
            • v522533
              v522533 last edited by

              kann mann nicht einfach su -c vor den befehl schreiben. sollte doch eigentlich auch funktionieren, oder? vorrausgesetzt man hat einen private key zur vermeidung der passwort eingabe eingerichtet.

              liv-in-sky 2 Replies Last reply Reply Quote 0
              • liv-in-sky
                liv-in-sky @v522533 last edited by

                @v522533

                weiß nicht was su -c macht - probiers mal und sag bescheid - evtl kurze anleitung /beispiel , falls funktioniert - können sicher andere auch gebrauchen

                v522533 1 Reply Last reply Reply Quote 0
                • liv-in-sky
                  liv-in-sky @v522533 last edited by

                  @v522533

                  zur sicherheit wollte ich es erwähnen (nehme an du weißt das eh)- bei meinem link geht es nur um den punkt zu a

                  der rest ist für dein thema unwichtig

                  1 Reply Last reply Reply Quote 0
                  • v522533
                    v522533 @liv-in-sky last edited by

                    @liv-in-sky

                    kurz zusammen gefasst: su -c führt einen einzelnen befehl eines users mit root rechten aus.
                    würde dann so aussehen:

                    su -c "ssh user@ip sudo reboot"
                    

                    ich konnte es selber noch nicht testen, bin bei der arbeit. werde ich aber heute abend mal versuchen und berichten.

                    ich möchte den monitor von meinem magic mirror per aqara wlan switch an und ausschalten

                    liv-in-sky 1 Reply Last reply Reply Quote 0
                    • liv-in-sky
                      liv-in-sky @v522533 last edited by liv-in-sky

                      @v522533

                      am gerät ist immer besser

                      aber sieh dir heute abend mal das file iobroker in diesem verzeichnis an - dann wird es schnell klar

                      nur zum verständnis: dein befehl geht über ssh zu sich selbst und benötigt dann den private key -dein blockly oben benutzt ja kein ssh ! - sondern du sendest es an den iobroker server selbst mit dem exec blockly
                      wenn du aber auf ein anderes gerät zugreifen willst würde auch sshpass funktionieren - ohne zertifikat mit passwort (unsicher)

                      /usr/bin/sshpass -p 'xxxx' ssh -oStrictHostKeyChecking=no root@192.168.178.10 'systemctl start shutdownschlafen'
                      

                      eigentlich sollte der ssh befehl lokal auch ohne sudo funktionieren (also mit dem iobroker user , der braucht doch kein root) - da brauchsrt du ja nur die rechte auf dem anderen gerät

                      v522533 1 Reply Last reply Reply Quote 0
                      • v522533
                        v522533 @liv-in-sky last edited by v522533

                        @liv-in-sky

                        nur kurz klarstellung: ich bin nicht der thread ersteller, habe mich nur eingeklinkt, weil ich ähnliches vorhabe...

                        ich habe vor den monitor von meinem magic mirror mit einem aqara wlanswitch an- und auszuschalten. dafür muss ich von meinem iobroker (rock64) auf meinem pi mit magic mirror per exec einen befehl ausführen.

                        ich habe mir nur gedacht dass meine lösung vielleicht auch dem te helfen könnte, sofern sie denn funktioniert 😉

                        liv-in-sky 1 Reply Last reply Reply Quote 0
                        • liv-in-sky
                          liv-in-sky @v522533 last edited by liv-in-sky

                          @v522533 sorry - verzeih meine verwirrtheit

                          dann ist ja eh alles klar

                          die lösung wäre auf jeden fall interessant

                          1 Reply Last reply Reply Quote 0
                          • E
                            e-i-k-e last edited by e-i-k-e

                            Wenn ich heute Abend die Zeit dazu finde, werde ich beide Varianten testen. 👍
                            Berichte euch.

                            1 Reply Last reply Reply Quote 0
                            • E
                              e-i-k-e last edited by e-i-k-e

                              Also mit su -c funktioniert es nicht.

                              Mit der Version von @liv-in-sky haut es noch nicht richtig hin. Wo liegt mein Fehler? 😕

                              1.JPG

                              2.JPG

                              3.JPG

                              liv-in-sky 1 Reply Last reply Reply Quote 0
                              • liv-in-sky
                                liv-in-sky @e-i-k-e last edited by

                                @e-i-k-e wenn du im exec-blockly das "mit ereignis" auswählst und eine variable erstellst - mit dem namen result - kanns t du besser debuggen - im log steht dann die antwort

                                Image 1.png

                                ich sehe jetzt auf anhieb keinen fehler

                                existiert die pid (die kann sich auch ändern)

                                E 1 Reply Last reply Reply Quote 0
                                • E
                                  e-i-k-e @liv-in-sky last edited by

                                  Werde ich testen.
                                  Die PID existieren.

                                  Schade des es noch nicht funktioniert.

                                  liv-in-sky 1 Reply Last reply Reply Quote 0
                                  • liv-in-sky
                                    liv-in-sky @e-i-k-e last edited by

                                    @e-i-k-e das wird schon noch 🙂

                                    der eintrag für das sudoers file:

                                    iobroker ALL=(ALL) NOPASSWD: /bin/kill
                                    

                                    sollte so aussehen - sorry mein fehler-

                                    versuch es damit mal

                                    1 Reply Last reply Reply Quote 0
                                    • E
                                      e-i-k-e last edited by e-i-k-e

                                      Guten Morgen,

                                      vielen Dank!
                                      Leider werden die Befehle weiterhin nicht ausgeführt. 😲


                                      Scheint doch zu funktionieren! 👍
                                      Diesmal hat sich die PID geändert. Gibt es eine alternative zum PID?

                                      liv-in-sky 1 Reply Last reply Reply Quote 0
                                      • liv-in-sky
                                        liv-in-sky @e-i-k-e last edited by

                                        @e-i-k-e

                                        du könntest die pid vorher auslesen (exec) mit dem ergebnis (result) dann arbeiten - du kannst ja mit dem

                                        probier doch mal

                                        pgrep 
                                        

                                        Image 1.png

                                        dieses beispiel sucht nach der pid meines bash-scriptes (dlnafind)

                                        Image 3.png

                                        1 Reply Last reply Reply Quote 0
                                        • E
                                          e-i-k-e last edited by e-i-k-e

                                          @liv-in-sky

                                          Vielen Dank!
                                          Ich habe nun folgenden (für mich einfachere) Lösung.

                                          • sudo -u root pkill -SIGSTOP "name des prozesses"
                                          • sudo -u root pkill -SIGCONT "name des prozesses"

                                          Funktioniert bestens. ☺

                                          liv-in-sky 1 Reply Last reply Reply Quote 0
                                          • liv-in-sky
                                            liv-in-sky @e-i-k-e last edited by

                                            @e-i-k-e
                                            ich arbeite nach der devise:
                                            -warum einfach, wenn es auch kompliziert geht 🙂

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            521
                                            Online

                                            31.8k
                                            Users

                                            79.9k
                                            Topics

                                            1.3m
                                            Posts

                                            blockly communication javascript
                                            3
                                            21
                                            1324
                                            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