phpbar.de logo

Mailinglisten-Archive

[php] Signale und system()

[php] Signale und system()

Andreas Schröder andreas.schroeder at oracle.com
Mit Jun 21 11:15:08 CEST 2006


> Hallo,
>
> Bin in diesem Bereich nicht ganz so bewandert, daher ein vielleicht ein
> naiver Einwurf...
> was ist mit ignore_user_abort? Oder ist das auf HTTP beschränkt (Du hast
> glaube ich geschrieben, daß Du mit der CLI-Version arbeitest)?
>
> http://at.php.net/manual/de/function.ignore-user-abort.php
>
> Albin
>   


Ich habe es mit ignore_user_abort() versucht. Die system()-Funktion 
lässt sich trotzdem abbrechen.
Bei passtru() ist es auch nicht anders. Irgendwie ist alles bei php-cli 
ein wenig anders.

Ich würde es ja auch im Hintergrund laufen lassen, aber der Nutzer wird 
automatisch nach der Beendigung des PHP-Skriptes ausgeloggt.
Das Ganze ist eine Art Rescue-System, in das man nur bootet, wenn man 
ein Backup oder Restore einer Parttion vornehmen will. Wenn der Nutzer 
nun denkt, dass alles abgearbeitet ist, obwohl der Prozess ja noch im 
Hintergrund weiterläuft, würde er vielleicht schon zu früh den Rechner 
neu starten.

.bachrc des Nutzers:

trap '' 2
~/rescue.php
PID=`pidof dd | awk '{print $1}'`
wait $PID
logout

-> Das geht leider auch nicht. Die Bash sagt dann "wait: pid 15990 ist 
not a child of this shell".


Gruss, Andreas

php::bar PHP Wiki   -   Listenarchive