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
  5. [gelöst] Befehl als root ausführen oder Rechte ändern?

NEWS

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.5k

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

[gelöst] Befehl als root ausführen oder Rechte ändern?

Geplant Angeheftet Gesperrt Verschoben Blockly
49 Beiträge 7 Kommentatoren 5.8k Aufrufe 4 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.
  • HomoranH Homoran

    @waterchill sagte in Befehl als root ausführen oder Rechte ändern?:

    schaut alles nach ` aus

    und das ist IMHO falsch

    F Offline
    F Offline
    fastfoot
    schrieb am zuletzt editiert von
    #18

    @homoran sagte in Befehl als root ausführen oder Rechte ändern?:

    und das ist IMHO falsch

    für dich zum Lernen :-)

    root@iobroker:/opt/iobroker# export test=/bin/bash                                                                                                                                                                                                          
    root@iobroker:/opt/iobroker# echo basename $test                                                                                                                                                                                                            
    basename /bin/bash                                                                                                                                                                                                                                          
    root@iobroker:/opt/iobroker# echo 'basename $test'                                                                                                                                                                                                          
    basename $test                                                                                                                                                                                                                                              
    root@iobroker:/opt/iobroker# echo `basename $test`                                                                                                                                                                                                          
    bash                                                                                                                                                                                                                                                        
    root@iobroker:/opt/iobroker#              
    

    iobroker läuft unter Docker auf QNAP TS-451+
    SkriptRecovery: https://forum.iobroker.net/post/930558

    HomoranH 1 Antwort Letzte Antwort
    1
    • F fastfoot

      @homoran sagte in Befehl als root ausführen oder Rechte ändern?:

      und das ist IMHO falsch

      für dich zum Lernen :-)

      root@iobroker:/opt/iobroker# export test=/bin/bash                                                                                                                                                                                                          
      root@iobroker:/opt/iobroker# echo basename $test                                                                                                                                                                                                            
      basename /bin/bash                                                                                                                                                                                                                                          
      root@iobroker:/opt/iobroker# echo 'basename $test'                                                                                                                                                                                                          
      basename $test                                                                                                                                                                                                                                              
      root@iobroker:/opt/iobroker# echo `basename $test`                                                                                                                                                                                                          
      bash                                                                                                                                                                                                                                                        
      root@iobroker:/opt/iobroker#              
      
      HomoranH Nicht stören
      HomoranH Nicht stören
      Homoran
      Global Moderator Administrators
      schrieb am zuletzt editiert von Homoran
      #19

      @fastfoot sagte in Befehl als root ausführen oder Rechte ändern?:

      für dich zum Lernen

      Danke!
      :thinking_face:

      aber das mit dem kill wäre dann:

      pi@raspberrypi:/opt/iobroker $ echo basename `test`
      basename
      

      kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

      Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

      der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

      F 1 Antwort Letzte Antwort
      0
      • Dr. BakteriusD Dr. Bakterius

        @waterchill sagte in Befehl als root ausführen oder Rechte ändern?:

        ich möchte eben nur das Skript zu einer bestimmten Zeit ausführen lassen.

        Und warum dann über ioBroker und nicht per cron?

        W Offline
        W Offline
        waterchill
        schrieb am zuletzt editiert von
        #20

        @dr-bakterius

        Bin ich grad dabei. Müsste dann so passen oder?

        */2 16-20 * * * sudo /etc/init.d/power_mqtt restart
        

        Jede zweite Minute von 16-20 Uhr täglich

        F Dr. BakteriusD 2 Antworten Letzte Antwort
        0
        • liv-in-skyL Offline
          liv-in-skyL Offline
          liv-in-sky
          schrieb am zuletzt editiert von
          #21

          was macxht dieses script überhaupt ? installiert das ein bash script als service ? oder lieg ich da falsch

          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

          W 1 Antwort Letzte Antwort
          0
          • HomoranH Homoran

            @fastfoot sagte in Befehl als root ausführen oder Rechte ändern?:

            für dich zum Lernen

            Danke!
            :thinking_face:

            aber das mit dem kill wäre dann:

            pi@raspberrypi:/opt/iobroker $ echo basename `test`
            basename
            
            F Offline
            F Offline
            fastfoot
            schrieb am zuletzt editiert von
            #22

            @homoran sagte in Befehl als root ausführen oder Rechte ändern?:

            aber das mit dem kill wäre dann:

            das was zwischen den ticks steht wird ausgeführt und das Ergebnis zurückgegeben. es wird also get_pid ausgeführt und gibt eine PID zurück. Die wird dann gekillt

            iobroker läuft unter Docker auf QNAP TS-451+
            SkriptRecovery: https://forum.iobroker.net/post/930558

            liv-in-skyL 1 Antwort Letzte Antwort
            0
            • F fastfoot

              @homoran sagte in Befehl als root ausführen oder Rechte ändern?:

              aber das mit dem kill wäre dann:

              das was zwischen den ticks steht wird ausgeführt und das Ergebnis zurückgegeben. es wird also get_pid ausgeführt und gibt eine PID zurück. Die wird dann gekillt

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

              @fastfoot aber dieses kill wird mit iobroker ausgeführt (wurde ja so bestimmt im script unter user) - der darf doch das nicht - da müßte kill in die sudoers datei für iobroker ?

              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
              • W waterchill

                @dr-bakterius

                Bin ich grad dabei. Müsste dann so passen oder?

                */2 16-20 * * * sudo /etc/init.d/power_mqtt restart
                

                Jede zweite Minute von 16-20 Uhr täglich

                F Offline
                F Offline
                fastfoot
                schrieb am zuletzt editiert von
                #24

                @waterchill der Ansatz mit sudoers war ja gar nicht so schlecht. Kannst du mal das Ergebnis von cat /etc/sudoers.d/iobroker posten?

                iobroker läuft unter Docker auf QNAP TS-451+
                SkriptRecovery: https://forum.iobroker.net/post/930558

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

                  was macxht dieses script überhaupt ? installiert das ein bash script als service ? oder lieg ich da falsch

                  W Offline
                  W Offline
                  waterchill
                  schrieb am zuletzt editiert von
                  #25

                  @liv-in-sky

                  Also Grundlegend geht es um folgendes. Das ganze liest über ANT+ aus einem Pulsmesser (Brustgurt) den Puls aus schiebt das in eine mqtt und dann rüber zum iobroker mqtt Server. Damit kann ich bei Rad Indoor übern Puls zwei Xiaomi Lüfter steuern. Je höher der Puls desto mehr Drehzahl. Das ganze läuft auch wunderbar, die Lüfter hab ich so eingestellt, dass pro 10 mehr Puls 10% mehr Speed. Der Haken an der Sache ist, manchmal hängt sich das Skript auf und dann friert er auf einer Herzfrequenzzahl ein z.B. 135 oder so. Dementsprechend laufen die Lüfter dann aber regeln nicht mehr. Abhilfe: Skript Restart. Das gleiche Spielchen beginnt vor dem Sport, man muss das Skript restarten, damit das läuft. Da hab ich mir gedacht warum nicht einfach alle 2 min von 16-20 das Skript automatisch restarten lassen. So braucht man nichts mehr machen. Scheinbar geht das irgendwie in einen Sleepmode oder sowas. Ändern sich die Herzfrequenz häufig z.B. bei einem Workout dass mal langsam und schnell geht hängt sich so gut wie nie auf. Anders schauts aus wenn man konstant mal ne Stunde fährt. Da isses häufiger. Ja perfekt is die Lösung nicht, aber mir fällt nichts anderes ein.

                  liv-in-skyL 1 Antwort Letzte Antwort
                  0
                  • W waterchill

                    @liv-in-sky

                    Also Grundlegend geht es um folgendes. Das ganze liest über ANT+ aus einem Pulsmesser (Brustgurt) den Puls aus schiebt das in eine mqtt und dann rüber zum iobroker mqtt Server. Damit kann ich bei Rad Indoor übern Puls zwei Xiaomi Lüfter steuern. Je höher der Puls desto mehr Drehzahl. Das ganze läuft auch wunderbar, die Lüfter hab ich so eingestellt, dass pro 10 mehr Puls 10% mehr Speed. Der Haken an der Sache ist, manchmal hängt sich das Skript auf und dann friert er auf einer Herzfrequenzzahl ein z.B. 135 oder so. Dementsprechend laufen die Lüfter dann aber regeln nicht mehr. Abhilfe: Skript Restart. Das gleiche Spielchen beginnt vor dem Sport, man muss das Skript restarten, damit das läuft. Da hab ich mir gedacht warum nicht einfach alle 2 min von 16-20 das Skript automatisch restarten lassen. So braucht man nichts mehr machen. Scheinbar geht das irgendwie in einen Sleepmode oder sowas. Ändern sich die Herzfrequenz häufig z.B. bei einem Workout dass mal langsam und schnell geht hängt sich so gut wie nie auf. Anders schauts aus wenn man konstant mal ne Stunde fährt. Da isses häufiger. Ja perfekt is die Lösung nicht, aber mir fällt nichts anderes ein.

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

                    @waterchill

                    interessant - könntest du dein script nicht als service installieren auf linux ebene - dann kannst du mit systemctl restart ... usw arbeiten

                    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
                    • F fastfoot

                      @waterchill der Ansatz mit sudoers war ja gar nicht so schlecht. Kannst du mal das Ergebnis von cat /etc/sudoers.d/iobroker posten?

                      W Offline
                      W Offline
                      waterchill
                      schrieb am zuletzt editiert von
                      #27

                      @fastfoot

                      Interessant, das Ergebnis ist wie folgt:

                      pi@raspberrypi:~ $ cat /etc/sudoers.d/iobroker
                      cat: /etc/sudoers.d/iobroker: Keine Berechtigung
                      

                      Ich habe folgendes Eingetragen:

                      # User privilege specification
                      root    ALL=(ALL:ALL) ALL
                      iobroker        ALL= /etc/init.d/power_mqtt
                      
                      F 1 Antwort Letzte Antwort
                      0
                      • W waterchill

                        @fastfoot

                        Interessant, das Ergebnis ist wie folgt:

                        pi@raspberrypi:~ $ cat /etc/sudoers.d/iobroker
                        cat: /etc/sudoers.d/iobroker: Keine Berechtigung
                        

                        Ich habe folgendes Eingetragen:

                        # User privilege specification
                        root    ALL=(ALL:ALL) ALL
                        iobroker        ALL= /etc/init.d/power_mqtt
                        
                        F Offline
                        F Offline
                        fastfoot
                        schrieb am zuletzt editiert von
                        #28

                        @waterchill sagte in Befehl als root ausführen oder Rechte ändern?:

                        @fastfoot

                        Interessant, das Ergebnis ist wie folgt:

                        pi@raspberrypi:~ $ cat /etc/sudoers.d/iobroker
                        cat: /etc/sudoers.d/iobroker: Keine Berechtigung
                        

                        Ich habe folgendes Eingetragen:

                        # User privilege specification
                        root    ALL=(ALL:ALL) ALL
                        iobroker        ALL= /etc/init.d/power_mqtt
                        

                        das sollte man so nicht machen, besser ist eine Datei anzulegen. probiere das cat mit sudo, es geht darum ob das file überhaupt schon existiert

                        iobroker läuft unter Docker auf QNAP TS-451+
                        SkriptRecovery: https://forum.iobroker.net/post/930558

                        W 1 Antwort Letzte Antwort
                        0
                        • F fastfoot

                          @waterchill sagte in Befehl als root ausführen oder Rechte ändern?:

                          @fastfoot

                          Interessant, das Ergebnis ist wie folgt:

                          pi@raspberrypi:~ $ cat /etc/sudoers.d/iobroker
                          cat: /etc/sudoers.d/iobroker: Keine Berechtigung
                          

                          Ich habe folgendes Eingetragen:

                          # User privilege specification
                          root    ALL=(ALL:ALL) ALL
                          iobroker        ALL= /etc/init.d/power_mqtt
                          

                          das sollte man so nicht machen, besser ist eine Datei anzulegen. probiere das cat mit sudo, es geht darum ob das file überhaupt schon existiert

                          W Offline
                          W Offline
                          waterchill
                          schrieb am zuletzt editiert von
                          #29

                          @fastfoot

                          pi@raspberrypi:~ $ sudo cat /etc/sudoers.d/iobroker
                          iobroker ALL=(ALL) ALL
                          iobroker ALL=(ALL) NOPASSWD: /sbin/shutdown
                          iobroker ALL=(ALL) NOPASSWD: /sbin/halt
                          iobroker ALL=(ALL) NOPASSWD: /sbin/poweroff
                          iobroker ALL=(ALL) NOPASSWD: /sbin/reboot
                          iobroker ALL=(ALL) NOPASSWD: /bin/systemctl start
                          iobroker ALL=(ALL) NOPASSWD: /bin/systemctl stop
                          iobroker ALL=(ALL) NOPASSWD: /bin/mount
                          iobroker ALL=(ALL) NOPASSWD: /bin/umount
                          iobroker ALL=(ALL) NOPASSWD: /usr/bin/systemd-run
                          iobroker ALL=(ALL) NOPASSWD: /usr/bin/apt-get
                          iobroker ALL=(ALL) NOPASSWD: /usr/bin/apt
                          iobroker ALL=(ALL) NOPASSWD: /usr/bin/dpkg
                          iobroker ALL=(ALL) NOPASSWD: /usr/bin/make
                          iobroker ALL=(ALL) NOPASSWD: /bin/ping
                          iobroker ALL=(ALL) NOPASSWD: /sbin/setcap
                          iobroker ALL=(ALL) NOPASSWD: /usr/bin/vcgencmd
                          iobroker ALL=(ALL) NOPASSWD: /bin/cat
                          iobroker ALL=(ALL) NOPASSWD: /bin/df
                          iobroker ALL=(ALL) NOPASSWD: /sbin/ldconfig
                          ALL ALL=NOPASSWD: /bin/systemctl start iobroker
                          ALL ALL=NOPASSWD: /bin/systemctl stop iobroker
                          ALL ALL=NOPASSWD: /bin/systemctl restart iobroker
                          ALL ALL=(iobroker) NOPASSWD: /usr/local/bin/node /opt/iobroker/node_modules/iobroker.js-controller/iobroker.js *
                          
                          F 1 Antwort Letzte Antwort
                          0
                          • W waterchill

                            @fastfoot

                            pi@raspberrypi:~ $ sudo cat /etc/sudoers.d/iobroker
                            iobroker ALL=(ALL) ALL
                            iobroker ALL=(ALL) NOPASSWD: /sbin/shutdown
                            iobroker ALL=(ALL) NOPASSWD: /sbin/halt
                            iobroker ALL=(ALL) NOPASSWD: /sbin/poweroff
                            iobroker ALL=(ALL) NOPASSWD: /sbin/reboot
                            iobroker ALL=(ALL) NOPASSWD: /bin/systemctl start
                            iobroker ALL=(ALL) NOPASSWD: /bin/systemctl stop
                            iobroker ALL=(ALL) NOPASSWD: /bin/mount
                            iobroker ALL=(ALL) NOPASSWD: /bin/umount
                            iobroker ALL=(ALL) NOPASSWD: /usr/bin/systemd-run
                            iobroker ALL=(ALL) NOPASSWD: /usr/bin/apt-get
                            iobroker ALL=(ALL) NOPASSWD: /usr/bin/apt
                            iobroker ALL=(ALL) NOPASSWD: /usr/bin/dpkg
                            iobroker ALL=(ALL) NOPASSWD: /usr/bin/make
                            iobroker ALL=(ALL) NOPASSWD: /bin/ping
                            iobroker ALL=(ALL) NOPASSWD: /sbin/setcap
                            iobroker ALL=(ALL) NOPASSWD: /usr/bin/vcgencmd
                            iobroker ALL=(ALL) NOPASSWD: /bin/cat
                            iobroker ALL=(ALL) NOPASSWD: /bin/df
                            iobroker ALL=(ALL) NOPASSWD: /sbin/ldconfig
                            ALL ALL=NOPASSWD: /bin/systemctl start iobroker
                            ALL ALL=NOPASSWD: /bin/systemctl stop iobroker
                            ALL ALL=NOPASSWD: /bin/systemctl restart iobroker
                            ALL ALL=(iobroker) NOPASSWD: /usr/local/bin/node /opt/iobroker/node_modules/iobroker.js-controller/iobroker.js *
                            
                            F Offline
                            F Offline
                            fastfoot
                            schrieb am zuletzt editiert von
                            #30

                            @waterchill sagte in Befehl als root ausführen oder Rechte ändern?:

                            @fastfoot

                            pi@raspberrypi:~ $ sudo cat /etc/sudoers.d/iobroker
                            iobroker ALL=(ALL) ALL
                            iobroker ALL=(ALL) NOPASSWD: /sbin/shutdown
                            iobroker ALL=(ALL) NOPASSWD: /sbin/halt
                            iobroker ALL=(ALL) NOPASSWD: /sbin/poweroff
                            iobroker ALL=(ALL) NOPASSWD: /sbin/reboot
                            iobroker ALL=(ALL) NOPASSWD: /bin/systemctl start
                            iobroker ALL=(ALL) NOPASSWD: /bin/systemctl stop
                            iobroker ALL=(ALL) NOPASSWD: /bin/mount
                            iobroker ALL=(ALL) NOPASSWD: /bin/umount
                            iobroker ALL=(ALL) NOPASSWD: /usr/bin/systemd-run
                            iobroker ALL=(ALL) NOPASSWD: /usr/bin/apt-get
                            iobroker ALL=(ALL) NOPASSWD: /usr/bin/apt
                            iobroker ALL=(ALL) NOPASSWD: /usr/bin/dpkg
                            iobroker ALL=(ALL) NOPASSWD: /usr/bin/make
                            iobroker ALL=(ALL) NOPASSWD: /bin/ping
                            iobroker ALL=(ALL) NOPASSWD: /sbin/setcap
                            iobroker ALL=(ALL) NOPASSWD: /usr/bin/vcgencmd
                            iobroker ALL=(ALL) NOPASSWD: /bin/cat
                            iobroker ALL=(ALL) NOPASSWD: /bin/df
                            iobroker ALL=(ALL) NOPASSWD: /sbin/ldconfig
                            ALL ALL=NOPASSWD: /bin/systemctl start iobroker
                            ALL ALL=NOPASSWD: /bin/systemctl stop iobroker
                            ALL ALL=NOPASSWD: /bin/systemctl restart iobroker
                            ALL ALL=(iobroker) NOPASSWD: /usr/local/bin/node /opt/iobroker/node_modules/iobroker.js-controller/iobroker.js *
                            

                            ok, sudo vi /etc/sudoers.d/iobroker

                            dort in die 2te Zeile: iobroker ALL=(ALL) NOPASSWD: /etc/init.d/power_mqtt *

                            vi beenden mit ESC-Taste, dann :wq!

                            aus Blockly rufst du jetzt das script mit sudo /etc/init.d/power_mqtt auf

                            die Änderungen in /etc/sudoers rückgängig machen!

                            iobroker läuft unter Docker auf QNAP TS-451+
                            SkriptRecovery: https://forum.iobroker.net/post/930558

                            W F 2 Antworten Letzte Antwort
                            0
                            • W waterchill

                              Moin,

                              ich kämpfe seit heute heute früh mit einem Problem. Ich möchte folgenden Befehl über blockly ausführen:

                              /etc/init.d/power_mqtt restart

                              Das Problem ist, der Befehl geht nur über sudo und sudo ist im Terminal nicht möglich. Habe folgendes versucht über ssh KOnsole des users pi:

                              sudo chmod -v 777 power_mqtt

                              -> kein Erfolg

                              dann:

                              sudo chown iobroker power_mqtt

                              -> kein Erfolg

                              dann:

                              sudo visudo /etc/sudoers

                              dort entsprechend eingetragen:

                              iobroker ALL= /etc/init.d/power_mqtt

                              -> kein Erfolg

                              Nun bin ich mit meinem Wissen am Ende. Hat jemand einen Tipp?

                              OliverIOO Offline
                              OliverIOO Offline
                              OliverIO
                              schrieb am zuletzt editiert von OliverIO
                              #31

                              @waterchill sagte in Befehl als root ausführen oder Rechte ändern?:

                              Moin,

                              ich kämpfe seit heute heute früh mit einem Problem. Ich möchte folgenden Befehl über blockly ausführen:

                              /etc/init.d/power_mqtt restart

                              Das Problem ist, der Befehl geht nur über sudo und sudo ist im Terminal nicht möglich. Habe folgendes versucht über ssh KOnsole des users pi:

                              sudo chmod -v 777 power_mqtt

                              -> kein Erfolg

                              dann:

                              sudo chown iobroker power_mqtt

                              -> kein Erfolg

                              dann:

                              sudo visudo /etc/sudoers

                              dort entsprechend eingetragen:

                              iobroker ALL= /etc/init.d/power_mqtt

                              -> kein Erfolg

                              Nun bin ich mit meinem Wissen am Ende. Hat jemand einen Tipp?

                              @waterchill

                              Ich glaube bei den sudoers hast du noch einen fehler
                              müsse es nicht so heissen:

                              iobroker ALL=(ALL) NOPASSWD: /etc/init.d/power_mqtt
                              

                              ob es funktioniert, kannst du selbst auf der shell testen, in dem du dich als
                              iobroker anmeldest mit

                              sudo -u iobroker bash
                              /etc/init.d/power_mqtt restart
                              

                              https://wiki.ubuntuusers.de/sudo/Konfiguration/

                              Meine Adapter und Widgets
                              TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                              Links im Profil

                              W 1 Antwort Letzte Antwort
                              0
                              • OliverIOO OliverIO

                                @waterchill sagte in Befehl als root ausführen oder Rechte ändern?:

                                Moin,

                                ich kämpfe seit heute heute früh mit einem Problem. Ich möchte folgenden Befehl über blockly ausführen:

                                /etc/init.d/power_mqtt restart

                                Das Problem ist, der Befehl geht nur über sudo und sudo ist im Terminal nicht möglich. Habe folgendes versucht über ssh KOnsole des users pi:

                                sudo chmod -v 777 power_mqtt

                                -> kein Erfolg

                                dann:

                                sudo chown iobroker power_mqtt

                                -> kein Erfolg

                                dann:

                                sudo visudo /etc/sudoers

                                dort entsprechend eingetragen:

                                iobroker ALL= /etc/init.d/power_mqtt

                                -> kein Erfolg

                                Nun bin ich mit meinem Wissen am Ende. Hat jemand einen Tipp?

                                @waterchill

                                Ich glaube bei den sudoers hast du noch einen fehler
                                müsse es nicht so heissen:

                                iobroker ALL=(ALL) NOPASSWD: /etc/init.d/power_mqtt
                                

                                ob es funktioniert, kannst du selbst auf der shell testen, in dem du dich als
                                iobroker anmeldest mit

                                sudo -u iobroker bash
                                /etc/init.d/power_mqtt restart
                                

                                https://wiki.ubuntuusers.de/sudo/Konfiguration/

                                W Offline
                                W Offline
                                waterchill
                                schrieb am zuletzt editiert von
                                #32

                                @oliverio

                                Habe es jetzt so rein, funktioniert leider auch nicht :(

                                # User privilege specification
                                root    ALL=(ALL:ALL) ALL
                                iobroker ALL=(ALL) NOPASSWD: /etc/init.d/power_mqtt
                                
                                1 Antwort Letzte Antwort
                                0
                                • F fastfoot

                                  @waterchill sagte in Befehl als root ausführen oder Rechte ändern?:

                                  @fastfoot

                                  pi@raspberrypi:~ $ sudo cat /etc/sudoers.d/iobroker
                                  iobroker ALL=(ALL) ALL
                                  iobroker ALL=(ALL) NOPASSWD: /sbin/shutdown
                                  iobroker ALL=(ALL) NOPASSWD: /sbin/halt
                                  iobroker ALL=(ALL) NOPASSWD: /sbin/poweroff
                                  iobroker ALL=(ALL) NOPASSWD: /sbin/reboot
                                  iobroker ALL=(ALL) NOPASSWD: /bin/systemctl start
                                  iobroker ALL=(ALL) NOPASSWD: /bin/systemctl stop
                                  iobroker ALL=(ALL) NOPASSWD: /bin/mount
                                  iobroker ALL=(ALL) NOPASSWD: /bin/umount
                                  iobroker ALL=(ALL) NOPASSWD: /usr/bin/systemd-run
                                  iobroker ALL=(ALL) NOPASSWD: /usr/bin/apt-get
                                  iobroker ALL=(ALL) NOPASSWD: /usr/bin/apt
                                  iobroker ALL=(ALL) NOPASSWD: /usr/bin/dpkg
                                  iobroker ALL=(ALL) NOPASSWD: /usr/bin/make
                                  iobroker ALL=(ALL) NOPASSWD: /bin/ping
                                  iobroker ALL=(ALL) NOPASSWD: /sbin/setcap
                                  iobroker ALL=(ALL) NOPASSWD: /usr/bin/vcgencmd
                                  iobroker ALL=(ALL) NOPASSWD: /bin/cat
                                  iobroker ALL=(ALL) NOPASSWD: /bin/df
                                  iobroker ALL=(ALL) NOPASSWD: /sbin/ldconfig
                                  ALL ALL=NOPASSWD: /bin/systemctl start iobroker
                                  ALL ALL=NOPASSWD: /bin/systemctl stop iobroker
                                  ALL ALL=NOPASSWD: /bin/systemctl restart iobroker
                                  ALL ALL=(iobroker) NOPASSWD: /usr/local/bin/node /opt/iobroker/node_modules/iobroker.js-controller/iobroker.js *
                                  

                                  ok, sudo vi /etc/sudoers.d/iobroker

                                  dort in die 2te Zeile: iobroker ALL=(ALL) NOPASSWD: /etc/init.d/power_mqtt *

                                  vi beenden mit ESC-Taste, dann :wq!

                                  aus Blockly rufst du jetzt das script mit sudo /etc/init.d/power_mqtt auf

                                  die Änderungen in /etc/sudoers rückgängig machen!

                                  W Offline
                                  W Offline
                                  waterchill
                                  schrieb am zuletzt editiert von waterchill
                                  #33

                                  @fastfoot said in Befehl als root ausführen oder Rechte ändern?:

                                  sudo vi /etc/sudoers.d/iobroker

                                  Wenn ich das so ausführe, dann kann ich da drin nichts ändern, unten steht dann {readonly} ich komm dann auch nimmer raus aus dem Teil. Terminal muss dann beendet werden. Scheinbar wird die Datei gerade verwendet oder so

                                  OliverIOO 1 Antwort Letzte Antwort
                                  0
                                  • F fastfoot

                                    @waterchill sagte in Befehl als root ausführen oder Rechte ändern?:

                                    @fastfoot

                                    pi@raspberrypi:~ $ sudo cat /etc/sudoers.d/iobroker
                                    iobroker ALL=(ALL) ALL
                                    iobroker ALL=(ALL) NOPASSWD: /sbin/shutdown
                                    iobroker ALL=(ALL) NOPASSWD: /sbin/halt
                                    iobroker ALL=(ALL) NOPASSWD: /sbin/poweroff
                                    iobroker ALL=(ALL) NOPASSWD: /sbin/reboot
                                    iobroker ALL=(ALL) NOPASSWD: /bin/systemctl start
                                    iobroker ALL=(ALL) NOPASSWD: /bin/systemctl stop
                                    iobroker ALL=(ALL) NOPASSWD: /bin/mount
                                    iobroker ALL=(ALL) NOPASSWD: /bin/umount
                                    iobroker ALL=(ALL) NOPASSWD: /usr/bin/systemd-run
                                    iobroker ALL=(ALL) NOPASSWD: /usr/bin/apt-get
                                    iobroker ALL=(ALL) NOPASSWD: /usr/bin/apt
                                    iobroker ALL=(ALL) NOPASSWD: /usr/bin/dpkg
                                    iobroker ALL=(ALL) NOPASSWD: /usr/bin/make
                                    iobroker ALL=(ALL) NOPASSWD: /bin/ping
                                    iobroker ALL=(ALL) NOPASSWD: /sbin/setcap
                                    iobroker ALL=(ALL) NOPASSWD: /usr/bin/vcgencmd
                                    iobroker ALL=(ALL) NOPASSWD: /bin/cat
                                    iobroker ALL=(ALL) NOPASSWD: /bin/df
                                    iobroker ALL=(ALL) NOPASSWD: /sbin/ldconfig
                                    ALL ALL=NOPASSWD: /bin/systemctl start iobroker
                                    ALL ALL=NOPASSWD: /bin/systemctl stop iobroker
                                    ALL ALL=NOPASSWD: /bin/systemctl restart iobroker
                                    ALL ALL=(iobroker) NOPASSWD: /usr/local/bin/node /opt/iobroker/node_modules/iobroker.js-controller/iobroker.js *
                                    

                                    ok, sudo vi /etc/sudoers.d/iobroker

                                    dort in die 2te Zeile: iobroker ALL=(ALL) NOPASSWD: /etc/init.d/power_mqtt *

                                    vi beenden mit ESC-Taste, dann :wq!

                                    aus Blockly rufst du jetzt das script mit sudo /etc/init.d/power_mqtt auf

                                    die Änderungen in /etc/sudoers rückgängig machen!

                                    F Offline
                                    F Offline
                                    fastfoot
                                    schrieb am zuletzt editiert von
                                    #34

                                    @waterchill

                                    @fastfoot sagte in Befehl als root ausführen oder Rechte ändern?:
                                    vi beenden mit ESC-Taste, dann :wq!

                                    iobroker läuft unter Docker auf QNAP TS-451+
                                    SkriptRecovery: https://forum.iobroker.net/post/930558

                                    W 1 Antwort Letzte Antwort
                                    0
                                    • W waterchill

                                      @dr-bakterius

                                      Bin ich grad dabei. Müsste dann so passen oder?

                                      */2 16-20 * * * sudo /etc/init.d/power_mqtt restart
                                      

                                      Jede zweite Minute von 16-20 Uhr täglich

                                      Dr. BakteriusD Offline
                                      Dr. BakteriusD Offline
                                      Dr. Bakterius
                                      Most Active
                                      schrieb am zuletzt editiert von
                                      #35

                                      @waterchill sagte in Befehl als root ausführen oder Rechte ändern?:

                                      */2 16-20 * * * sudo /etc/init.d/power_mqtt restart
                                      

                                      Ja, aber statt sudo root.

                                      W 1 Antwort Letzte Antwort
                                      0
                                      • Dr. BakteriusD Dr. Bakterius

                                        @waterchill sagte in Befehl als root ausführen oder Rechte ändern?:

                                        */2 16-20 * * * sudo /etc/init.d/power_mqtt restart
                                        

                                        Ja, aber statt sudo root.

                                        W Offline
                                        W Offline
                                        waterchill
                                        schrieb am zuletzt editiert von
                                        #36

                                        @dr-bakterius

                                        Ich habs mit sudo drin und scheint so zu gehen

                                        1 Antwort Letzte Antwort
                                        0
                                        • F fastfoot

                                          @waterchill

                                          @fastfoot sagte in Befehl als root ausführen oder Rechte ändern?:
                                          vi beenden mit ESC-Taste, dann :wq!

                                          W Offline
                                          W Offline
                                          waterchill
                                          schrieb am zuletzt editiert von
                                          #37

                                          @fastfoot

                                          Also mit ESC komm ich da nich t raus. Ich kann da auch nichts reinschreiben.

                                          F 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

                                          361

                                          Online

                                          32.5k

                                          Benutzer

                                          81.7k

                                          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