Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. [gelöst] Problem mit simple-ssh zur synology

    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

    [gelöst] Problem mit simple-ssh zur synology

    This topic has been deleted. Only users with topic management privileges can see it.
    • Glasfaser
      Glasfaser @alka last edited by Glasfaser

      @alka sagte in Problem mit simple-ssh zur synology:

      (habe den code hier aus dem Forum, dort scheint es zu funktionieren)

      Wäre auch von Vorteil woher ... Link !?

      Versuche mal hiermit :

      https://forum.iobroker.net/topic/40916/docker-container-restart-iobroker-per-script/23

      EDIT :

      ich sehe gerade selber , du bist der Themenstarten vom Thread !? :

      Docker Container restart iobroker per script

      A 1 Reply Last reply Reply Quote 0
      • A
        alka @Glasfaser last edited by alka

        @glasfaser sagte in Problem mit simple-ssh zur synology:

        Versuche mal hiermit :

        jo, genau dieses war es wo ich es herhatte, war nur in einem anderen thread ziziert (aber Verfasser ebenso //Glasfaser 17.01.2021

        edit
        "Docker Container restart iobroker per script"
        da ist das Thema ein komplett anderes geworden ....

        edit2

        ach jetzt sehe ich, du selbst bist es der das script bereitgestellt hat 👍

        Glasfaser 1 Reply Last reply Reply Quote 0
        • Glasfaser
          Glasfaser @alka last edited by

          @alka sagte in Problem mit simple-ssh zur synology:

          ach jetzt sehe ich, du selbst bist es der das script bereitgestellt hat

          ... aber das Script von dir ist anders

          new SSH2({
          port:'22',

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

            @alka

            stümmt 😉

            hatte ich verrbastelt als ich viele Variationen und ein anderes script probiert hatte, funktioniert aber leider mit SSH ohne 2 auch nicht und gibt nichts aus

            u.a. so:

                    ssh.exec('echo "/usr/bin/synowebapi --exec api=SYNO.Docker.Container version=1 method=restart name=ct1"',{
                        err: (err) => {
                                log('SSH Error:', err);
                            },
                        exit: () => {
                            //cb && cb();
                            log('SSH  exit');
                        }
                    }).start();
            
                } catch (e) {
                    log('--- SSH Error ', e);
                } 
            });
            

            Nachtrag
            nun, da ich eine Weile das script nicht mehr gestartet hatte, die syno in Ruhe war und ich wieder von SSH2 auf SSH geändert und sicherheitshalber probiert habe, ist zumindest die syno Plattenerweiterung geweckt worden (was bedeutet dass irgendein Zugriff dort angekommen ist) - und vergessen: syno mit DSM 7.0.1

            Glasfaser 1 Reply Last reply Reply Quote 0
            • Glasfaser
              Glasfaser @alka last edited by Glasfaser

              @alka sagte in Problem mit simple-ssh zur synology:

              und vergessen: syno mit DSM 7.0.1

              Das macht nichts ...

              Melde in der Syn an als root

              dann den kompletten Befehl absenden :

              /usr/syno/bin/synowebapi --exec api=SYNO.Docker.Container version=1 method=restart name=ct1
              

              danach kommt / sollte kommen und der Container startet neu .

              [Line 285] Exec WebAPI:  api=SYNO.Docker.Container, version=1, method=restart, param={"name":"ct1"}, runner=
              {
                 "data" : {
                    "cpu" : 0,
                    "memory" : 28635136,
                    "memoryPercent" : 0.17224828898906708,
                    "name" : "ct1"
                 },
                 "httpd_restart" : false,
                 "success" : true
              }
              
              
              A 1 Reply Last reply Reply Quote 0
              • A
                alka @Glasfaser last edited by alka

                @glasfaser
                mit root erhalte ich keinen Zugriff, was wohl seit DSM 7.x auch so gedacht ist

                edit
                sooo - root geht nur noch per key hab ich grad gelesen

                damin-konto aber permission denied, muss mal suchen wie ich die pfad-rechte setzen muss

                Glasfaser A 2 Replies Last reply Reply Quote 0
                • Glasfaser
                  Glasfaser @alka last edited by Glasfaser

                  @alka sagte in Problem mit simple-ssh zur synology:

                  mit root erhalte ich keinen Zugriff, was wohl seit DSM 7.x auch so gedacht ist

                  Wo steht dass denn ,
                  es geht nur darum das der Standart Nutzer ( mit Rechten / Administrator ) Admin heißt und den sollte man ändern/ ausschalten .

                  Da wurde noch nie was ausgeschaltet :
                  EDIT:

                  login as: root
                  root@xxxx.xxx.xxx.xx's password:
                  
                  Synology strongly advises you not to run commands as the root user, who has
                  the highest privileges on the system. Doing so may cause major damages
                  to the system. Please note that if you choose to proceed, all consequences are
                  at your own risk.
                  
                  root@xxxx:~#
                  
                  1 Reply Last reply Reply Quote 0
                  • A
                    alka @alka last edited by alka

                    @alka
                    hmh, dann verbocke ich hier was - Permission denied, please try again.

                    habe pw nochmal neu gesetzt (denke ich mal) und neu gestartet, kein Zugriff
                    ch57@Diskstation716:/$ sudo -i
                    Password:
                    root@Diskstation716:~# synouser -setpw root xxxx

                    edit:
                    egal was ich versuche, root anmelden wird verweigert
                    nach admin und sudo kann ich den restart problemlos ausführen lassen

                    Glasfaser 1 Reply Last reply Reply Quote 0
                    • Glasfaser
                      Glasfaser @alka last edited by

                      @alka

                      Ich habe gerade keine Idee .... woran es bei dir liegt .

                      1 Reply Last reply Reply Quote 0
                      • A
                        alka last edited by alka

                        @glasfaser

                        habe reichlich Versuche gefahren, ändert nichts
                        lässt sich sudo in den exec-Befehl einbauen und damit die admin-anmeldung nutzen?

                        oder per chmod die Datei zum Ausführen für admin-Gruppe verfügbar machen?

                        Glasfaser A 2 Replies Last reply Reply Quote 0
                        • Glasfaser
                          Glasfaser @alka last edited by

                          @alka sagte in Problem mit simple-ssh zur synology:

                          lässt sich sudo in den exec-Befehl einbauen und damit die admin-anmeldung nutzen?

                          Es wird dann aber nach dem Sudo Befehl das Passwort von root gefragt , wie man das übergibt kann ich dir nicht ( im Moment ) sagen .

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

                            @alka
                            auch wahr, hatte ich nicht bedacht

                            chmod für die Datei geht auch nicht? für admins ausführbar?

                            Glasfaser 2 Replies Last reply Reply Quote 0
                            • Glasfaser
                              Glasfaser @alka last edited by

                              @alka

                              Wäre ungefähr so

                              echo -e "Password"  | sudo ...........
                              
                              1 Reply Last reply Reply Quote 0
                              • Glasfaser
                                Glasfaser @alka last edited by Glasfaser

                                @alka

                                Hier das komplette Script , gerade mit portainer getestet :

                                //Glasfaser  17.01.2021
                                //Glasfaser  08.05.2022 echo -e Passwort hinzugefügt 
                                //https://forum.iobroker.net/topic/40916/docker-container-restart-iobroker-per-script
                                //https://forum.iobroker.net/topic/54782/problem-mit-simple-ssh-zur-synology/15
                                //Synology Docker Container von ioBroker aus neustarten 
                                //Im JS Adapter zusätzliche NPM-Module, den Eintrag: simple-ssh
                                //im SSH Befehl name=iobroker : auf dein Containernamen ändern 
                                // bei echo -e Passwort , Passwort anpassen
                                 
                                
                                
                                on({id: "0_userdata.0.Test123", change: 'ne', val: true }, function (obj) {
                                 
                                
                                log ("--> Neustart Docker gestartet!");
                                
                                console.log('+++ Neustart Docker +++');
                                
                                  setState('0_userdata.0.Test123', false);
                                
                                  
                                
                                var SSH = require('simple-ssh');
                                
                                
                                var ssh = new SSH({
                                
                                   host: 'xxx.xxx.xxx.xxx',
                                
                                   user: 'User',
                                
                                   pass: 'Passwort'
                                
                                });
                                
                                
                                ssh.exec('echo -e Passwort  | sudo -S /usr/syno/bin/synowebapi --exec api=SYNO.Docker.Container version=1 method=restart name=portainer', {
                                
                                   out: function(stdout) {
                                
                                       console.log(stdout);
                                
                                       
                                
                                 
                                
                                   }
                                
                                }).start();
                                
                                 
                                
                                }
                                
                                );
                                

                                das kommt dazu , wie ich schon oben geschrieben habe :

                                echo -e Passwort  | sudo -S
                                

                                dann kommt im ioBroker Log auch :.

                                2022-05-08 19:57:38.296 - info: javascript.0 (462) script.js.Synology.Docker_Neustart: {
                                "data" : {
                                "cpu" : 0,
                                "memory" : 28975104,
                                "memoryPercent" : 0.17429329454898834,
                                "name" : "portainer"
                                },
                                "httpd_restart" : false,
                                "success" : true
                                }
                                
                                A 1 Reply Last reply Reply Quote 0
                                • A
                                  alka @Glasfaser last edited by alka

                                  @glasfaser

                                  dickes dankeschön dafür, noch dazu am So!

                                  habe es komplett übernommen, meine Variablen eingetragen - leider nix
                                  kann aber inzwischen daran liegen, das die Firewall der syno dicht gemacht hat wegen zu vieler Zugriffe, muss mich jetzt um Familie kümmern und setz mich die nächsten Tage noch mal dran

                                  Nachtrag:
                                  konnte es nicht lassen da nochmal bei zu gehen - es funktioniert!👍
                                  nochmals ein ganz liebes dankeschön dafür!

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

                                  Support us

                                  ioBroker
                                  Community Adapters
                                  Donate

                                  955
                                  Online

                                  31.9k
                                  Users

                                  80.1k
                                  Topics

                                  1.3m
                                  Posts

                                  2
                                  16
                                  671
                                  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