Nohup
le nohup est une commande d'Unix qui est employée pour courir une autre commande tout en supprimant l'action du signal du HUP (décrochement), permettant la commande de continuer à courir après l'utilisateur qui publie la commande s'est déconnectée. Il est le plus employé souvent pour courir des commandes à l'arrière-plan comme démons produits qui iraient normalement à la borne vont à un dossier appelé le nohup.out s'il n'a pas été déjà réorienté.
Exemple
Le premier des commandes ci-dessous commence le programme abcd à l'arrière-plan de telle manière que la déconnexion suivante ne l'arrête pas.
$ d'abcd de nohup et sortie de $
Au-dessous de l'exemple montre comment réorienter le rendement à un dossier autre que nohup.
$ d'abcd de nohup > out.file et
Noter que ces méthodes empêchent le processus d'être envoyé à un signal de « arrêt » sur la déconnexion, mais si l'entrée/ouput est reçue pour ces dossiers, elles accrocheront toujours la borne. Voir ci-dessous pour une difficulté (les réorienter loin).
Les travaux existants
Quelques coquilles (par exemple coup ) fournissent un builtin de Shell de qui peut être employé pour empêcher SIGHUP étant envoyé aux travaux existants, même si ils n'ont pas été commencés par le nohup. En coup, ceci peut être obtenu en employant le disown - h job ; using le même builtin sans arguments enlève le travail de la table du travail, qui implique également que le travail ne recevra pas le signal. Nohuping backgrounded les travaux est par exemple utile une fois ouvert une session par l'intermédiaire du SSH , puisque les travaux backgrounded peuvent faire accrocher la coquille sur la déconnexion due à une condition de compétitivité. Ce problème peut également être surmonté en réorientant chacun des trois jets d'entrée-sortie :
myprogram > foo.err < /dev/null &
Solutions de rechange
Il y a d'autres manières d'accomplir le " ; garder le fonctionnement de programme tandis qu'on note l'out" ; capacité. Par exemple, vous pouvez lancer le programme à l'intérieur d'un écran de GNU de - dénommer le multiplexeur d'écran, et puis détacher l'écran. L'écran fonctionne indépendamment des sessions d'utilisateur, et peut être rattaché par n'importe quelle session de l'utilisateur. Ceci a l'avantage de pouvoir continuer à agir l'un sur l'autre avec le programme une fois rattaché (par opposition au nohup, qui ne peut pas rattacher des programmes nohup'ed).Une autre alternative serait d'employer le « setsid » qui lancera un programme en nouvelle session.
Voir également
le nohup fait partie de Coreutils de GNU .
| Random links: | Action d'étalage | Air de JMC | Ereğli TED Koleji | Félix Pyat | Hôpital de parc de Frimley | Nohup |