Webseite soll Fotos vom USB stick anzeigen

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

    ich habe mir jetzt ein Kameramodul zugelegt und würde gern die Fotos auf einem USB-Stick speichern und dann über die installierten apache anzeigen lassen.

    Wenn ich die Fotos unter /var/www ablege werden diese von meinem php script angezeigt.
    Leider habe ich auf der SD-Karte nicht so viel Platz, daher war meine Idee einen Usb-Stick anzuschließen und die aufgenommen Fotos dort zu speichern.

    Ich habe auch schon versucht über symbolische links den Ordner auf dem USB Stick in den Ordner www zu bringen aber leider funktioniert dies nicht. Dann war noch die Idee die userdir.conf vom apache so zu ändern das man auf den USB Stick "zugreifen" kann.

    Meine Frage:
    Wie schaffe ich, dass ich die Daten auf dem USB-Stick über eine php/html Seite anzeigen kann?
    Kann ich einen weiteren www Ordner dem apache hinzufügen?

    Dann wäre da noch eine Frage: Wie kann ich über eine html/php Seite befehle wie "raspistill -o image.jpg" oder "shutdown -h 0" ausführen?
    Ich weiss, dass shutdown -h 0 sicherlich sicherheitskritisch ist aber jedes Mal sich per ssh anmelden, um den PI runterzufahren nur um den Strom auszumachen ist lästig....

    Bin gespannt auf Eure Lösung(en).

    Grüße
    Stefan

  • Mounte den Ordner des USB-Sticks einfach noch mal nach /var/www/. Beispiel:

    Code
    mount --bind /media/usbfestplatte/fotos/familienfest /var/www/familienfest

    Quelle: Download anbieten


    Zur 2.Frage siehe: FAQ --> Nützliche Links / Linksammlung --> Befehle über PHP mit root Rechten ausführen

  • Hallo zusammen,

    Dann wäre da noch eine Frage: Wie kann ich über eine html/php Seite befehle wie "raspistill -o image.jpg" oder "shutdown -h 0" ausführen?
    Ich weiss, dass shutdown -h 0 sicherlich sicherheitskritisch ist aber jedes Mal sich per ssh anmelden, um den PI runterzufahren nur um den Strom auszumachen ist lästig....

    Ich schreibe mir für solche Fälle ein kleines Script auf einen USB-Stick, der ausgeführt wird, sobald ich ihn einstecke.

    In diesem Beispiel würde das Script z. B. den Befehle enthalten:

    sudo shutdown -h now

    Mit anderen Aufgaben geht das ganz analog.

  • Danke schön :)

    1. Mounten ist ne gute Idee ;)

    mount --bind /media/usb /var/www/usb
    --> Hat funktioniert aber leider (vielleicht wegen den Rechten) hab ich keinen Zugriff auf usb :-/
    Die Rechte kann ich leider nicht ändern... Ne Idee?

    2. muss ich noch ausprobieren...

  • USB-Stick hat als Dateisystem FAT32
    Welches Dateisystem wäre denn am besten?

    Der Usb-Stick wurde nach der Anleitung
    http://krausens-online.de/debianraspbian…atisch-mounten/
    eingebunden.

    Ich habe jetzt auch das mit dem Shutdown ausprobiert leider komme ich da auch nicht weiter...
    Eigentlich habe ich es genau so gemacht, wie es in der Anleitung steht.
    Wenn ich in der Kommandozeile "sudo /var/sudowebscript.sh dingens" einegbe bekomme ich das richtige Ergebnis
    Wenn ich das über die php Seite mache, dann steht in $output eine 1.
    Wenn ich anstatt
    exec('sudo /var/sudowebscript.sh dingens', $output, $return_var);
    schreibe
    exec('ls -l', $output, $return_var);
    dann bekomme ich auch das richtige Ergebnis.

    Daher versteh ich nicht wo es hängt. Es kann eigentlich nur an den Rechten liegen aber die /etc/sudoers hab ich erweitert.

    Grüße
    Stefan

    Einmal editiert, zuletzt von Darkghost (17. Oktober 2014 um 21:26)

  • FAT32 ist ein Windows Format, das versteht nicht die Linux-Rechte. Wenn dann musst du den Stick mit Angabe der Option zB "umask=0777" mounten damit jeder alle Rechte hat, oder den Stick mit einem Linux-Format formatrieren

    In $output steht das was ausgegeben wurde, in $return_var der Exitcode.

    Zeig mal bitte deinen Code

  • Hallo meigrafd,

    vielen Dank für Deine Unterstützung:

    Dann denke ich mal das es an dem FAT32 liegt.
    usbmount hat die folgende Einstellung:
    FS_MOUNTOPTIONS="-fstype=vfat,gid=users,dmask=0007,fmask=0117"

    Wie kann ich das ändern, dass alle Schreibrechte haben?

    Code Befehl ausführen über php:
    Beim Kopieren hier in den Beitrag ist mir aufgefallen, dass im Eintrag in der sudoers.d nicht das richtige scriptname steht....
    Es stand
    www-data ALL=NOPASSWD:/var/sudoscript.sh
    anstatt
    www-data ALL=NOPASSWD:/var/sudowebscript.sh
    in der Anleitung wurden mehre Möglichkeiten vorgestellt und ich muss das dann gemischt haben.

    Eigentlich hätte ich da schon vorher drauf kommen können, dass war die einzige Stelle wo der Fehler hätte sein können aber muss ich immer überlesen haben :-/

    Grüße
    Stefan

Jetzt mitmachen!

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