J'ai certains appareils connectés à un serveur Cisco de terme série; beaucoup fonctionnent bien quand je telnet
directement au port sur le Cisco. Cependant, j'ai quelques appareils tenaces qui ne seront pas utilisés Backspacecar ils sont mappés dans telnet par défaut.
Au cas où cela compte, je telnet rxvt
sous la compression Debian (dans une fenêtre X). TERM
est réglé sur rxvt
, mais il n'a pas d' importance si je l' utilise vt100
, vt101
ou xterm
... changement TERM
n'a pas d' effet. J'ai commencé sur la voie du changement en TERM
fonction de ce que j'ai vu dans une ancienne FAQ Kermit . FWIW, stty erase ^h
et stty erase ^?
ne fonctionnent pas non plus.
J'ai remarqué que cela Backspacefonctionne correctement sur ces appareils si j'utilise un socket TCP brut de netcat
... ie nc 192.168.12.117 2006
; cependant, je rencontre d'autres problèmes avec des mots de passe non masqués ou la pagination du terminal.
Comment puis - je forcer sélectivement telnet et ssh à la carte Backspaceà CtrlHces dispositifs? De plus, quels critères dois-je utiliser pour évaluer s'il s'agit d'un bogue dans l'appareil?
ÉDITER
Dans le cas où cela est important, c'est la sortie de showkey -a
pour les touches en question ... ^?
correspond à Backspaceet ^H
est CtrlH. Il semble que je devrais être proche quand je regarde le Linux Keyboard and Console Howto , mais je n'arrive pas à déchiffrer ce que je peux faire pour changer cela. J'ai essayé diverses incantations loadkeys
sans résultat.
[mpenning@hotcoffee docs]$ sudo showkey -a
Press any keys - Ctrl-D will terminate this program
^? 127 0177 0x7f
^H 8 0010 0x08
J'inclus également les sorties pertinentes de dumpkeys
... c'est le mappage actuel dans mon système (qui ne fonctionne pas sur certains appareils en question). Si je pouvais comprendre comment Backspacefaire la même chose que CtrlH, j'aurais une solution.
[mpenning@hotcoffee docs]$ sudo dumpkeys | grep -Ei "backspace|127"
keycode 8 = BackSpace ampersand braceleft
keycode 14 = BackSpace Delete
control keycode 14 = BackSpace
keycode 127 =
[mpenning@hotcoffee docs]$
ssty erase '^?'
? Si les appareils insistent surC-h
ce n'est pas l'appel de telnet, c'est celui du terminal (émulateur).