Hallo zusammen.
Ich habe folgendes Problem:
Ich habe nach der Anleitung hier im Forum(link) eine Schaltung gebaut um die Elro-Funksteckdosen zu schalten. Um Plattform unabhängig zu bleiben, habe ich jedoch vor diese über PHP zu schalten. Zum Beispiel kann ich dann mein NAS ein oder ausschalten (zb wie hier) o.ä. über ein Webinterface. Ich habe auch ein Temperatursensor in der Schaltung untergebracht, was auch ohne Probleme funktioniert über exec(....).
Genau so habe ich mir vorgestellt die Steckdosen zu schalten. Hier habe ich schon folgende "Meilensteine" erreicht:
- über ./send .... auf der Konsole funktioniert es
- logge ich mich mit su www-data ein geht das ebenso
- mit php einschalten.php funktioniert das auch
Was ich gemacht bereits probiert habe:
- in var/www/ ist alles auf chown www-data:www-data
- ich habe in etc/sudoers/ www-data als root eingetragen (auch wenn ich hier noch bauchweh habe)
- den Befehl in ein Script umgewandelt und das Script ausgeführt
Meine einschalten.php sieht so aus:
der Apache2 log sagt:
"sudo: no tty present and no askpass program specified"
Was ich einfach nicht verstehen will, ist warum er nicht den Shellbefehl ausführen will. Die Temperatur stellt er ja auch richtig dar. Der Code hier ist so ähnlich:
das temp1 Script:
mir will einfach nicht in mein Kopf gehen, warum der Befehl ./send ... nicht ausgeführt wird, wenn ich sie von "draußen" aufrufen will. es geht ja scheinbar alles und mehr Rechte kann ich nicht vergeben.
Könntet ihr mir da weiterhelfen?
Ich sitze schon ein paar Tage an diesem Problem.:@
SORRY FOR LONG POST