Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. Remote Raspberry herunterfahren

    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

    Remote Raspberry herunterfahren

    This topic has been deleted. Only users with topic management privileges can see it.
    • Thomas Braun
      Thomas Braun Most Active @tiego last edited by

      @tiego Keine Meldung ist in der Regel positiv. Wird wohl dann funktionieren.

      T 1 Reply Last reply Reply Quote 0
      • T
        tiego @Thomas Braun last edited by

        @thomas-braun leider nicht,
        im Log, steht wenn ich das script starte:

        Zeit
        	
        Nachricht
        javascript.0
        	2021-11-15 22:08:07.957	error	at processImmediate (internal/timers.js:461:21)
        javascript.0
        	2021-11-15 22:08:07.956	error	at Immediate.<anonymous> (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:5706:41)
        javascript.0
        	2021-11-15 22:08:07.956	error	at Object.stateChange (/opt/iobroker/node_modules/iobroker.javascript/main.js:530:29)
        javascript.0
        	2021-11-15 22:08:07.956	error	at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1087:38)
        javascript.0
        	2021-11-15 22:08:07.955	error	at Object.<anonymous> (script.js.common.Octoprint_shutdown:7:19)
        javascript.0
        	2021-11-15 22:08:07.949	error	script.js.common.Octoprint_shutdown: TypeError: node_ssh is not a constructor
        
        Homoran Chaot 2 Replies Last reply Reply Quote 0
        • Homoran
          Homoran Global Moderator Administrators @tiego last edited by

          @tiego sagte in Remote Raspberry herunterfahren:

          im Log, steht wenn ich das script starte:

          @tiego sagte in Remote Raspberry herunterfahren:

          at Object.<anonymous> (script.js.common.Octoprint_shutdown:7:19)

          und was steht da im Script?

          T 1 Reply Last reply Reply Quote 0
          • Chaot
            Chaot @tiego last edited by Chaot

            @tiego
            Sieht bei mir so aus:

            on({id: 'javascript.0.Vis.MonitorReload', val: true}, function (obj) {
              var value = obj.state.val;
              var oldValue = obj.oldState.val;
            
            node_ssh = require('node-ssh');
            
            ssh = new node_ssh();
            
            ssh.connect({
            
              host: '192.168.8.15',
            
              username: '***i',
            
              password: '****'
            
            }).then(() => {
            
              ssh.execCommand("DISPLAY=:0 xdotool key F5");
            
            })
            });
            

            Ist bei Zeile 7 anders ausgeführt (ohne var)

            T 1 Reply Last reply Reply Quote 0
            • T
              tiego @Homoran last edited by

              @homoran
              node_ssh = require('node-ssh');

              Homoran 1 Reply Last reply Reply Quote 0
              • T
                tiego @Chaot last edited by

                @chaot ???

                1 Reply Last reply Reply Quote 0
                • Homoran
                  Homoran Global Moderator Administrators @tiego last edited by

                  @tiego sagte in Remote Raspberry herunterfahren:

                  @homoran
                  node_ssh = require('node-ssh');

                  das ist nicht Zeile 7

                  T 1 Reply Last reply Reply Quote 0
                  • T
                    tiego @Homoran last edited by

                    @homoran
                    hallo, doch. oder wird die erste zeile als 0 gezählt?

                    1 Reply Last reply Reply Quote 0
                    • Homoran
                      Homoran Global Moderator Administrators last edited by

                      @tiego sagte in Remote Raspberry herunterfahren:

                      @homoran
                      hallo, doch. oder wird die erste zeile als 0 gezählt?

                      das ist dein gepostetes Skript:
                      ausnahmsweise als Screenshot
                      Screenshot_20211116-204749_Firefox.jpg

                      in zeile 7 steht was anderes

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

                        @tiego Ehrlich gesagt verstehe ich nicht warum hier so ein Aufwand betrieben wird?

                        Ich würde einen ssh Zugang ohne Passwort ermöglichen. Hier zu gibt es genügend Anleitungen und ich nutze das auch und funktioniert:

                        https://www.dotkam.com/2009/03/10/run-commands-remotely-via-ssh-with-no-password/

                        Dann kann man mit einem einfach EXEC Befehl das entfernte System runterfahren ohne irgendwelche Bibliotheken etc.

                        user@host:~$ ssh remoteuser@remotehost.com sudo poweroff
                        

                        Ich habe es gerade nochmal getest - bei mir wurde der Zugriff von iobroker System auf mein GW über meinen FHEM Account:

                        fhem@MWHome:/home/pi$ ssh pi@192.168..xxx.xxx sudo reboot
                        bash: warning: setlocale: LC_ALL: cannot change locale (de_DE.UTF-8)
                        Connection to 192.168..xxx.xxx closed by remote host.
                        

                        Reboot funktioniert. 😉

                        Auch andere Kommandos

                        fhem@MWHome:/home/pi$ ssh pi@192.168.xxx.xxx uname -a
                        bash: warning: setlocale: LC_ALL: cannot change locale (de_DE.UTF-8)
                        Linux MWIPv6GW 5.10.63-v7+ #1459 SMP Wed Oct 6 16:41:10 BST 2021 armv7l GNU/Linux
                        

                        MWHome ist das lokale iobroker System
                        MWIPv6GW ist das remote System

                        Sprich das Ganze (also ssh Zugriff ohne PW) muss man halt in diesem Fall unter der iobroker Kennung machen - dann funktioniert das auch aus dem Skript. Die ssh Schlüssel müssen also alle im iobroker Home Verzeichnis /home/iobroker/.ssh liegen.

                        Zusätzlicher Vorteil: In den Skripten sieht man keine Passwörter etc. da man sich ohne PW anmeldet - aber eben nur mit einem bestimmten User und nur von einer bestimmten Maschine und unter bestimmter Userkennung.

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

                          @mickym Er muss ja eigentlich nur die Zeile 7 ändern.
                          Aber deine Methode funktioniert auch recht interessant.

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

                          Support us

                          ioBroker
                          Community Adapters
                          Donate

                          452
                          Online

                          31.8k
                          Users

                          80.1k
                          Topics

                          1.3m
                          Posts

                          5
                          16
                          792
                          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