Bilder im Netz (via FTP) abspeichern ?

L I V E Stammtisch ab 20:30 Uhr im Chat
  • Hallo,

    ich möchte gerne meine Kamera als Webcam benutzen und dazu das Kamerabild jede Minute auf einen FTP-Server transferieren.

    Kann mir jemand sagen wie ich Zugriff auf einen FTP-Server bekomme bzw. wie ich so einen Job regelmäßig ausführen kann ?
    Er sollte natürlich auch automatisch starten wenn ich den RaspPi mal abschalte und neu aktiviere (Stromausfall)

    lG
    Gawan

  • Webcam und die Bilder auf einen FTP-Server?

    Meinst du vielleicht, dass du das Bild jede Minute auf eine, Server speichern möchtest, sodass andere es sehen können?
    Wenn ja, dann brauchst du einen Webserver und keinen FTP-Server.

    Die einfachste Möglichkeit, eine halbswegs ordentliche Internetanbindung vorausgesetzt: du setzt einen eigenen Webserver auf.

  • Ein Bash Script via Cronjob einmal die Minute ausführen, darin dann ein Foto machen und mit wput auf den FTP Server deiner Wahl hochladen. Es gibt im Netz haufenweise kostenlose Webspaceangebote die einen FTP-Account zur Verfügung stellen (Google befragen).

  • Hallo,

    ich habe einen Webspace und ich habe einen FTP-Zugang.

    Mir fehlt jetzt nur noch das Know-How ein Foto zu machen, abzuspeichern und raufzuladen.

    Drei Dinge soweit ich das sehe:

    * Wie starte ich alle x Minuten einen Job der mir ein Batchfile ausführt ?
    * Wie schreibe ich ein Batchfile das mir das Kamerabild abgreift und speichert (mit Datum und Uhrzeit)
    * Wie kopiere ich dieses Kamerabild mittels FTP auf meinen Server ?

    lG
    Gawan

  • Bash
    #!/bin/bash
    
    
    DATE=$(date +"%Y-%m-%d_%H%M")
    
    
    raspistill -vf -hf -o /home/pi/camera/$DATE.jpg


    Quelle: https://www.raspberrypi.org/documentation/…m/raspistill.md

    und darunter dann noch die Zeile mit wput:

    Code
    wput /pfad/zur/lokalen/datei ftp://NUTZERNAME:PASSWORT@DOMAIN.TLD/PFAD/VERZEICHNIS


    Quelle: https://wiki.ubuntuusers.de/wput

    also

    Code
    wput /home/pi/camera/$DATE.jpg ftp://NUTZERNAME:PASSWORT@DOMAIN.TLD/PFAD/VERZEICHNIS

    als ausführbahre Datei (chmod +x) abspeichern, bsp.

    Code
    /home/pi/picture.sh


    Dieser Code sollte dir ein Bild machen, mit Datum und Uhrzeit abspeichern und danach auf deinen FTP-Server hochladen. Sicherstellen das der Ordner "camera" existiert!

    Mit

    Code
    crontab -e

    einen Cronjob erstellen und hier folgendes eingeben:

    Code
    */5 * * * * /home/pi/picture.sh

    um es alle 5 Minuten auszuführen.

    Nicht getestet, sollte so (oder so ähnlich) aber hinhauen.

    LG Monoxid

  • Schau dir mal mein Script an
    Alle 5 Minuten wird ein Bild erstellt und auf meine Homepage geladen


    Dann noch einen Cronjob alle 5 Minuten laufen lassen.Der Rest geht automatisch

    http://nadja75.lima-city.de/

  • PERFEKT - Besten Dank an alle die mir geholfen haben !
    Ich habe jetzt einfach mal das für mich Nützlichste aller Tipps zusammengesammelt und ES FUNKTIONIERT :):)


    EDIT !!!

    Oje, zu früh gefreut - mit dem Cronjob stimmt was nicht.
    Mein /home/pi/camera/camera.sh erstellt brav die Bilder und überträgt sie auf den FTP-Server, aber nur wenn ich es manuell starte
    Jetzt hätte ich mir einen Eintrag gemacht in sudo crontab -e

    */1 * * * * /home/pi/camera/camera.sh

    Aber da kommt leider nichts raus ...

    Im cron.log steht abere jede Minute drinnen:
    (root) CMD ( cd / && run-parts --report /etc/cron.hourly)
    (root) CMD (/home/pi/camera/camera.sh)
    (pi) CMD (/home/pi/camera/camera.sh)
    (CRON) info (No MTA installed, discarding output)
    (CRON) info (No MTA installed, discarding output)

    Damit fange ich leider gar nichts an :(


    lG
    Gawan

    Einmal editiert, zuletzt von Gawan (29. Juli 2015 um 21:19)

  • Ich habe jetzt ein camera.sh skript, das funktioniert wenn ich es mit der HAnd ausführe, egal ob mit oder ohne root

    Wenn ich das ganze in sudo crontab -e eintrage, dann startet zwar das Skript, macht ein Foto, speichert es ab .... verbindet sich mit dem FTP Server .... aber dann steigt er einfach wieder aus ohne den PUT Befehle abgesetzt zu haben.
    Wie kann denn sowas sein ???

    Noch dazu wo es mit der Hand super klappt ... !?!?

  • Hallo,

    das Skript sieht so aus:

    Ich habe jetzt scho drei Varianten, einmal FTP mit PUT, einmal WPUT und einmal FTP mit MPUT

    Alle drei laufen wenn ich das Skript manuell starte (außer WPUT, der überträgt immer nur Bruchstücke)
    Aber mittels Cronjob läufts nicht.
    Meistens wird zwar das Bild erstellt und gespeichert, aber nie übertragen.

    Bin ratlos :|

  • Sieht so aus als ob du ins rootverzeichnis deines Webspace hochladen willst.Erstelle da mal ein Verzeichnis und wechsele nach dem ftp Login dahin.

    cd /default-website
    default-webseite ist in meinem Script das Verzeichnis wo mein Bild hinkopiert wird.Das heisst wirklich so...

    Ich weiss auch nicht ob PUT mit Wildcards umgehen kann (put $DATE.jpg oder mput $DATE.*)
    Wäre da nicht der selbe Dateiname nicht besser?Bei mir wird auch die alte Date immer überschrieben.Spart Platz auf dem Raspi und dem Webspace

  • Hallo,

    ok - das mit dem Ordner kann ich versuchen, aber warum gehts dann schon jetzt wenn ich das Skript manuell ausführe ??

    Ich möchte die letzten 100 Bilder am Webspace speichern und zum jeweiligen Datum/Uhrzeit in einer Webseite anzeigen, da muss ich Datum und Uhrzeit übergeben.


  • was jetzt ... hier oder im anderen Thread ... Du solltest Dich da mal entscheiden :fies:

    Finde ich auch. Im anderen Thread wurde von dbv (ungefähr hier) beschrieben, dass du absolute Pfade verwenden solltest.
    Vielleicht sollte man bei einem Thread bleiben :) . Dann kann man sich auch darauf konzentrieren, was als Hilfe angeboten wird.


    Da ich seit Jahren kein (unsicheres) FTP mehr verwende weiß ich nicht genau, ob

    Code
    mput /home/pi/camera/$DATE.jpg

    funktioniert. Wenn nicht, dann vor der Zeile mit dem mput folgende Zeile

    Code
    lcd /home/pi/camera

    einfügen. (Das kleine L vorne nicht vergessen)

    Berechtigungen müssen natürlich passen. Eventuell an den Gegebenheiten anpassen :D

    HTH

    Viele Grüße
    Olaf

    Wer nicht gekennzeichnete Rechtschreibfehler findet darf sie gerne behalten..

  • @korky
    wie gesagt - ich hab PUT versucht, klappt manuell, MPUT auch manuell, WPUT klappt, lädt aber nur Fragmente von JPGs rauf
    Das ist der Teil den ich einfach nicht kapiere - warum klappts manuell ?

    Die Berechtigungen sollten ja die gleichen sein wenn ich das Skript im sudo /etc/crontab mit root aufrufe, oder ?

    Ich sehe ja auch im Log dass er eine Verbindung herstellt zum Server, nur macht er dann einfach nichts damit ...

    bayernsunny
    Aktuell jede Minute (zum Testen).
    Die Übertragung von ca. 40 KB dauert aber keine 2 Sekunden
    Automatisch zusammengefügt:

    Ok, 10 EUR für den der mir das Problem löst :)
    Paypal, im Briefkuvert, Amazon Wishlist ... mir egal

    Einmal editiert, zuletzt von Gawan (31. Juli 2015 um 22:03)

Jetzt mitmachen!

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