Risposta breve:digita exit
Se ciò non funziona, tuttavia...
Carattere di escape SSH e sequenza di disconnessione
La maggior parte delle implementazioni SSH implementa un carattere di escape per le sessioni interattive, simile al Ctrl-]
di telnet combinazione. Il carattere escape SSH predefinito è ~
, inserito all'inizio di una riga.
Se vuoi terminare una sessione OpenSSH interattiva che è bloccata e non può essere chiusa inserendo exit
o Ctrl D in una shell sul lato remoto , puoi inserire ~
seguito da un punto .
. Per essere sicuri di inserire il carattere di escape all'inizio di una riga di input, è necessario premere prima Invio. Quindi, nella maggior parte dei casi, la seguente sequenza terminerà una sessione SSH:
Invio ~ .
Altre sequenze di escape
OpenSSH, per esempio, offre altre sequenze di escape oltre a ~.
. Digitando ~?
durante una sessione dovrebbe darti un elenco. Alcuni esempi:
~
seguitoCtrl-Z
sospende la sessione,~&
lo mette direttamente in background,~#
fornisce un elenco di connessioni inoltrate in questa sessione.- Se vuoi semplicemente inserire una tilde all'inizio di una riga, devi raddoppiarla:
~~
.
Il carattere di escape può essere modificato utilizzando l'opzione della riga di comando -e
. Se imposti il valore speciale -e none
, l'escape è disabilitato e la sessione è completamente trasparente.
Vedi anche la pagina man di OpenBSD su ssh (cui si fa riferimento da www.openssh.org) sotto -e
opzione della riga di comando
Come esco da una connessione SSH?
Due modi:
- chiudendo la sessione shell di solito si esce, per esempio:
- con il comando integrato della shell,
exit
, seguito da Invio o - Ctrl -d , (fine file)
- con il comando integrato della shell,
- nel caso in cui tu abbia una cattiva connessione e la shell non risponda, premi Invio chiave, quindi digitare
~.
e ssh dovrebbe chiudersi immediatamente e tornare al prompt dei comandi.
La prima opzione dovrebbe essere intuitiva, ma come facciamo a sapere la seconda opzione?
Potremmo apprendere queste informazioni da un'attenta lettura della pagina man.
$ man ssh
ci fornisce la documentazione SSH, che contiene la seguente sezione sui caratteri di escape:
ESCAPE CHARACTERS
When a pseudo-terminal has been requested, ssh supports a number of
functions through the use of an escape character.
A single tilde character can be sent as ~~ or by following the tilde by
a character other than those described below. The escape character
must always follow a newline to be interpreted as special. The escape
character can be changed in configuration files using the EscapeChar
configuration directive or on the command line by the -e option.
The supported escapes (assuming the default ‘~’) are:
~. Disconnect.
~^Z Background ssh.
~# List forwarded connections.
~& Background ssh at logout when waiting for forwarded connection
/ X11 sessions to terminate.
~? Display a list of escape characters.
~B Send a BREAK to the remote system (only useful if the peer sup‐
ports it).
~C Open command line. Currently this allows the addition of port
forwardings using the -L, -R and -D options (see above). It
also allows the cancellation of existing port-forwardings with
-KL[bind_address:]port for local, -KR[bind_address:]port for
remote and -KD[bind_address:]port for dynamic port-forwardings.
!command allows the user to execute a local command if the
PermitLocalCommand option is enabled in ssh_config(5). Basic
help is available, using the -h option.
~R Request rekeying of the connection (only useful if the peer
supports it).
~V Decrease the verbosity (LogLevel) when errors are being written
to stderr.
~v Increase the verbosity (LogLevel) when errors are being written
to stderr.
Non c'è niente di speciale in exit
a ssh, è solo un modo per uscire dalla shell, che comporta la chiusura della sessione ssh:
$ type exit
exit is a shell builtin
$ help exit
exit: exit [n]
Exit the shell.
Exits the shell with a status of N. If N is omitted, the exit status
is that of the last command executed.
Citare e citare fonti di riferimento serve a fornire ulteriori prove per quella che altrimenti sarebbe un'affermazione di fatto forse dimostrabile, oltre a informare l'utente dove possono essere archiviate informazioni più rilevanti.
Vuoi sapere che stai facendo semanticamente la cosa corretta, oltre a sapere che funziona.
Non vuoi imparare a invocare come funzionalità qualcosa che è documentato come un bug e poi "risolto". Fare la cosa semanticamente corretta continuerà a essere supportato.
Vuoi uscire dalla shell SSH?
Puoi digitare exit
e premi Invio o usa Ctrl +Re