Hallo liebes Forum,
bevor ich zu meinem Problem komme, muss euch vermutlich erst mal etwas über das Projekt erzählen.
Ich nutze eine PI-Cam mit IR-Filter-Switch.
Mit dieser Cam und einem PI möchte ich eine Überwachungskamera realisieren.
Ich nutze dafür Motion und das funktioniert so auch fehlerfrei.
Diese Kamera lässt sich über die /boot/config.txt steuern.
Bei Tag soll der IR-Filter nicht genutzt werden - also trägt man in die config.txt disable_camera_led=0 ein.
Bei Nacht soll das Gegenteil erfolgen - also disable_camera_led=1.
Hier beginnt mein Problem.
Ich wollte über "crontab -e" einen Shellscript aufrufen, der die aktuelle "/boot/config.txt" umbenennt und die korrekte einsetzt.
Also bei Tag-Modus:
mv config.txt config_night.txt
sleep 5
mv config_day.txt config.txt
sleep 5
sudo reboot now
Und im Nachmodus:
mv config.txt config_day.txt
sleep 5
mv config_night.txt config.txt
sleep 5
sudo reboot now
Ich habe festgestellt, dass die Scripte mit in dasselbe Verzeichnis müssen, da Sie sonst die config.txt nicht umbenennen können.
Fand ich eigentlich nicht so geil, weil ich meine Skripte gern unter /home/pi hätte, aber ich war es leid kryptischen Fehlermeldungen nachzugehen.
So liegen die beiden Sctipte also in "/boot".
Die zeitliche Steuerung wollte ich über Crontab realisieren.
Also unter "sudo crontab -e" folgendes eingetragen:
10 20 * * * sudo sh /boot/cammodenight.sh
10 6 * * * sudo sh /boot/cammodeday.sh
Inhalt eines Scriptes: (hier wechsel von Nacht zu Tagmodus)
#!bin/bash
mv config.txt config_night.txt
sleep 5
mv config_day.txt config.txt
sleep 5
sudo reboot now
Nun komme ich zu meinem Problem.
Crontab ist nicht in der Lage, den Sctipt auszuführen, obwohl ich 777 auf die entsprechenden Dateien gelegt habe und alles mit sudo aufrufe.
Gibt es vielleicht eine elegantere Lösung, um in der Config.txt den Eintrag "disable_camera_led=0" in "disable_camera_led=1" zu ändern?
Wenn ich meine Scripte manuell ausführe funktioniert alles. Warum funktioniert es nicht mit Crontab?
Warum ist es nicht möglich aus dem Verzeichnis /home/pi mit einem Script Dateien im Verzeichnis /boot/ mit mv umzubenennen?
Vielen Dank für eure Hilfe.
Grüße
Ukognos