also bevor mich jemand haut - ich hab mich dank dieses Forums und Google schon gut durchgefuchst (finde ich), aber dennoch scheiterts an einer letzten Hürde:
was ich geschafft hab:
per php exec() will ich eine Linux Bash Scriptdatei ausführen lassen -> geht
dieses Bashscript hab ich jetzt aber so erweitert, dass dieses Befehle an Screen sendet -> geht, ABER
Problem kurz:
dieses Bashscript sendet die Kommands aber nur an Screen, wenn ich dieses Script aus ssh ausrufe, nicht aber wenn es von php aus gestartet wird.
Situation:
die Verzeichnisse in denen sich die php und das Bashscript befinden gehören dem User "ftps", gruppe "server" und chmod 775
der Apache läuft als User wwwrun:server
screen -A -m -d -S meins
so starte ich die Screen Session auf die ich dann per php zugreifen will.
bashscript
Code: Select all
cp datei1.txt datei2.txt
screen -S meins -X readbuf /befehle.do
screen -S meins -X paste .
Code: Select all
echo test
wie gesagt, das Bashscript funzt einwandfrei, wenn aus der ssh ausgeführt und "echo test" wird von dem Programm in der Session interpretiert.
aber wenn das ganze aus php gestartet wird, wird der komplette screen teil ignoriert - das kopieren der Datei klappt trotzdem.
Abschließend:
Aus Erfahrung weiß ich, dass ich nicht gut erklären kann - also wenn was nicht verstanden wird, dann bitte nich einfach ignorieren, sondern fragen ^^
Danksagung:
Allen schonmal in Vorraus, die sich Zeit nehmen und sich das durchlesen und vielleicht sogar antworten :)
