Pi: Wie regelmäßig neueste Datei auf FTP sichern?

KeinProblem

Ensign
Registriert
Okt. 2013
Beiträge
191
Hi,

ich bin recht neu mit dem Raspberry Pi unterwegs und habe da ein Projekt, bei dem regelmäßig Bilder erstellt werden. Das geht alles mit Cronjobs schon sehr gut. Jetzt möchte ich nur, wenn ich mal nicht da bin, kontrollieren können, ob alles noch so läuft wie ich mir das vorstelle.

Dazu möchte ich gerne einen Cronjob erstellen, der mir in regelmäßigen Abständen das neueste Bild in einen geschützten Ordner auf einem FTP-Server hochlädt. Damit der mir nicht alles zumüllt wäre es schön, wenn er das Bild einfach austauscht, also das alte vom FTP löscht und das neue speichert (die Namen sind immer andere, macht aber auch nichts wenn er die Datei lokal kopiert, umbenennt und anschließend hochlädt). Es soll auf einem externen FTP-Server liegen, da ein Fernzugang in das Netzwerk hier keine Option ist.

Er soll also einfach in den Hauptordner schauen und scannen, welche Datei innerhalb des Ordners und dessen Unterordnern zum entsprechenden Zeitpunkt die zuletzt erstellte ist und diese dann hochladen.

Auf dem Pi läuft ein aktuelles Pi OS Bullseye.

Hat wer eine Idee wie sich das machen lässt?

Danke schonmal :)
 
Mach dir ein Bash Skript, circa so:
Bash:
cd MeinOrdner
ls -Art | tail -n 1 | cp ${1} WohinAuchImmer/Dateiname.png
# Send result to healthchecks.io

Tippe das gerade am Handy, musst den Code noch anpassen. Kannst sonst aber mal nach bash suchen, da findest du genug Beispiele.

Vorher natürlich noch Mount und danach umount nutzen
 
KeinProblem schrieb:
Er soll also einfach in den Hauptordner schauen und scannen, welche Datei innerhalb des Ordners und dessen Unterordnern zum entsprechenden Zeitpunkt die zuletzt erstellte ist und diese dann hochladen.
Natürlich kannst du per cron regelmäßig alle Bilder scannen und das neueste identifizieren, aber prinzipiell kannst du das auch direkt in deinem bestehenden cronjob abfrühstücken, der die Bilder überhaupt erst erstellt. Dort könnte zB das Bild einmal einsortiert und einmal stets auf zB "current.jpg" kopiert werden.

Wie auch immer, das neueste Bild im aktuellen Ordner würdest du zum Beispiel damit finden:

ls -t | head -n 1

Rekursiv mit Unterordnern müsste es mit

ls -tR | head -n 1

funktionieren. Nicht getestet, nur aus dem Kopf.


Anschließend das gefundene Bild auf FTP-Server hochladen. Ich möchte aber davor warnen, nacktes FTP zu verwenden. FTP ist nicht verschlüsselt und sogar der Login wird in Klartext übertragen. SFTP oder (zur Not) FTPS sind daher Pflicht, wenn man Wert auf seine Daten legt. Via ssh/scp geht's natürlich auch. Wird im Link ausreichend beschrieben.
 
Zurück
Oben