Je me suis connecté à mon serveur via SSH et j'ai créé un processus, mais soudain ma connexion Internet s'est déconnectée. Je sais que le processus est en cours, mais comment restaurer la session précédente pour voir sa progression?
Je me suis connecté à mon serveur via SSH et j'ai créé un processus, mais soudain ma connexion Internet s'est déconnectée. Je sais que le processus est en cours, mais comment restaurer la session précédente pour voir sa progression?
Réponses:
Comme suggéré ci-dessus, à l'avenir, vous pouvez utiliser l'écran pour empêcher une telle chose. Une courte explication sur la façon d'utiliser l'écran:
screen -S compiling_stuff
./configure
screen -r comp
CTRL+A+D
Bonne chance
screen
est le meilleur pour démarrer une commande dans un terminal qui sera conservée lorsque vous vous en déconnecterez (soit volontairement, ctrl + ad, soit parce que la connexion s'éteint, etc.).
TOUTEFOIS, VOUS POUVEZ rattacher un processus en cours d'exécution (ex: le shell de votre session en cours d'exécution, s'il est toujours en cours d'exécution) à votre terminal actuel (c.-à-d., Rattacher stdin, stdout, clavier, mais aussi faire du nouveau terminal le terminal de contrôle pour cela processus) en utilisant: reptyr
Pour le meilleur des deux mondes: installez screen
, démarrez-le, puis rattachez ce processus dans ces sessions d'écran avec reptyr
^^
Je pensais juste mentionner http://mosh.mit.edu/
Application de terminal distant qui permet l'itinérance, prend en charge la connectivité intermittente et fournit un écho local intelligent et une modification de ligne des frappes utilisateur.
Mosh est un remplacement pour SSH. Il est plus robuste et réactif, en particulier sur les liaisons Wi-Fi, cellulaires et longue distance.
Utilisez screen
via ssh pour vous reconnecter ultérieurement à votre session.
Pour autant que je sache, il n'y a aucun moyen de se reconnecter à une session ssh fermée.
Je peux recommander Byobu :
Byobu est une amélioration pour les multiplexeurs de terminaux GNU Screen ou tmux qui peut être utilisée pour fournir une notification ou un état à l'écran ainsi qu'une gestion multi-onglets. Il vise à fournir une meilleure expérience utilisateur pour les sessions de terminal lors de la connexion à des serveurs distants.
Je recommanderais d'utiliser tmux :
Vous pouvez restaurer la session tmux via tmux attach
.
tmux est une application logicielle qui peut être utilisée pour multiplexer plusieurs consoles virtuelles, permettant à un utilisateur d'accéder à plusieurs sessions de terminal distinctes dans une seule fenêtre de terminal ou session de terminal distant. Il est utile pour gérer plusieurs programmes à partir d'une interface de ligne de commande et pour séparer les programmes du shell Unix qui a démarré le programme. [1] Il fournit plusieurs des mêmes fonctions que GNU Screen, mais est distribué sous licence BSD.