Lorsque je SSH dans un autre système et que j'appuie sur Ctrl- Z, je m'attendais à ce que le client SSH passe en arrière-plan. Cependant, c'est le processus distant qui fait cela. Où se passe la magie?
Lorsque je SSH dans un autre système et que j'appuie sur Ctrl- Z, je m'attendais à ce que le client SSH passe en arrière-plan. Cependant, c'est le processus distant qui fait cela. Où se passe la magie?
Réponses:
Le client SSH désactive la gestion des touches spéciales ( stty -icanon -isigoptions) pour le terminal local, donc lorsque vous appuyez sur CtrlZ, le client lit simplement l'octet brut 0x1Aet le transmet au serveur.
OpenSSH prend en charge une commande spéciale pour suspendre le client - Enter, puis ~, suivi de CtrlZ.
Ctrl-Zest modifié au lieu qu'un nouveau ~ Ctrl-Zsoit ajouté pour arrêter le processus distant?
~?pour obtenir une liste complète des codes d'échappement. Vous pouvez modifier le caractère d'échappement à l'aide de -e lorsque vous démarrez ssh. (ceci s'applique à openssh, utilisé sur la plupart des systèmes GNU.)