A sessão interna ssh dentro da tela não tem cor

7

Eu estou tentando manter uma sessão ssh aninhada dentro de uma janela de tela / byobu, que eu também conecto a mais de SSH com Putty no Windows.

No entanto, a sessão SSH aninhada não tem cor. Aqui está o que eu estou falando:

À esquerda, você tem byobu conectado a wreckcreations sem cor. À direita, você tem o Putty conectado diretamente a wreckcreations com cor. Note que normalmente o byobu tem cor ao trabalhar localmente.

Eu tentei mexer com $TERM , $PSI e outras variáveis sem sucesso. Alguma idéia é o que causaria isso?

    
por TheLQ 23.01.2011 / 18:52

1 resposta

4

Pode ser muitas coisas.

Por favor, forneça a saída de:

echo $TERM
echo $LS_COLORS
typeset -p LS_COLORS
alias ls
tput setaf 1 | od -c
echo "$(tput setaf 1)red$(tput sgr0)"

Resultados esperados:

xterm (optional, see below)
no=00:... (or similar, should not be empty)
declare -x LS_COLORS="no=00:..." (ditto)
alias ls='ls --color=auto' (or similar)
0000000 033   [   3   1   m
0000005
red (in red)

Meu palpite: TERM está definido como algo incomum, e dircolors não sabe disso, portanto ls não sabe quais cores usar.

Se este for o caso, executando os comandos acima dentro de sua sessão de byobu / screen, você verá:

screen (or screen-something)
(nothing)
(nothing)
0000000 033   [   3   1   m
0000005
red (in red)

Confirme que este é o caso executando:

dircolors -p | grep "^TERM $TERM$"

Espero que não imprima nada.

A correção mais simples, dependendo da sua configuração, seria:

dircolors -p > ~/.dircolors
echo "TERM $TERM" >> ~/.dircolors
    
por 24.01.2011 / 07:58