Synology soll sich Dateien holen wenn sie in einem netzwerkordner auftauchen

AirZonk!

Benutzer
Mitglied seit
17. Mai 2010
Beiträge
59
Punkte für Reaktionen
0
Punkte
6
Hi,

Vermutlich keine Herausforderung aber ich bekomme es nicht hin.

Ich möchte wie oben beschrieben meine DS118 dazu bringen einen Netzwerkordner (NAS der Fritzbox) kontinuierlich zu überwachen und wenn in diesem Ordner Dateien auftauchen diese umgehend auf einen definierten Ordner der DS118 kopieren zu lassen.

Welche Synology Paket kann das?

Vielen Dank
 

Wollfuchs

Benutzer
Sehr erfahren
Mitglied seit
06. Sep 2020
Beiträge
1.143
Punkte für Reaktionen
261
Punkte
159
Synology Drive Client -> Synchronisierungsaufgabe -> Quelle Frotz -> Ziel NAS ?
Dazu muss aber ein Rechner laufen, der den DriveClient ausfuehrt und Zugriff auf den Quellordner hat.

Du willst aber vermutlich, dass es nur zwischen NAS und Frotz.bix augekaspert wird oder?
 

AirZonk!

Benutzer
Mitglied seit
17. Mai 2010
Beiträge
59
Punkte für Reaktionen
0
Punkte
6
Danke für deine Rückmeldung.

Ja, genau. Die Synchronisierung soll auch laufen wenn kein Windows PC an ist.

Sonst würde es ja auch ein einfaches Tool wie freefilesync tun.
 

s-tyle

Benutzer
Mitglied seit
30. Nov 2020
Beiträge
28
Punkte für Reaktionen
3
Punkte
3
Ich muss das hier mal aufwecken, ich habe quasi das gleiche Szenario.... Ich scanne an einen Fritz.NAS Ordner, weil immer immer an. Die Syno soll dann wenn sie an ist, regelmäßig dort im scan Ordner schauen, ob es neues gibt und das in einen Ordner auf der Syno schieben, aus dem dann weiter verarbeitet wird, sprich da sammelt es sich nicht an... Ich versuchs gerade mitm rsync script, bekomme es aber nicht hin
 

Fusion

Benutzer
Sehr erfahren
Mitglied seit
06. Apr 2013
Beiträge
14.164
Punkte für Reaktionen
915
Punkte
424
Was hast du denn konkret probiert?
Ist der Fritz Ordner in den Syno als remote Ordner eingehängt?
Wie sieht das Script aus?
 

s-tyle

Benutzer
Mitglied seit
30. Nov 2020
Beiträge
28
Punkte für Reaktionen
3
Punkte
3
Kurz mal vorab: Ich habe die Syno jetzt gut ne Woche, bin da also Newbie...
Ausgangslage ist ein MultiFunktiGerät, dass pdf an ein Netzwerkziel scant. Das Ziel ist ein USB Stick an der Fritz, weil die immer an ist und so keinerlei Rechner oder Aufwecken vom Netzlaufwerk nötig ist. Der Teil läuft seit langem,
Jetzt ist eine DS720+ im Haus, auf der synOCR läuft. Das klappt auch, wenn ich die pdfs vom Scanner manuell in den Eingangsordner (-> /volume1/scan/SRC/) schiebe.
Ich habe dann über Remote-Ordner bereitstellen (CIFS) den scan-Ordner der Fritz in die Syno eingebunden (-> /volume1/scan/fritz/). Ich sehe dann auch jeweils aktuell alle Dateien von der Fritz. SynOCR erkennt im Status auch die Anzahl an Dateien "todo", macht damit aber nichts. Im Thread für synOCR habe ich schon viel freundliche Hilfe von geimist erhalten, es scheint vermutlich am Zugriff auf die Dateien zu liegen, aber es gibt (zumindest für mich) kein wirklich wissen.
Aktuelle Idee war, über ein benutzerdefiniertes Skript im Aufgabenplaner die Syno, wenn Sie läuft, regelmäßig auf neue pdf in der fritz schauen zu lassen und diese dann in den synOCR Eingangsordner auf der Syno zu kopieren. Es klang so, als ob rsync dafür ein gutes Tool wäre.
Ich habe dann aus verschiedenen Quellen veruscht, ein entsprechendes Skript zu bauen,
#!/bin/sh

if [ "$1" = "-n" ]
then
DRY_RUN=-n
else
DRY_RUN=""
fi

rsync ${DRY_RUN} -avhP --stats --exclude='@eaDir' /volume1/scan/fritz/ /volume1/scan/SRC/
das liegt als Datei auf der Syno und ist im Aufgabenplaner eingebunden.
/volume1/scan/fritz2ds.sh >> /volume1/scan/log.txt
Wenn ich das ausführe passiert aber nix, ausser dass eine leere log.txt angelegt wird.
 

peterhoffmann

Benutzer
Sehr erfahren
Mitglied seit
17. Dez 2014
Beiträge
6.057
Punkte für Reaktionen
1.855
Punkte
254
Führe deinen Befehl (rsync ...) mal händisch auf der Konsole aus.

Kannst du den Ordner (/volume1/scan/fritz/) eigentlich nicht direkt in synOCR einbetten?
 

s-tyle

Benutzer
Mitglied seit
30. Nov 2020
Beiträge
28
Punkte für Reaktionen
3
Punkte
3
direkt einbetten war die "erste" Idee, klappt aber eben nicht... synOCR - GUI für OCRmyPDF

Konsole: rsync -avhP /volume1/scan/fritz/ /volume1/scan/SRC/ -> viele Dateien kopiert!

Die Dateien findet der synOCR Aufgabenplaner auch und verarbeitet dann... :)
Verarbeiten heisst aber, dass die pdf nach der Verarbeitung aus dem Ordner gelöscht wird.
Der nächste rsync kopiert die Datei von der Fritz wieder in den Eingangsordner, so wird sie dann wieder weiter verarbeitet, nicht so optimal...
Evtl. muss die Datei dann auf der Fritz gelöscht oder umbenannt werden (Präfix, mit dem die pdf von rsync mittels exclude ignoriert wird?)
 

s-tyle

Benutzer
Mitglied seit
30. Nov 2020
Beiträge
28
Punkte für Reaktionen
3
Punkte
3
Ergänzung...
jemand@irgendwo:/$ rsync -n -avhP --exclude='@eaDir' --exclude='/OLD/' --remove-source-files /volume1/scan/fritz/ /
volume1/scan/SRC/
sending incremental file list
MFC-5895CW_002845.pdf

sent 83 bytes received 15 bytes 196.00 bytes/sec
total size is 787.09K speedup is 8031.54 (DRY RUN)
jemand@irgendwo:/$ rsync -avhP --exclude='@eaDir' --exclude='/OLD/' --remove-source-files /volume1/scan/fritz/ /vol
ume1/scan/SRC/
sending incremental file list
Auf der Konsole tut es aus mir unerfindlichen Gründen nicht mehr. Mit -n den Dry Run macht es, zeigt die Test-Datei an, ohne -n geht es nach sending incremental file list nicht mehr weiter.
Vom Aufgabenplaner mal ganz zu schweigen.:unsure:
 

peterhoffmann

Benutzer
Sehr erfahren
Mitglied seit
17. Dez 2014
Beiträge
6.057
Punkte für Reaktionen
1.855
Punkte
254
Ich habe gestern Nacht das kurz mit meiner Fritzbox getestet. Obwohl ich als root unterwegs war, blieb sogar ein einfacher Befehl (mv) hängen. Danach hatte ich einen Load von 4,xx (normal unter 1,xx), aber in htop und top war kein Prozess sichtbar, der diese Last verursachte, sowie die CPU so gut wie im Leerlauf (idle). Den Load konnte ich nur durch den Neustart vom NAS beenden.

Ich habe im Moment leider keine Zeit dem auf den Grund zu gehen.
 

s-tyle

Benutzer
Mitglied seit
30. Nov 2020
Beiträge
28
Punkte für Reaktionen
3
Punkte
3
So, mal gute Nachrichten :)
#!/bin/sh

if [ "$1" = "-n" ]
then
DRY_RUN=-n
else
DRY_RUN=""
fi

rsync ${DRY_RUN} -ahP --exclude='@eaDir' --exclude='/OLD/' --remove-source-files /volume1/scan/fritz/ /volume1/scan/SRC/
als syncFB2DS.sh auf einem Linux Server als Datei angelegt und gespeichert und dann auf die Syno geschoben, im Aufgabenplaner eingebunden und ... läuft.
Das Log hatte Fehler bei "\r", das war mir noch von den Webserver-Programmierungen bekannt als Zeichensatzfehler iVm Windows vs. Linux...
Jetzt checkert er regelmäßig den fritz-Ordner und schaufelt das rüber auf SRC, von fritz wirds danach gelöscht, weil er es sonst bei der nächsten Runde wieder rüber kopieren würde, weil synOCR die Datei aus dem SRC Ordner entfernt bei der Verarbeitung...
Eleganter wäre freilich die Version, den eingebundenen Ordner einfach direkt nehmen zu können ohne Extra-Script, was das ganze einen Ordner weiter kopiert und entsprechend langsamer macht, weil das synOCR Script offensichtlich zeitgleich läuft und da noch nichts findet, also erst einen Zyklus später die Datei weiter bearbeitet...
Unterm Strich bleibt Verschönerungspotenzial, aber es läuft! (y):coffee:
 

tag

Benutzer
Mitglied seit
18. Jan 2021
Beiträge
32
Punkte für Reaktionen
2
Punkte
8
Eine Anregung hierzu: Im Aufgabenplaner habe ich kein auslösendes Ereignis "wenn Datei erscheint" finden können, oder geht das irgendwie?

Meine Variante ist die Benutzung von inotifywait aus den inotifytools. Ich benutze für sowas ein Skript, welches per Semaphore garantiert nur einmal läuft (singleton). Per crontab auf meiner DS218+ (geht vermutlich auch per Aufgabenplaner) wird dank Singleton nur (einmal je Stunde zum Beispiel) überprüft, ob die Überwachung noch aktiv ist und wenn nicht, ist das Skript wieder gestartet. Mit inotifywait -e close,_write, moved_to wird (beliebig lange) auf das "Erscheinen" einer Datei gewartet.

Bei meinem T85exifwait habe ich ein konfigurierbares T85exifsleep, das definiert die Anzahl Sekunden, die die neueste Datei (in meinem Fall Bild oder Film) mindestens alt sein muss, damit davon ausgegangen wird, dass der aktuelle Kopier-/Bewege-/Schreibvorgang sicher beendet ist. Solange sich das Verzeichnis ändert, wird der Vorgang nicht begonnen.

Ob diese Überwachung auch auf einem Fritzbox-Netzwerkpfad möglich ist, ist mir derzeit nicht bekannt. Das hängt von verschiedenen Faktoren ab, ein CIFS-Event kann meines Wissens ggf. ein inotify-Event auslösen, aber es hängt wohl von der Implementation von Server und Client ab. Die elegantere Lösung, die das NAS nicht regelmäßig beschäftigt, wenn nichts passiert, wäre es sicherlich.
 


 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat