Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Kopieren von Dateien auf NFS per exec funktioniert nicht

    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

    Kopieren von Dateien auf NFS per exec funktioniert nicht

    This topic has been deleted. Only users with topic management privileges can see it.
    • A
      aleks-83 last edited by aleks-83

      Hi,

      ich hole in einem Blockly Skript Bilder von einer LAN Kamera.
      Das holen per Exec Befehl funktioniert.

      Danach soll das Skript per 'cp' die Bilder auf eine NFS Freigabe ablegen.

      cp -r /opt/iobroker/iobroker-data/files/vis.0/main/snapshots/Set1/ /mnt/NAS/symLink_Photo/Besucherfotos/2019/2019.03.13_14.58.33/
      

      Das Skript wird ohne Fehler ausgeführt.
      Auf der NFS Freigabe kommen aber keine Fotos an.

      Zur Topologie:
      ioBroker läuft auf einer Debian 9.8 VM in Proxmox.
      Die NFS ist in der VM gemountet.

      Wenn ich den Befehl per putty (als root) ausführe, funktioniert es.
      Als user ohne Root Recht bekomme ich die Meldung

      cp: das Verzeichnis '/mnt/NAS/symLink_Photo/Besucherfotos/2019/2019.03.13_14.58.33/' kann nicht angelegt werden: Keine Berechtigung
      
      

      als iobroker kann ich mich iwie nicht per SSH anmelden.
      Habe schon das pw neu gesetzt, aber immer wenn ich den user iobroker und das pw beim login eingebe, lande ich in der Konsole wieder bei der login Maske.
      Wenn ichs per putty versuche wird dann das Putty Fenster geschlossen.

      An der NFS Freigabe kann es nicht liegen.
      Auch wenn ich den Befehl anpasse dass die Bilder in einen lokalen Ordner kopiert werden, funktioniert es im Skript nicht, per putty mit root aber schon.

      Homoran 1 Reply Last reply Reply Quote 0
      • Homoran
        Homoran Global Moderator Administrators @aleks-83 last edited by

        @aleks-83 sagte in Kopieren von Dateien auf NFS per exec funktioniert nicht:

        als iobroker kann ich mich iwie nicht per SSH anmelden.

        die übliche Frage bei so etwas:

        Von wann ist die Installation - und wie durchgeführt?

        etwa Anfang Januar mit curl....
        Dann solttest du den Fixer drüberlaufen lassen

        1 Reply Last reply Reply Quote 1
        • A
          aleks-83 last edited by aleks-83

          Die Installation habe ich am 9.3. gemacht.

          Debian als VM eingerichtet, dann ioBroker nach Anleitung mit curl.

          EDIT:
          Habe den fixer mal laufen lassen mit der Meldung dass meine Installation erfolgreich gefixt wurde.

          Das Problem besteht leider weiterhin. Dateien werden nicht kopiert und eine Anmeldung als "iobroker" im SSH ist nicht möglich.
          Die VM habe ich komplett neu gestartet.

          1 Reply Last reply Reply Quote 0
          • A
            aleks-83 last edited by aleks-83

            Auch andere Befehle lassen sich nicht ausführen.
            Per VIS konnte ich auf dem Pi den ioB neustarten, updaten, upgraden usw...
            Die Befehle werden auf dem NUC nicht mehr ausgeführt.
            Die entsprechenden Debugmeldungen aus den SKripten sehe ich aber.

            Hier mal die Ausgabe von "sudo -l"

            root@ioBroker:~# sudo -l
            Passende Defaults-Einträge für root auf ioBroker:
                env_reset, mail_badpass, secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin
            
            Der Benutzer root darf die folgenden Befehle auf ioBroker ausführen:
                (ALL : ALL) ALL
                (root) NOPASSWD: /bin/systemctl start iobroker
                (root) NOPASSWD: /bin/systemctl stop iobroker
                (root) NOPASSWD: /bin/systemctl restart iobroker
                (iobroker) NOPASSWD: /usr/bin/node /opt/iobroker/node_modules/iobroker.js-controller/iobroker.js
            

            Ja, bei mir gibt es noch den root user...

            Ich habe beim Umzug von Pi auf den NUC nach der Installation von ioBroker ein BackitUp "Komplett Backup" eingespielt.
            Liegt es vielleich daran?

            Eine Neuinstallation vom JavaScript Adapter hat auch nicht geholfen.

            1 Reply Last reply Reply Quote 0
            • AlCalzone
              AlCalzone Developer last edited by

              In neueren Installationen läuft ioBroker aus Sicherheitsgründen unter dem beschränkten User iobroker. Dieser ist rein für die Ausführung da und nicht zur Anmeldung.

              Für Backups auf externe Systeme bedeutet das, dass dieser User dort existieren muss und Schreibzugriff benötigt.

              Auch andere Befehle lassen sich nicht ausführen.
              Per VIS konnte ich auf dem Pi den ioB neustarten, updaten, upgraden usw...

              Welche Befehle sind das? Klingt für mich als müsstest du bei den meisten nur sudo weglassen.

              A 1 Reply Last reply Reply Quote 1
              • A
                aleks-83 @AlCalzone last edited by aleks-83

                @AlCalzone sagte in Kopieren von Dateien auf NFS per exec funktioniert nicht:

                In neueren Installationen läuft ioBroker aus Sicherheitsgründen unter dem beschränkten User iobroker. Dieser ist rein für die Ausführung da und nicht zur Anmeldung.

                Für Backups auf externe Systeme bedeutet das, dass dieser User dort existieren muss und Schreibzugriff benötigt.

                Ich habe auf meinem Synology NAS über das GUI einen Benutzer namens iobroker angelegt mit entsprechendem Passwort und Admin Berechtigungen.
                Der Kopierbefehl funktioniert so noch nicht.

                Über die GUI wird vermutlich nicht ausreichen, oder?
                In dieser Doku habe ich gelesen dass man den user iobroker auf dem NFS Clienten (also meinem ioBroker) anpassen muss.
                Ich habe per "usermod -u 1028 -g 100 iobroker" den user auf den mod des NFS Servers angepasst.
                Leider komme ich jetzt nicht mehr per Browser auf das GUI vom ioBroker. 😕
                Der Prozess läuft aber.

                root@ioBroker:~# iobroker status
                iobroker is running
                
                Objects type: file
                States  type: file
                root@ioBroker:~# iobroker list instances
                events.js:183
                      throw er; // Unhandled 'error' event
                      ^
                
                Error: listen EADDRINUSE 127.0.0.1:9001
                    at Server.setupListenHandle [as _listen2] (net.js:1360:14)
                    at listenInCluster (net.js:1401:12)
                    at doListen (net.js:1510:7)
                    at _combinedTickCallback (internal/process/next_tick.js:142:11)
                    at process._tickCallback (internal/process/next_tick.js:181:9)
                
                

                Auch andere Befehle lassen sich nicht ausführen.
                Per VIS konnte ich auf dem Pi den ioB neustarten, updaten, upgraden usw...

                Welche Befehle sind das? Klingt für mich als müsstest du bei den meisten nur sudo weglassen.

                Ohne sudo funktionieren die Befehle (apt-get update, iobroker restart, ...) !

                Ich liebe dich ! 😂

                AlCalzone 1 Reply Last reply Reply Quote 0
                • AlCalzone
                  AlCalzone Developer @aleks-83 last edited by

                  @aleks-83 sagte in Kopieren von Dateien auf NFS per exec funktioniert nicht:

                  In dieser Doku habe ich gelesen dass man den user iobroker auf dem NFS Clienten (also meinem ioBroker) anpassen muss.
                  Ich habe per "usermod -u 1028 -g 100 iobroker" den user auf den mod des NFS Servers angepasst.

                  Oh das klingt gefährlich... Da ioBroker auf deinem ioBroker-Host diverse Gruppenzugehörigkeiten hatte, könnte das die Berechtigungen zerstört haben.
                  Geht anders herum nicht? Server an Client anpassen?

                  Starte erst mal neu, evtl ist das nur ein temporäres Problem. Ansonsten musst du evtl. den Fixer nochmal laufen lassen, um die Berechtigungen wieder gerade zu biegen.

                  1 Reply Last reply Reply Quote 0
                  • A
                    aleks-83 last edited by aleks-83

                    Server anpassen geht leider nicht. Das ist bei Synology nicht vorgesehen oder möglich.

                    Ich habe gerade den fixer laufen lassen und die VM neu gestartet...
                    Geht wieder. Danke für den Tipp.

                    Dann muss ich das iwie anders lösen...!?
                    Den NAS per NFS im Proxmox einzubinden und durchzureichen ist glaube ich auch nicht so ohne weiteres möglich.

                    1 Reply Last reply Reply Quote 0
                    • A
                      aleks-83 last edited by aleks-83

                      Wie siehts denn aus wenn ich IN der VM den NFS Punkt mounte?
                      Kann ioBroker dann darauf zugreifen?
                      In der VM gibt es den user iobroker ja dann schon.
                      Aber auf dem Server immer noch nicht. hmm..

                      Der Backitup Adapter hat ja schienbar Zugriff auf mein NAS.
                      Der kopiert die Backups ja per CIFS dort hin.

                      Ich werde mal versuchen den NAS per CIFS in die VM zu kriegen.
                      Dann sollte ioBroker ja darauf zugreifen dürfen!?

                      1 Reply Last reply Reply Quote 0
                      • AlCalzone
                        AlCalzone Developer last edited by

                        Probiers aus - das liegt leider außerhalb meiner Kenntnisse.

                        1 Reply Last reply Reply Quote 0
                        • A
                          aleks-83 last edited by aleks-83

                          Das einbinden in die VM habe ich dann nicht mehr getestet.
                          Das Kopieren der Backups durch BackItUp funktioniert auch irgendwie nicht mehr.

                          Daher habe ich mir das Verschieben der letzten Backups jetzt selbst per Skript gebastelt.

                          find /opt/iobroker/backups/ -mtime -2 -exec mv {} /mnt/DS112/LAN/Intel_NUC6CAYH/Backup/ioBroker \;
                          

                          Alle Dateien in /opt/iobroker/backups/ die jünger sind als 2 Tage, werden nach /mnt/DS112/LAN/Intel_NUC6CAYH/Backup/ioBroker verschoben.
                          Das funktioniert, allerdings verschiebt er mir den gesamten Ordner backups.
                          (Sodass /mnt/DS112/LAN/Intel_NUC6CAYH/Backup/ioBroker/backups entsteht)

                          Das möchte ich gerne vermeiden.
                          Welche Option kann ich dem mv Befehl mitgeben?
                          Beim cp Befehl wäre es ja -r, den gibt es aber bei mv nicht!?

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

                          Support us

                          ioBroker
                          Community Adapters
                          Donate

                          890
                          Online

                          31.8k
                          Users

                          79.9k
                          Topics

                          1.3m
                          Posts

                          javascript
                          3
                          11
                          914
                          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