Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
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

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    16
    1
    302

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    4.7k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.3k

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

Scheduled Pinned Locked Moved JavaScript
7 Posts 4 Posters 857 Views 3 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • M Offline
    M Offline
    mkoke
    wrote on last edited by 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 Reply Last reply
    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
      wrote on last edited by
      #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 Reply Last reply
      0
      • M Offline
        M Offline
        mkoke
        wrote on last edited by
        #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 Reply Last reply
        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
          wrote on last edited by 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 Reply Last reply
          0
          • M Offline
            M Offline
            mkoke
            wrote on last edited by
            #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 Replies Last reply
            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
              wrote on last edited by
              #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 Reply Last reply
              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
                wrote on last edited by
                #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 Reply Last reply
                0
                Reply
                • Reply as topic
                Log in to reply
                • Oldest to Newest
                • Newest to Oldest
                • Most Votes


                Support us

                ioBroker
                Community Adapters
                Donate

                638

                Online

                32.7k

                Users

                82.5k

                Topics

                1.3m

                Posts
                Community
                Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                ioBroker Community 2014-2025
                logo
                • Login

                • Don't have an account? Register

                • Login or register to search.
                • First post
                  Last post
                0
                • Home
                • Recent
                • Tags
                • Unread 0
                • Categories
                • Unreplied
                • Popular
                • GitHub
                • Docu
                • Hilfe