199 votes

Comment faire un programme continue à fonctionner après la déconnexion de ssh ?

<blockquote> <p><strong>Doublon possible :</strong><br> <a href="http://stackoverflow.com/questions/285015/linux-prevent-a-background-process-from-being-stopped-after-closing-ssh-client">Linux : Empêcher un processus en arrière-plan d’être arrêté après avoir fermé le client SSH</a> </p> </blockquote> <p>J’ai un programme qui prend beaucoup de temps pour terminer. Il s’exécute en tant que root ssh.<br>Je veux qu’il continue à fonctionner après je logout, est-ce possible et comment pourrait y parvenir ?</p>

412voto

Dennis Williamson Points 105818

En supposant que vous avez un programme en cours d'exécution dans le premier plan, appuyez sur ctrl-Z, alors:

[1]+  Stopped                 myprogram
$ disown -h %1
$ bg 1
[1]+ myprogram &
$ logout

Si il n'y a qu'un emploi, alors vous n'avez pas besoin de spécifier le numéro de job. Suffit d'utiliser disown -h et bg.

Explication des étapes ci-dessus:

Vous appuyez sur ctrl-Z. Le système suspend l'exécution du programme, affiche un nombre d'emplois et un "Arrêté" message et vous renvoie à une invite bash.

Vous tapez l' disown -h %1 de la commande (ici, j'ai utilisé un 1, mais que vous souhaitez utiliser le numéro de travail qui a été affiché dans l' Stopped message), qui marque le travail de manière à ce qu'elle ignore SIGHUP du signal (il ne sera pas arrêtée par la déconnexion).

Ensuite, tapez l' bg commande à l'aide du même numéro de travail; il reprend l'exécution du programme en arrière-plan et un message s'affiche pour confirmer que.

Vous pouvez maintenant vous déconnecter et il continuera de fonctionner..

106voto

paxdiablo Points 341644

Avez-vous essayé d’utiliser `` et il fonctionne à l’arrière-plan ?

44voto

Janusz Points 52607

J’essayerais d’écran.

19voto

diciu Points 18634

Démarrer en arrière-plan :

Et renier le travail avant de vous connecter :

14voto

Matthew Flaschen Points 131723

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X