Wenn ich mich mit meinem Konto (mit Sudo-Berechtigungen) per SSH bei einem anderen Rechner mit Debian anmelde, erzeugt meine Rücktaste beim Drücken einige merkwürdige Symbole. Auch die Tasten Tab& delfunktionieren nicht.
Andererseits habe ich auf derselben Maschine noch ein weiteres Konto und wenn ich über dieses Konto SSH verwende, funktioniert dessen Terminal einwandfrei. Ich konnte nicht herausfinden, warum das passiert.
Antwort1
Neben der „stty“-Lösung können Sie die „TERM“-Lösung ausprobieren.
Sie greifen von einem Terminal (Putty, Solaris DTerm, Debain XTerm usw.) per SSH auf Ihr Debian zu. Dieses Terminal kündigt seine Funktionen (einschließlich Tasten wie Backspace und Tab) über die Umgebungsvariable TERM an.
Stellen Sie also nach dem SSH zum Unix-Host (es hängt nicht von Debian oder einem anderen Host ab) die Variable TERM entsprechend Ihrem Terminal ein. Nehmen Sie an, Sie verwenden Bash als Shell und VT100 als Terminal:
export TERM=vt100
PS: TERM sollte automatisch über SSH angekündigt werden, aber unter bestimmten Umständen schlägt dieser Zauber fehl.
Antwort2
Ich habe solche Probleme schon einmal gesehen.
Nehmen wir zum Beispiel die Rücktaste. Der Remote-Host erwartet, dass ein bestimmtes Zeichen als „Löschen/Rücktaste“ verwendet wird. Wenn Sie die Rücktaste im Terminal drücken, sendet das Terminalprogramm ein bestimmtes Zeichen an den Remote-Host. Wenn die vom Remote-Host erwarteten Zeichen von den vom Terminalprogramm gesendeten Zeichen abweichen, tritt dieses Problem auf. Eine schnelle Lösung ist die folgende:
- Führen Sie den Befehl
#stty -a
auf dem Remote-Host aus und suchen Sie in der Ausgabe nach dem, was ein Löschcode sein soll. Sagen Sieerase=^?
. - Drücken Sie im Terminal Ctrl+ vund dann die Rücktaste. Sie sehen, welcher Code als „Löschen“ gesendet wird. Sagen Sie, es ist
^H
. - Führen Sie auf dem Remote-Host aus
#stty erase ^H
.
(Hinweis: Verwenden Sie Ctrlv+ Backspace, geben Sie das ^ nicht manuell ein.)
Sie können das Tab-Problem wie oben beschrieben beheben.
Antwort3
Dies liegt daran, dass Ihre Standard-Shell ist. sh
Um zu verwenden bash
, führen Sie es einfach bash
von Ihrer Shell aus aus.
bash
So legen Sie es bash
als Standard-Shell fest:
chsh -s /bin/bash
oder
sudo chsh -s /bin/bash yourusername
Antwort4
Ihre Shell ist möglicherweise auf /bin/sh
statt auf/bin/bash