J'ai la même question qu'ici mais même au-delà.
Si je me déconnecte / quitte la connexion SSH, mon programme doit être exécuté en arrière-plan. Avant de quitter, je tape bg
et jobs
pour vérifier la tâche en arrière-plan, mais après avoir quitté SSH, le programme ne s'exécute pas, il se ferme lorsque je ferme la fenêtre SSH.
Que puis-je faire si je veux que mon programme continue à fonctionner après la fermeture de la fenêtre SSH? Je l'utilise nohup
screen
mais cela ne fonctionne pas non plus ou est-ce que je manque quelque chose?
<br/>
à votre message. Faites juste des paragraphes si nécessaire. Et tant que vous y êtes, utilisez labg
ounohup
lors de l'utilisationscreen
. Aussi cette question est liée.Réponses:
Lorsque vous utilisez,
screen
vous devez vous détacher avec CTRL+A+ Davant de quitterssh
.Sinon, si vous souhaitez exécuter un processus directement avec screen, vous pouvez utiliser
-d
démarre une session d'écran et s'en détache immédiatement-m
force la création d'une nouvelle session d'écran-S
vous permet de donner un nom à la session-L
active la connexion à~/screenlog.0
Exemple:
Vous pouvez alors soit:
reprendre plus tard en utilisant
screen -x workstuff
ou
vérifier le fichier journal
less -r ~/screenlog.0
la source
Utilisez
tmux
. Je ne suis même pas sûr siscreen
est encore en développement actif. C'est un peu une question de préférence, mais en tant que personne qui l'utilisetmux
, je peux témoigner que l'installation a duré environ 5 minutes et a parfaitement fonctionné.Sur un système basé sur Debian (sur la machine distante):
sudo apt-get install tmux
puis entrez
tmux
pour entrer, exécutez le processus dont vous avez besoin, puis appuyez sur Ctrl+ Bpuis D(cela laisse la session tmux). Ensuite, vous pouvez vous déconnecter de SSH.Lorsque vous devez revenir / vérifier à nouveau, démarrez SSH et entrez
tmux attach
. Cela vous ramènera à votretmux
session.tmux
a beaucoup plus de capacités, comme détaillé ici. Mais, cela devrait résoudre votre problème immédiat.Bonne chance!
la source
Enfin, je l'ai résolu en utilisant
screen
:En mode écran, détachez-le avec CtrlAD. Ensuite, vous pouvez fermer la fenêtre SSH.
la source
nohup use: La première des commandes ci-dessous lance le programme abcd en arrière-plan de manière à ce que la déconnexion suivante ne l'arrête pas.
la source