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. JavaScript
  5. Kommando exec cp -r ..... funktioniert nicht

NEWS

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.6k

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

Kommando exec cp -r ..... funktioniert nicht

Geplant Angeheftet Gesperrt Verschoben JavaScript
7 Beiträge 4 Kommentatoren 780 Aufrufe 3 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.
  • M Offline
    M Offline
    mkoke
    schrieb am zuletzt editiert von Negalein
    #1

    Hallo,
    benötige einmal Unterstützung für folgendes Kommando im Script:

    on({id: 'hm-rpc.0.NEQ141234.1.STATE', val: true}, function (obj) {
    exec('cp -r /opt/iobroker/iobroker-data/test.jpg  /media/fritzbox-usb/test.jpg');
    });
    

    Wenn ich es in der Shell ohne exec ausführe, funktioniert es prima, nur leider im Script mit exec nicht.
    Was mache ich falsch?

    Danke
    mkoke


    Mod-Edit: Code/Log in Code Tags gepackt. Bitte benutzt die Code Tags Funktion -> </>
    Hier gehts zur Hilfe.

    SBorgS 1 Antwort Letzte Antwort
    0
    • M mkoke

      Hallo,
      benötige einmal Unterstützung für folgendes Kommando im Script:

      on({id: 'hm-rpc.0.NEQ141234.1.STATE', val: true}, function (obj) {
      exec('cp -r /opt/iobroker/iobroker-data/test.jpg  /media/fritzbox-usb/test.jpg');
      });
      

      Wenn ich es in der Shell ohne exec ausführe, funktioniert es prima, nur leider im Script mit exec nicht.
      Was mache ich falsch?

      Danke
      mkoke


      Mod-Edit: Code/Log in Code Tags gepackt. Bitte benutzt die Code Tags Funktion -> </>
      Hier gehts zur Hilfe.

      SBorgS Offline
      SBorgS Offline
      SBorg
      Forum Testing Most Active
      schrieb am zuletzt editiert von
      #2

      @mkoke Zwei Dinge:

      • exec in der Javascript-Instanz erlaubt?
      • der User iobroker (darunter läuft Javascript) hat Rechte die Datei zu lesen und im Ziel zu schreiben?

      Bild 1.png
      Test Rechte (im Terminal):

      sudo -u iobroker cp -r /opt/iobroker/iobroker-data/test.jpg /media/fritzbox-usb/test.jpg
      

      LG SBorg ( SBorg auf GitHub)
      Projekte: Lebensmittelwarnung.de | WLAN-Wetterstation | PimpMyStation

      1 Antwort Letzte Antwort
      0
      • M Offline
        M Offline
        mkoke
        schrieb am zuletzt editiert von
        #3

        Danke für die Antwort,

        exec in der Javascript-Instanz ist erlaubt.

        Der User iobroker hat keine Berechtigung. Wie kann ich Ihm die benötigten Rechte zuweisen?

        AlCalzoneA 1 Antwort Letzte Antwort
        0
        • M mkoke

          Danke für die Antwort,

          exec in der Javascript-Instanz ist erlaubt.

          Der User iobroker hat keine Berechtigung. Wie kann ich Ihm die benötigten Rechte zuweisen?

          AlCalzoneA Offline
          AlCalzoneA Offline
          AlCalzone
          Developer
          schrieb am zuletzt editiert von AlCalzone
          #4

          @mkoke Nutze doch einfach die eingebauten Methoden zum Kopieren von Dateien:
          https://nodejs.org/api/fs.html#fs_fs_copyfilesync_src_dest_mode

          on({ id: "hm-rpc.0.NEQ141234.1.STATE", val: true }, function (obj) {
            fs.copyFileSync(
              "/opt/iobroker/iobroker-data/test.jpg",
              "/media/fritzbox-usb/test.jpg"
            );
          });
          

          Die Berechtigungen des mounts musst du dennoch anpassen.

          Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

          1 Antwort Letzte Antwort
          0
          • M Offline
            M Offline
            mkoke
            schrieb am zuletzt editiert von
            #5

            @AlCalzone Danke für den Tipp. Das kannte ich so nicht.

            Jetzt benötige ich noch einmal Hilfe für die Einstellung der Berechtigungen. Kann ich nicht so ganz nachvollziehen, da es ja direkt in der Shell funktioniert. Was muss ich jetzt noch einstellen? Sorry, ist für mich noch ziemlich neu.

            AlCalzoneA Meister MopperM 2 Antworten Letzte Antwort
            0
            • M mkoke

              @AlCalzone Danke für den Tipp. Das kannte ich so nicht.

              Jetzt benötige ich noch einmal Hilfe für die Einstellung der Berechtigungen. Kann ich nicht so ganz nachvollziehen, da es ja direkt in der Shell funktioniert. Was muss ich jetzt noch einstellen? Sorry, ist für mich noch ziemlich neu.

              AlCalzoneA Offline
              AlCalzoneA Offline
              AlCalzone
              Developer
              schrieb am zuletzt editiert von
              #6

              @mkoke Der Nutzer iobroker benötigt Schreibzugriff. Auf der Konsole bist du als ein anderer angemeldet, daher funktioniert es dort und in ioBroker nicht. Wie das geht, kann ich dir nicht sagen, da ich nicht weiß, wie das Laufwerk konfiguriert ist.

              Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

              1 Antwort Letzte Antwort
              0
              • M mkoke

                @AlCalzone Danke für den Tipp. Das kannte ich so nicht.

                Jetzt benötige ich noch einmal Hilfe für die Einstellung der Berechtigungen. Kann ich nicht so ganz nachvollziehen, da es ja direkt in der Shell funktioniert. Was muss ich jetzt noch einstellen? Sorry, ist für mich noch ziemlich neu.

                Meister MopperM Online
                Meister MopperM Online
                Meister Mopper
                schrieb am zuletzt editiert von
                #7

                @mkoke Du musst dem Zielsystem (da wo etwas ausgeführt werden soll) den SSH-Schlüssel von Deinem ioBroker-User zuteilen:

                auf dem ioBroker.System:
                sudo su - iobroker -s /bin/bash
                cd ~/.ssh
                ssh-keygen -t rsa
                
                3 x Enter
                   
                auf dem Zielsystem:
                pi@192.168.xxx.xxx> mkdir -p ~/.ssh
                
                auf dem ioBroker.System:
                iobroker@iobroker> cat ~/.ssh/id_rsa.pub | ssh pi@192.168.xxx.xxx 'cat >> .ssh/authorized_keys'
                
                noch einmalig das Passwort eingeben, danach ist es nicht mehr nötig
                

                Proxmox und HA

                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

                777

                Online

                32.5k

                Benutzer

                81.8k

                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