Brauche Hilfe zu Konfiguration von lsyncd Synchronisierungseinstellung

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • Hallo,


    ich möchte mit lsyncd drei Verzeichnisse mit einem vom NAS gemounteten Laufwerk synchronisieren. Das Laufwerk ist soweit eingebunden:

    //192.168.1.10/SmartHome/rpi_symcon /home/pi/nas_share cifs uid=1000,gid=1000,defaults,nofail,username=XYZ,password=XYZ,_netdev 0 0

    pi@raspberrypi:~ $ ls -l

    drwxr-xr-x 2 pi pi 0 Mai 20 08:12 nas_share

    lsyncd habe ich folgend installiert:

    sudo apt-get install lsyncd

    Anschließend Eintrag in crontab erstellt:

    sudo crontab -e

    @reboot sudo lsyncd /etc/lsyncd.conf


    Die lsyncd.conf

    settings {

    logfile = "/var/log/lsyncd.log",

    statusFile = "/tmp/lsyncd.status",

    nodaemon = false

    }

    sync {

    default.rsync,

    source = "/var/lib/symcon",

    target = "/home/pi/nas_share/backup_symcon/lib"

    }

    sync {

    default.rsync,

    source = "/var/log/symcon",

    target = "/home/pi/nas_share/backup_symcon/log",

    delay = 60

    }

    sync {

    default.rsync,

    source = "/root",

    target = "/home/pi/nas_share/backup_symcon/root"

    }

    Es wird aber nicht synchronisiert, im Log kommt folgende Fehlermeldung:

    rsync: mkdir "/home/pi/nas_share/backup_symcon/lib" failed: No such file or directory (2)

    rsync error: error in file IO (code 11) at main.c(682) [Receiver=3.1.3]

    Da ich von Linux noch nicht viel Ahnung habe, komme ich da überhaupt nicht weiter☹

    Grüße

  • Brauche Hilfe zu Konfiguration von lsyncd Synchronisierungseinstellung? Schau mal ob du hier fündig wirst!

  • Zur hilfreichsten Antwort springen
  • pi@raspberrypi:~ $ namei -l /home/pi/nas_share/backup_symcon

    f: /home/pi/nas_share/backup_symcon

    drwxr-xr-x root root /

    drwxr-xr-x root root home

    drwxr-xr-x pi pi pi

    drwxr-xr-x pi pi nas_share

    drwxr-xr-x pi pi backup_symcon

    pi@raspberrypi:~ $ ls -l /home/pi/nas_share/backup_symcon

    insgesamt 0

    drwxr-xr-x 2 pi pi 0 Mai 17 16:02 lib

    drwxr-xr-x 2 pi pi 0 Mai 20 09:24 log

    drwxr-xr-x 2 pi pi 0 Mai 17 16:15 root

    • Hilfreichste Antwort
    • Offizieller Beitrag

    Bist Du sicher, dass das Netzwerk zu dem Zeitpunkt des Cronjobs schon vollständig "oben" und das NAS gemountet ist?

    Zum Test könntest Du mal folgende Zeile in der Crontab versuchen:

    Code
    @reboot sleep 30 && lsyncd /etc/lsyncd.conf

    Btw. sudo ist nicht nötig, da das die Crontab von root ist. sudo gehört eigentlich grundsätzlich nicht in eine Crontab.

  • ch möchte mit lsyncd drei Verzeichnisse mit einem vom NAS gemounteten Laufwerk synchronisieren.

    Ist Dir eigentlich klar, dass Du am Sync-Ziel alle Dateirechte und -Attribute verloren hast, wenn Du auf ein Windows-Share kopierst/syncst ?

    Und lsyncd ist ein (recht alter Sys V) Daemon, der periodisch (alle 5 Sec.) im Ursprungsverzeichnis nachsieht, ob sich was geändert hat. Wenn ja, wird ein rsync von Quelle -> Ziel ausgeführt. Mit den Windows Dateien im Zielverzeichnis kannst Du aber wenig anfangen. Insbesondere kannst Du sie nicht einfach ins Ursprungsverzeichnis zurück-syncen, weil sie ihre Dateieigentümer, -Gruppenrechte und Attribute verloren haben.


    Servus !

    RTFM = Read The Factory Manual, oder so

  • Und lsyncd ist ein (recht alter Sys V) Daemon, der periodisch (alle 5 Sec.) im Ursprungsverzeichnis nachsieht,

    Nö, lsyncd benutzt inotify-Events.

    ..

    Lsyncd requires the kernels inotify or fsevents interface to get noted of file changes.

    ..

    Wenn du nichts zu sagen hast, sag einfach nichts.

    Einmal editiert, zuletzt von llutz (20. Mai 2020 um 17:19)

  • Bist Du sicher, dass das Netzwerk zu dem Zeitpunkt des Cronjobs schon vollständig "oben" und das NAS gemountet ist?

    Zum Test könntest Du mal folgende Zeile in der Crontab versuchen:

    Code
    @reboot sleep 30 && lsyncd /etc/lsyncd.conf

    Btw. sudo ist nicht nötig, da das die Crontab von root ist. sudo gehört eigentlich grundsätzlich nicht in eine Crontab.

    So wie es aussieht, hat diese Lösung geholfen:)

    • Offizieller Beitrag

    Naja, so hat man das früher(TM) geregelt und das sollte eigentlich nur ein Indikator und keine Lösung sein. ;) Heute verwendet man dafür eine Systemd Service Unit, aber da bin ich der falsche Ansprechpartner für. Da kennen sich andere User hier viel besser aus.

    Du kannst aber auch selber mal reinlesen, z.B. hier: https://wiki.ubuntuusers.de/systemd/Service_Units/ oder hier: https://wiki.ubuntuusers.de/Howto/systemd_…_Unit_Beispiel/

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!