Comment récupérer le terminal après avoir suspendu un ordinateur via SSH?

14

J'ai très souvent SSH dans un ordinateur juste pour l'envoyer en veille. Le problème est que lorsqu'il dort, il maintient la connexion SSH ouverte (apparemment indéfiniment). Voici ce qui se passe:

oli@bert:~$ ssh tank
oli@tank:~$ sudo pm-suspend
[sudo] password for oli:

Je mets mon mot de passe, frappe Returnet puis il se bloque ... Jusqu'à ce que je réveille la machine distante.

Existe-t-il un moyen de forcer une déconnexion localement pour que je puisse récupérer mon terminal sans avoir à le fermer et en démarrer un autre?

Oli
la source
Oli: Selon ce que vous faites, pouvez-vous utiliser screen ou envoyer une commande via ssh? Vous pouvez également utiliser une clé avec une commande forcée.
Panther
1
Voir aussi: askubuntu.com/q/35719/158442
muru

Réponses:

14

Entrez les codes d'échappement SSH! De man ssh:

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.

 ~&      Background ssh at logout when waiting for forwarded connection /
         X11 sessions to terminate.

Alors: appuyez sur Enter~..

muru
la source