Forum: PC-Programmierung Linux, Dateien älter als 60min. auf FTP schieben


von Mark (Gast)


Lesenswert?

Hallo,

ich bin nicht so der Linux Freak, habe aber ein System (Ubuntu) welches 
mir ein Haufen Daten generiert welche ich stündlich verschieben (auf 
einen FTP im selben Netz) sollte. Also ich möchte einen Cronjob haben 
der mir alle Dateien einen Verzeichnisses verschiebt welche älter als 
eine Stunde sind und bei erfolgreicher Übertragung die Quelldaten 
löscht.
Älter als eine Stunde deshalb, weil ich dann sicher bin das diese 
Dateien nicht mehr geändert werden.
FTP ist für mich hier die einfachste Variante, NFS scheitert evt. daran 
das ich nicht sicherstellen kann das die Benutzer die gleiche UID haben.

kann mir jemand Helfen?

Vielen Dank
Mark

von Gerd E. (robberknight)


Lesenswert?

Schau Dir mal den Befehl "find" an, damit kannst Du die Dateien 
selektieren die älter als 60 Min sind und für jede von denen über den 
"-exec"-Parameter einen anderen Befehl aufrufen lassen.

Damit könntest Du dann z.B. curl aufrufen, welches die Dateien per FTP 
kopiert.

Wobei ich von FTP eher abraten würde und statt dessen WebDAV empfehlen 
würde. Da hast Du nicht diesen ständigen Ärger mit aktivem und passiven 
FTP, es müssen keine zusätzlichen Verbindungen für den Transfer geöffnet 
werden und es kann auch ganz einfach mit SSL eine Verschlüsselung 
realisiert werden.

FTP ist als Protokoll ganz klar auf dem absteigenden Ast und ich würde 
es nicht mehr für Neuentwicklungen verwenden.

von Daniel A. (daniel-a)


Lesenswert?

Ungetestet, aber das find-commando könnte etwa so aussehen:
1
find /pfad/zu/dateien/ -maxdepth 1 -mmin +60 -type f -execdir curl -s -T "{}" "ftp://user:password@server/directory/{}" \; -delete

von Imonbln (Gast)


Lesenswert?

der Klassiker Unter Linux Daten auf einen anderes System zu schieben ist 
rsync, ggf in Kombination mit SSH. Ich würde dir daher erstmal zu diesen 
raten wenn es nicht Rahmenparameter gibt welche gegen rsync sprechen.

Vielleicht wäre es für dich auch eine Option den Remote Server via sshfs 
zu Mounten und dann direkt die Daten Remote zu schreiben.

In wieweit kannst du in das Generieren der Datei eingreifen. vielleicht 
ist es viel einfacher den Datei Generator so anzupassen das er Pro 
Stunde ein neues Verzeichnis als Basis nimmt, oder beim schließen der 
Dateien diese in ein anderes Verzeichnis verschiebt, das würde denn teil 
mit den Verschieben der nicht mehr gebrauchten Dateien enorm 
vereinfachen.

Die Ketzerische Nerd Frage ist außerdem, ist das Kunst oder Kann das 
weg? wenn die Dateien auf dem Ubuntu gelöscht werden stehen sie den 
Prozess, so wie so nicht zur Verfügung, je nach Art der Daten muss man 
sie Ja nicht Komplett woanders speichern sondern es reichen die 
Parameter welche zur Erzeugung geführt haben. oder ein Komprimiertes 
Destillat.

Beitrag #5103763 wurde vom Autor gelöscht.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.