J'utilise PuTTY pour interagir avec le serveur Linux. J'ai démarré un processus utilisant PuTTY. Le processus est en cours et prendra 5-6 heures. Je souhaite que ce processus continue à fonctionner après la fermeture de la session PuTTY. Comment puis-je maintenir ce processus actif après la fermeture de la session PuTTY? Je ne veux pas garder l'ordinateur allumé tout le temps. Y a-t-il un moyen de faire ça?.
J'utilise screen pour ce genre de choses. En fait, parfois, je le laisse assez longtemps pour pouvoir revenir à ce que je faisais.
^Z
bg %1
disown -h %1
Le '-h' rend le processus immunisé contre SIGHUP lorsque la session est terminée.
Utilisez la commande Nohup
. Il suffit de le préfixer à votre commande et il sera démonisé de sorte qu’ils ne s’arrêtent pas lorsque vous vous déconnectez/mettez fin à votre session Shell. La sortie standard sera par défaut dans un fichier nommé Nohup.out. Consultez la page de manuel de Nohup(1)
pour plus d'informations.
Démarrer le processus avec Nohup "processname" &
. Vous pouvez également le détacher avec screen
ou tmux
.
Les solutions ci-dessus sont assez bien décrites, mais aucune d’entre elles n’a fonctionné jusqu’à ce que j’ai également modifié la configuration de PuTTY pour:
Activer TCP keepalives (option SO_KEEPALIVE)
Je n'avais vu cela nulle part ailleurs et je l'ai trouvé par essais et erreurs.
Ctrl + z Envoie le processus en cours à l'arrière-plan.
De plus, vous pouvez ajouter & à la fin de votre commande pour s’exécuter en arrière-plan
Comment garder weblogic actif après la fermeture de la fenêtre de PuTTY:
Étapes simples: après la connexion via PuTTY, suivez les étapes ci-dessous:
startWebLogic.sh
.screen
et appuyez sur Enter (un nouvel écran s'ouvrira)../startWebLogic.sh
.screen -r
.Si vous souhaitez que le programme contenu dans le processus s'exécute toujours ou fréquemment en arrière-plan, vous pouvez le coder pour le séparer du terminal de contrôle (rendre ce comportement contrôlable via un indicateur d'option) et s'exécuter en arrière-plan.
C'est une solution à long terme, bien sûr, pas pour le processus en cours.
Vous pouvez utiliser &
après le lien.
Exemple:
[localhost ~ ]# wget http://www.link.com/download/download.Zip &