当我使用我的帐户(具有 sudo 权限)通过 ssh 进入另一台 Ubuntu 计算机时,我的退格键按下时会产生一些奇怪的符号。此外,Tab、Del 和箭头键不起作用。
另一方面,我在同一台机器上还有另一个帐户,当我通过该帐户进行 ssh 时,它的终端工作正常。我不明白为什么会发生这种情况。
答案1
编辑:参考: Mateng's回答
Mateng 比较接近,因为我认为你可能正在运行 Bourne Shell。但你不应该/etc/passwd
直接编辑文件。请尝试使用以下chsh
命令:
chsh -s /bin/bash
-s 标志将使新的 shell(在本例中为 Bash)成为您的登录 shell。
答案2
当你第一次 ssh 登陆时,尝试这两个命令
stty sane
export TERM=linux
我必须在一些机器上这样做才能解决这个问题
答案3
以下更改帮我解决了这个问题。首先,我检查了哪个 shell 正在运行:
$ echo $0
返回:
/bin/sh
正如我在本文中所读到的在 Ubuntuforums 上发帖,更改 shell 以/bin/bash
带来解决方案。因此,我将用户设置编辑为/etc/passwd
:
johndoe:x:1001:104:John Doe:/home/johndoe:/bin/bash
我退出后又重新登录。奇怪的是,我必须手动切换 shell(可能是某些缓存处于活动状态),输入以下命令:
/bin/bash
瞧!
[该问题因发行版更新而出现。]
答案4
“Gbnome Terminal” 并不完全模拟“xterm”...
GNOME 终端模拟 xterm 终端仿真器并提供一些相同的特征。
关于该问题及其解决方案的论文可以在这里找到:
每个 Linux 用户迟早都会陷入这样的境地:控制台和 X 上的 Backspace 和 Delete 键似乎无法使用。本文解释了为什么会发生这种情况并提出了解决方案。这里给出的概念基本上与发行版无关:由于每个发行版中的系统配置文件内容大不相同,我将尝试为读者提供足够的知识,以便在必要时想出自己的修复方法。
我认为 Backspace 键应该后退一个字符,然后删除光标下的字符。另一方面,Delete 键应该删除光标下的字符,而不移动它。如果您认为这两个键的功能应该互换,尽管大多数键盘的 Backspace 键上都有一个指向左侧的箭头 (←),那么本文不会为您提供直接的解决方案,但您肯定会发现此处给出的解释很有用。
给出的最简单的解决方案(可能在这里有效)是使用:bash$ 导出 TERM=gnome