vermutliches Rechteproblem

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • Hallo,
    irgendwie gehe ich wohl falsch an die Sache ran.

    Ein Skript soll Grafiken in einen entfernten Ordner schreiben. Wenn ich das händisch starte, tut es das auch. Wenn es via Crontab aufgerufen wird, wird der Zugriff auf den Ordner verweigert.
    Das Skript heißt "/home/pi/skripte/temperaturen/bilder", gehört pi : pi mit den Rechten 40755.
    Der Zielordner heißt "/home/pi/public_html/grafiken" , gehört pi : pi mit den Rechten 40755.

    Code
    #! /bin/bash
    # Eintageswert
    rrdtool graph /home/pi/public_html/grafiken/temp1day.png \
      -s 'now - 1 day' -e 'now' -t '1 Tag' -w '450' -h '150' -A -W 'Temperaturen' \
    ...


    Der Eintrag bei crontab -e lautet (als pi ausgeführt):

    Code
    # Temperaturmessung
    2-57/5 * * * * /home/pi/skripte/temperatur/gettemp.py >> /home/pi/skripte/temperatur/gettemp.log 2>&1
    3-58/5 * * * * /home/pi/skripte/temperatur/ ./bilder >> /home/pi/skripte/temperatur/bilder.log 2>&1

    Während gettemp.py ordentlich abgearbeitet wird, erzeugt ./bilder im Log den Eintrag "/bin/sh: 1: /home/pi/skripte/temperatur/: Permission denied"

    Viele Grüße
    DocAdams

    1x RaspberryPi 2, 1x RaspberryPi 3, 1x OpenELEC, 1x RaspberryPi 4 mit ioBroker ,

  • Danke für den Tipp.
    Jetzt kommt eine andere Fehlermeldung im Log. Das Skript und die RRD-Datenbank liegen im gleichen Verzeichnis. Trotzdem kommt die Meldung:

    "ERROR: opening 'werte.rrd': Datei oder Verzeichnis nicht gefunden"

    Die betreffende Zeilen lauten:

    Code
    rrdtool graph /home/pi/public_html/grafiken/temp1day.png \
      -s 'now - 1 day' -e 'now' -t '1 Tag' -w '450' -h '150' -A -W 'Temperaturen' \
      DEF:temp0=werte.rrd:temp0:AVERAGE \

    Auch die werte.rrd gehört pi : pi und hat die Rechte 40755

    Wie gesagt, händisch gestartet wird das Skript abgearbeitet, nur nicht automatisch per crontab.

    Viele Grüße
    DocAdams

    1x RaspberryPi 2, 1x RaspberryPi 3, 1x OpenELEC, 1x RaspberryPi 4 mit ioBroker ,

  • ich mache das grundsätzlich immer anders:

    ==> ein script schreiben (ausführbar!), wo der/die Befehle drin sind
    ==> im cron steht nur der script-aufruf

    In deinem Fall: script.sh

    Bash
    #!/bin/bash
    cd /home/pi/skripte/temperatur/
    ./bilder >> bilder.log 2>&1
    Code
    3-58/5 * * * * /home/pi/skripte/temperatur/script.sh

    damit stehst du immer im richtigen Verzeichnis und deine Pfadauflösung funktioniert...
    Aussdem ist da schneller mal was geändert :thumbs1:

Jetzt mitmachen!

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