J'ai des processus lourds et longs exécutés sur des machines Linux distantes. J'utilise mon ordinateur portable pour SSH sur ces machines et exécute les processus depuis mon canapé.
MAIS, lorsque je veux arrêter mon ordinateur portable, je suis en difficulté car les processus distants sont tués.
J'ai fait mes recherches et j'ai découvert que "l'écran" est une excellente solution pour moi, ça l'est! (Tant que je n'arrête pas mon ordinateur portable). N'y a-t-il pas un moyen de "conserver" les sessions "écran" pour que je puisse les fermer puis les rattacher à une session?
linux
ssh
gnu-screen
Sathyajith Bhat
la source
la source
Réponses:
Il semble que vous exécutiez la session d'écran sur votre ordinateur portable. Passer ensuite de cette session d'écran aux hôtes distants. L'arrêt de l'ordinateur portable va tuer le processus d'écran local, qui tue à son tour la session ssh.
Ce que vous voulez faire, c'est passer de votre ordinateur portable aux hôtes distants. Ensuite, démarrez une session d'écran sur l'hôte distant. Lorsque votre ordinateur portable est éteint, la session ssh mourra, mais la session d'écran à distance persistera.
La prochaine fois que vous vous connecterez au système distant, vous pourrez vous reconnecter à la session d'écran avec "screen -r" ou si vous avez plusieurs sessions d'écran "screen -r <pid>".
Remarque: si vous avez oublié de vous détacher de la session d'écran distante avant que ssh ne soit tué, la session d'écran peut penser qu'elle est toujours attachée. Dans ce cas, vous devrez faire "screen -dr <pid>" pour détacher la session en premier.
la source
Ctrl+A
suivi deD
lorsque vous êtes enscreen
détacher la session d'écran.Vous pouvez utiliser
nohup
pour démarrer un processus qui doit continuer à s'exécuter après votre déconnexion d'une machine. C'est peut-être ce que vous recherchez.la source
disown
créer ce que je crois être un effet équivalent.disown
est un bashisme qui peut ou non être disponible sur d'autres coques.nohup
. Le problème,^Z
c'est qu'il interrompt le processus. Il n'y a aucun moyen d'arrière-plan d'un processus mais de le faire fonctionner sans hoquet.Si vous détachez la session à distance
screen
, vous pouvez arrêter votre ordinateur portable en toute sécurité.la source
Le point d'écran est de l'exécuter sur le serveur et de le détacher avec CTRL+ A+ D.
la source
Utilisez nohup. Un autre choix pour utiliser VNC. Créez une session VNC sur le serveur. Connectez-vous ensuite à chaque fois que vous travaillez. (Plus utile lorsque le long processus utilise une interface graphique - un IDE par exemple)
la source
Si ces serveurs ont un KVM à distance ILO / DRAC / Other, etc., vous pourrez peut-être vous connecter à la console et y interagir. Étant donné que les sessions lancées sont essentiellement locales, la suppression de la connexion de votre ordinateur portable ne fera rien.
la source