在我详细讨论我的问题之前,有一个 debian 邮件列表似乎解释了原因 - https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=854414
安装 Debian 9 后,登录远程 shell 会导致错误消息 "screen.xterm-256color: unknown terminal type"
。在某些情况下,键入export TERM=xterm-256color
可以解决问题。
当我登录远程控制台并运行一些命令时,会出现apt-get xxx
错误消息,并且 apt 还会添加WARNING: terminal is not fully functional
- (press RETURN)WARNING: apt does not have a stable CLI interface yet. Use with caution in scripts.
我注意到,当我Ctrl-Alt F1
直接按下执行这些命令时,问题并不存在,因此我认为Konsole
Debian 9 的默认配置中存在错误或缺失可能是问题所在,我的其他研究似乎也支持这一点。
问题出现的次数更多zsh
,bash
但我认为.bashrc
几年前我对配置所做的一些更改可能会修复它。
我想过进行一些更改,.screenrc
但阅读了一些地方,因为 Konsole 是必须进行更改的终端。
我的 Konsole 设置中可能存在哪些缺陷?它们是否来自 X11 配置中设置的默认值?
答案1
当你跑步时screen
,它设置TERM
环境变量内shell,更喜欢使用外shell 的TERM
变量作为起点,例如,
screen.$TERM
你的外壳被设置为xterm-256color
(实际上是不正确),并screen
找到了screen.xterm-256color
(来自ncurses-term
包裹。当您连接(在screen
)到未安装该终端描述的远程计算机时,您将遇到类似问题中列出的问题。
(错误报告是相关的,但那个长线程中的基本问题是记者未能理解各种终端确实不是采取同样的行动——包维护者给出了合理的回应)。
顺便说一句,有一个ncurses 6.1 中的功能,它可以轻松用于使用 ncurses 6.1 将终端描述传递到其他机器。但这对于 (a) 不使用 ncurses 的应用程序或 (b) 未安装 ncurses 6.1 的计算机没有帮助。事实上,对于后者来说,这会产生新的问题。当这种情况发生时,ncurses 常见问题解答中将出现对优缺点的讨论。