GNU/Linux >> Tutoriels Linux >  >> Linux

Comment faire en sorte qu'un programme continue à s'exécuter après la déconnexion de ssh ?

En supposant qu'un programme s'exécute au premier plan, appuyez sur ctrl-Z , puis :

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

S'il n'y a qu'un seul travail, vous n'avez pas besoin de spécifier le numéro du travail. Utilisez simplement disown -h et bg .

Explication des étapes ci-dessus :

Vous appuyez sur ctrl-Z. Le système suspend le programme en cours d'exécution, affiche un numéro de travail et un message "Stopped" et vous renvoie à une invite bash.

Vous tapez le disown -h %1 commande (ici, j'ai utilisé un 1 , mais vous utiliseriez le numéro de travail affiché dans le Stopped message) qui marque le travail afin qu'il ignore le SIGHUP signal (il ne sera pas arrêté par la déconnexion).

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

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


Vous devriez essayer d'utiliser nohup et l'exécuter en arrière-plan :

nohup sleep 3600 &

J'essaierais l'écran du programme.


Linux
  1. Comment faire en sorte que ssh se connecte avec le bon utilisateur ?

  2. Comment exécuter une commande après la fin d'une commande existante déjà en cours d'exécution ?

  3. Comment exécuter automatiquement des commandes lors de la connexion SSH ?

  4. Comment me déconnecter de `sudo su` ?

  5. Empêcher la tâche Linux en cours d'exécution d'être tuée après la déconnexion de SSH

4 façons de maintenir une commande en cours d'exécution après la déconnexion de la session SSH

Comment empêcher SSH d'expirer

Comment se déconnecter d'une session Ubuntu [Astuce du débutant]

Comment maintenir les sessions SSH à distance en cours d'exécution après la déconnexion

Comment déconnecter un utilisateur de SSH sous Linux

Comment vérifier si une tâche Cron a été exécutée (journal Crontab)