Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. [gelöst] Raspberry mit Linux-Control Adapter neu starten

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    [gelöst] Raspberry mit Linux-Control Adapter neu starten

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

      @kraxelhuber
      Möchtest du den iobroker raspi Neustarten oder einen anderen raspi

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

        @liv-in-sky
        Meine iobroker Master Instanz läuft in einem Docker Container auf meiner Synology DiskStation. Auf einem Raspberry läuft die Slave Instanz ebenfalls in einem Docker Container.

        Mein Ziel ist es den RPi zu rebooten, sobald der Docker Container der Hauptinstanz neu gestartet wurde.

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

          @kraxelhuber

          über ssh würde das funktionieren

          1 über eine zu installierende node - die node muss in der javascript-instanz bei zusätzlichen nodes eingetragen werden - das ist zwar dann javascript, aber dass könnte man über ein function-blockly einbinden https://forum.iobroker.net/post/362315
          2 hier sind beispiele für eine ssh verbindung, die dann über das exec-blockly ausgeführt werden - schnell und "dirty" über passh oder sicherer mit ssh-key https://serverfault.com/questions/241588/how-to-automate-ssh-login-with-password
          3 die idee von @Elektroniker86 ist auch nicht schlecht - über diesen adapter (linux controll) kann man dann sehr einfach andere abfragen dazunehmen und hat dann ein paar system infos über den slave (wenn man das haben will - z.b. temp) https://forum.iobroker.net/topic/35870/test-adapter-linux-control-v1-x-x
          4 bin mir da nicht sicher ob das funktioniert - habe keine slaves - über eine javascript-instanz auf dem slave installiert und dort direkt - ohne ssh - einen sudo reboot im exec-blockly ausführen - der trigger muss dann vom master und einem dp kommen
          • auf was willst du triggern ? z.b. uptime (system.adapter.admin.0.uptime)
            ein script ohne trigger welches nach einer zeitverzögerung die uptime abfrägt und dann ( je nach uptime) den befehl sendet oder nicht. ein script ohne trigger wird immer nach einem reboot bzw eigentlich nach dem start der javascript instanz gestartet

          oder hast du eine andere idee

          1 Reply Last reply Reply Quote 0
          • K
            Kraxelhuber @Elektroniker86 last edited by

            @elektroniker86
            @liv-in-sky

            Ich habe jetzt den Linux-Control Adapter verwendet. Das war ein guter Tip. Danke dafür!

            Den Reboot des RPi habe ich damit hinbekommen. Bei mir stellt sich jetzt in der Tat nur noch die Frage des Triggers. Eigentlich soll das Script ausgeführt werden, sobald die ioBroker Master Instanz (hier läuft auch der Linux-Controller) neu gestartet wurde.

            Ich habe jetzt folgendes, simples Script erstellt, was auch bei manueller Ausführung seinen Dienst erfolgreich verrichtet. Allerdings wird es nicht automatisch nach einem Neustart ausgeführt. Hättet ihr da noch einen Hinweis?

            f670103e-161e-467c-b9a7-f0c2cdd405c3-grafik.png

            <xml xmlns="https://developers.google.com/blockly/xml">
              <block type="control" id="(l[e@^Nj$-f)3{}CU(zS" x="63" y="-187">
                <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                <field name="OID">linux-control.0.ioBroker_slave.control.restart</field>
                <field name="WITH_DELAY">FALSE</field>
                <value name="VALUE">
                  <block type="logic_boolean" id="n:ZJFf#Dsk0bM}xi+^oA">
                    <field name="BOOL">TRUE</field>
                  </block>
                </value>
                <next>
                  <block type="telegram" id="E/C2MhZ}-]2iGVt`%8`-">
                    <field name="INSTANCE"></field>
                    <field name="LOG"></field>
                    <field name="SILENT">FALSE</field>
                    <field name="PARSEMODE">default</field>
                    <value name="MESSAGE">
                      <shadow type="text" id="XS8u]l_WUJ^LntCJ37wl">
                        <field name="TEXT">RPi ioBroker Slave rebooted</field>
                      </shadow>
                    </value>
                  </block>
                </next>
              </block>
            </xml>
            
            liv-in-sky 2 Replies Last reply Reply Quote 0
            • liv-in-sky
              liv-in-sky @Kraxelhuber last edited by

              @kraxelhuber das ganze vielleicht mit etwas zeitverzögerung - 30 sek oder so - mal testen -mit einem timeout-block

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

                @kraxelhuber

                wenn du das so machst, triggerst du auch, wenn nur die javascript-instanz restarted (von hand oder durch einen scriptfehler) wird - kommt nicht oft vor - kann aber vorkommen

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

                  @liv-in-sky

                  So hat es funktioniert:

                  3d839765-19ee-4496-b3ba-e15d2ddc0fec-grafik.png

                  Ich musste schon ein bisschen Zeit geben, bis der Linux-Control Adapter initialisiert wurde und auch die Daten vom RPi empfangen hat.

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

                    @liv-in-sky said in Raspberry neu starten:

                    @kraxelhuber

                    wenn du das so machst, triggerst du auch, wenn nur die javascript-instanz restarted (von hand oder durch einen scriptfehler) wird - kommt nicht oft vor - kann aber vorkommen

                    Würdest du einen anderen Trigger wählen?

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

                      @kraxelhuber

                      ich würde unter dem/im timeout noch eine if abfrage machen, ob dieser dp (system.adapter.admin.0.uptime) kleiner ... sekunden ist
                      die sekundenanzahl musst du schätzen - du brauchst 180 sekunden (timeout plus die sekunden, bis die javascript-instanzen gestartet werden - vielleicht 5 min also kleiner 300 sekunden

                      den dp siehst du mit der experten-einstellung im admin

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

                        @liv-in-sky

                        Meinst du das so?

                        59f1bb61-480e-46e4-8fdd-02c5f9e1d5d5-grafik.png

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

                          @kraxelhuber

                          ja - wenn also nach 300 sekunden online der javascript adapter neugestartet wird, wird der neustart nicht ausgeführt !

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

                            @liv-in-sky said in Raspberry neu starten:

                            @kraxelhuber

                            ja - wenn also nach 300 sekunden online der javascript adapter neugestartet wird, wird der neustart nicht ausgeführt !

                            Super, das läuft rund. Danke, Problem gelöst.

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

                              @kraxelhuber konntest du dein slave problem lösen ?

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

                                @liv-in-sky said in [gelöst] Raspberry mit Linux-Control Adapter neu starten:

                                @kraxelhuber konntest du dein slave problem lösen ?

                                Ja, besten Dank!

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

                                Support us

                                ioBroker
                                Community Adapters
                                Donate

                                746
                                Online

                                31.7k
                                Users

                                79.6k
                                Topics

                                1.3m
                                Posts

                                blockly
                                4
                                17
                                988
                                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