A volte la mia sessione ssh nel terminale si blocca. Come posso uscire dalla sessione ssh e riconnettermi?
Digita ~.
(cioè tilde, punto) all'inizio di una riga. In altre parole, premi Invio , quindi ~ , quindi . . (In alcune lingue, potresti dover premere Maiusc o Alt per inserire il carattere ~
.)
In generale, il carattere ~
è un carattere di escape in una sessione SSH quando lo digiti all'inizio di una riga. Digita Invio quindi ~?
per visualizzare l'elenco dei comandi di escape. I più comuni sono
~.
per terminare la connessione ~^Z
(premere ~ quindi Ctrl + Z ) per sospendere la connessione e digitare un comando localmente (eseguire il comando fg
per restituire alla sessione SSH) Se vuoi una tilde all'inizio di una riga, premi ~ due volte.
Se la tua sessione è bloccata e il prompt non è più reattivo puoi semplicemente uccidere l'istanza di Terminal e tutti i processi figli associati a quell'istanza, di cui la tua sessione ssh è uno, dovrebbero essere assunti insieme ad esso.
Se vuoi davvero essere completo, puoi aprire una nuova istanza di Terminal, cercare sessioni ssh nell'elenco dei processi e ucciderli tramite la riga di comando:
> ps -ef |grep ssh
501 1332 142 0 20Dec11 ?? 0:01.33 /usr/bin/ssh-agent -l
501 57172 57150 0 1:58pm ttys000 0:00.01 grep ssh
501 57139 57133 0 1:57pm ttys002 0:00.03 ssh -i/Users/ian/code/ec2-keys/id_rsa-gsg-keypair [email protected]
> kill 57139
Se non funziona, prova:
> kill -9 57139
Non uccidere il processo ssh-agent
.
Oppure puoi aprire Activity Monitor e cercare lì le sessioni e premere il pulsante kill per loro:
Tutto ciò che devi fare per uscire da una sessione ssh è digitare exit
al prompt.
Prova ad inserire Maiusc + ' + .
~. funziona, anche se sembra essere completamente bloccato, interrompe la connessione ssh e puoi riavviarlo, ma nella mia tastiera devo premere Alt + ~ quindi spazio e poi.
Leggi altre domande sui tag ssh