GNU/Linux >> Linux Esercitazione >  >> Linux

Come recuperare una shell dopo una disconnessione

Non c'è modo, ma per evitare ciò mi piace usare tmux . Avvio tmux, avvio l'operazione e vado per la mia strada. Se torno e scopro che la connessione è stata interrotta, tutto ciò che devo fare è riconnettermi e digitare tmux attach .

Ecco un esempio.

$ tmux
$ make <something big>
......
Connection fails for some reason
Reconect

$ tmux ls
0: 1 windows (created Tue Aug 23 12:39:52 2011) [103x30]

$ tmux attach -t 0
Back in the tmux sesion

I consigli per tmux e screen sono entrambi buoni suggerimenti. Implicano la risposta alla tua domanda, ma in realtà non la affermano. La risposta alla domanda è:non c'è modo. Se accedi tramite ssh, la shell viene terminata quando la connessione si interrompe. La soluzione è accedere e avviare immediatamente un terminale virtuale di qualche tipo (questo può essere fatto con strumenti come dtach , abduco , tmux o screen ). Quando la connessione si interrompe, la shell in cui ti trovi è terminata, ma puoi aprire una nuova shell e riconnetterti al terminale virtuale che sta eseguendo la shell in cui stai effettivamente svolgendo il tuo lavoro.


Come ha detto William, la risposta breve è no, non c'è modo. Per evitare questo puoi usare il comando screen prima di perdere la connessione


Linux
  1. Ssh:come eseguire uno script immediatamente dopo la connessione tramite Ssh?

  2. Come integrare il comando Mv dopo il comando Trova?

  3. Come recuperare dopo che Kate si è schiantata?

  4. Come recuperare/uccidere una sessione Ssh dopo aver perso la connessione?

  5. Come modificare (permanentemente) la shell predefinita dopo l'accesso su un Ttyn specifico in Linux?

Come installare tmux su Linux

Come modificare una shell utente in Linux

La barra di stato di Tmux è danneggiata dopo aver catturato un file binario, come ripristinarlo?

Come mantenere le sessioni SSH remote in esecuzione dopo la disconnessione

Come si esce da una connessione SSH?

tmux:come associare una chiave per avviare il comando shell?