J'ai un script PHP avec une boucle infinie. J'ai besoin de ce script en cours d'exécution pour toujours. Donc, je cours et cela fonctionne en arrière-plan dans le contexte de sécurité de mon utilisateur actuel. Mais lorsque je ferme la fenêtre du terminal (déconnexion), Centos Linux tue mon programme. p> Je vois deux suppositions: courir d'un autre utilisateur en arrière-plan ou faire un démon. J'ai besoin d'aide dans chaque situation. P> Merci beaucoup! p> p>
5 Réponses :
NOHUP est votre ami.
nohup command &
Je pense que la solution générale à celle-ci est NOHUP CODE>
: < / p>
NOHUP est une commande POSIX pour ignorer le signal HUP (Hangup), permettant à la commande de continuer à courir après que l'utilisateur qui délivre la commande a déconnecté. Le signal HUP (Hangup) est par convention comme un terminal avertit en fonction des processus de déconnexion. P>
NOHUP est le plus souvent utilisé pour exécuter des commandes en arrière-plan comme des démons. Sortie qui irait normalement au terminal va dans un fichier appelé nohup.out s'il n'a pas déjà été redirigé. Cette commande est très utile lorsqu'il est nécessaire d'exécuter de nombreux travaux de lots inter-dépendants. P> blockQuote>
NOHUP est votre ami. P>
vous pourriez: p>
system_daemon code> li>
- Utilisez Cron si le travail par lots convient mieux au scénario (rappelez-vous simplement de vérifier les instances d'exécution avant de lancer une autre, la concurrence de l'IFF est un problème) LI>
- EDIT: ou comme tout le monde et leur frère vient de dire,
nohup code> li>
ul>
Utiliser la commande
nohup
Par exemple
Nohup Phantomjs Highcharts-Convert.js -host 127.0.0.1 -Port 3003 &
Ici "Phantomjs Highcharts-Convert.js -host 127.0.0.1 -Port 3003" était ma commande p>
duplicailler possible de Stackoverflow.com/Questtions/285015/...