Antes de entrar nos detalhes do meu problema, há uma lista de discussão do debian que parece explicar a causa- https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=854414
Após instalar o Debian 9, fazer login em shells remotos resulta na mensagem de erro "screen.xterm-256color: unknown terminal type"
. Em alguns casos, digitar export TERM=xterm-256color
corrige o problema.
Quando eu entro em um console remoto e executo alguns comandos como apt-get xxx
a mensagem de erro WARNING: terminal is not fully functional
aparece e o apt também adiciona- (press RETURN)WARNING: apt does not have a stable CLI interface yet. Use with caution in scripts.
O que eu noto é que quando eu pressiono Ctrl-Alt F1
para executar esses comandos diretamente os problemas não estão lá, então eu assumo que há algo errado ou faltando na Konsole
configuração padrão do Debian 9 pode ser o problema e minha outra pesquisa parece apoiar isso.
O problema surge mais zsh
do que bash
, mas presumo que alguma alteração que fiz na .bashrc
configuração anos atrás possa estar corrigindo-o.
Eu pensei em fazer algumas alterações, .screenrc
mas li em algum lugar porque o Konsole é o terminal que é onde as alterações devem ser feitas.
Quais poderiam ser as falhas na configuração do meu Konsole, e elas poderiam ser provenientes de padrões definidos na configuração do X11?
Quando você executa
screen
, ele define aTERM
variável de ambiente para o shell interno , preferindo usar a variável do shell externoTERM
como ponto de partida, por exemplo,Seu shell externo foi definido como
xterm-256color
(o que na verdade está incorreto ) escreen
encontrou uma descrição de terminal parascreen.xterm-256color
(noncurses-term
pacote. Quando você se conecta (emscreen
) a uma máquina remota sem essa descrição de terminal instalada, você terá problemas como os listados na pergunta .(O relatório do bug é relevante, mas o problema básico nesse longo tópico é que o relator não conseguiu entender que os vários terminais realmente não agem da mesma forma - os mantenedores do pacote deram respostas razoáveis).
A propósito, há um recurso no ncurses 6.1 , que pode ser facilmente usado para passar descrições de terminal para outras máquinas usando o ncurses 6.1. Mas isso não ajudaria com (a) aplicativos que não usam ncurses, ou (b) máquinas onde o ncurses 6.1 não está instalado. Na verdade, para este último, criaria novos problemas. Quando isso acontecer, uma discussão dos prós/contras aparecerá no FAQ do ncurses.