NEWS

Kopieren von Dateien auf NFS per exec funktioniert nicht



  • 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.


  • Forum Testing Most Active Global Moderator Administrators

    @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



  • 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.



  • 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.


  • Developer

    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.



  • @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 ! 😂


  • Developer

    @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.



  • 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.



  • 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!?


  • Developer

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



  • 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!?


Log in to reply
 

Suggested Topics

1.0k
Online

32.4k
Users

39.0k
Topics

528.7k
Posts