# shell_exec() bricht ab



## Passer (18. Juni 2009)

Hallo,

ich plage mich momentan damit rum, dass ich per Script Videos mit FFMPEG umwandeln möchte.

Starte ich den Befehl in der Konsole (als root) klappt es lange (zwar dauert es, aber irgendwann ist er fertig)

Wenn ich nun den selben Befehl per
shell_exec(); 
aufrufe, bekomme ich weder Daten zurück, noch wird das Video vollständig umgewandelt, was mich vemruten lässt, dass der Befehl während seiner Ausführung abgebrochen wird.

Nun wüsste ich gerne warum. Gibt es PHP bzw Apache Einstellungen, die ich checken sollte?


MfG
Christoph

Update:
max_execution_time	10000	10000
max_input_time	10000	10000
Quota->auch noch genügend vorhanden

Update:
Blick ins error_log:
"built on Jun 18 2009 09:44:12, gcc: 4.1.2 20070925 (Red Hat 4.1.2-27)
sh: line 1: 30901 Killed                  /usr/bin/ffmpeg"

Wenn ich jetzt wüsste, warum der Prozess gekilled wurde...hat jemand eine Idee?

Update:
inzwischen bin ich drauf gekommen, den Befehl mal nicht als root, sondern als ein anderer User händisch auszuführen. Auch dort findet "irgendwann innerhalb von 500 Sekunden ein KILL statt.
=> irgendwas auf dem Server killt nicht-root Prozesse.

Hat jemand eine Idee?

(PS. Bitte ins Linux Forum verschieben, da das Problem weniger beim Apache/PHP liegt, als wie jetzt vielmehr vermutet in Linux)


----------



## saftmeister (18. Juni 2009)

Schau mal hier: http://www.ss64.com/bash/ulimit.html

Sprich gib mal an der Command line für einen unpriviligierten User ulimit mit den verschiedenen Parameter ein, die dafür in Frage kommen (maximum amount of virtual memory bspw. oder auch maximum amount of cpu time in seconds).


----------



## Passer (19. Juni 2009)

ulimit -a
core file size          (blocks, -c) 200000
data seg size           (kbytes, -d) 200000
scheduling priority             (-e) 0
file size               (blocks, -f) unlimited
pending signals                 (-i) 32601
max locked memory       (kbytes, -l) 32
max memory size         (kbytes, -m) 200000
open files                      (-n) 100
pipe size            (512 bytes, -p) 8
POSIX message queues     (bytes, -q) 819200
real-time priority              (-r) 0
stack size              (kbytes, -s) 8192
*cpu time               (seconds, -t) unlimited*
max user processes              (-u) 20
virtual memory          (kbytes, -v) 200000
file locks                      (-x) unlimited
-------------------------------------

Das ist die Ausgabe

Sieht nicht so aus, als ob es das ist, oder?

--

Das war jetzt die Ausgabe vom Testuer. um mich als nobody einzuloggen bzw diesen Befehl auszuführen fehlt es mir dannn doch an LinuxKonsolenkenntnissen.

Desweiterne würde ich diese Limits doch gerne mal einsehen bzw editieren. irgendwo müssen die ja stehen. evt sind 200 MB VMem ja doch zu wenig. Wissentlich wurde an dem System nichts geändert und bis vor ein paar Wochen hat es auch noch wunderbar funktioniert!?

MfG
Passer

Update
eine Script Endlosschleife, die nichts macht ausser
d=1 (halt irgendwas)
wird auch nach einigen Minuten beendet.

Vermutung
Scheinbar wird irgendwas alle 10 aufgerufen, dass USerProzesse killt, die sich vermeindtlich aufgehangen haben/100% CPU verbrauchen?


----------

