“Não é possível conectar-se ao servidor X” após o login do TTY

2

Estou usando o Ubuntu 13.10. Sempre que eu faço o login na linha de comando (tty1-tty6) recebo a seguinte saída:

Last login: ...
Welcome to Ubuntu 13.10 ...

Unable to connect to X server
Unable to connect to X server

E então o prompt normal. Eu estou querendo saber se existe uma maneira de rastrear o que está causando a mensagem "Não é possível conectar-se ao servidor X". Quais processos / arquivos são executados quando eu faço login dessa maneira?

    
por Pan Thomakos 22.01.2014 / 01:33

2 respostas

1

Você pode ignorar essas mensagens, se quiser. São tentativas do seu shell para estabelecer conexões com o seu desktop X (Unity).

Depuração

Se você for realmente levado a depurar esses recursos, poderá tentar ativar as mensagens de depuração em seus arquivos de configuração de login. Tente adicionar set +x aos seus arquivos .bashrc e .bash_profile ou quais arquivos de configuração já estão sendo usados pelo seu ambiente. Você pode desativá-lo assim, set -x .

Frequentemente, envolvo esses blocos de comandos dos quais quero ver uma saída mais detalhada.

Exemplo

No meu arquivo .bashrc .

...
set +x
# enable color support of ls and also add handy aliases
if [ -x /usr/bin/dircolors ]; then
    test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)"
    alias ls='ls --color=auto'
    #alias dir='dir --color=auto'
    #alias vdir='vdir --color=auto'

    alias grep='grep --color=auto'
    alias fgrep='fgrep --color=auto'
    alias egrep='egrep --color=auto'
fi
set -x
...

Agora, quando eu fizer login no sistema.

...
New release '13.04' available.
Run 'do-release-upgrade' to upgrade to it.

You have mail.
Last login: Tue Jan 21 19:15:05 2014 from greeneggs.bubba.net
++ alias 'll=ls -alF'
++ alias 'la=ls -A'
++ alias 'l=ls -CF'
++ alias 'alert=notify-send --urgency=low -i "$([ $? = 0 ] && echo terminal || echo error)" "$(history|tail -n1|sed -e '\''s/^\s*[0-9]\+\s*//;s/[;&|]\s*alert$//'\'')"'
++ '[' -f /home/manny/.bash_aliases ']'
++ shopt -oq posix
++ '[' -f /usr/share/bash-completion/bash_completion ']'
++ . /usr/share/bash-completion/bash_completion
+++ [[ himxBH == *v* ]]
+++ BASH_COMPLETION_ORIGINAL_V_VALUE=+v
+++ [[ -n '' ]]
+++ set +v
...
    
por 22.01.2014 / 01:52
1

Existem maneiras de rastrear isso. Primeiramente, você poderia usar strace em um comando "su -"; isso pode fazer o truque. Ou talvez um simples "bash -il" possa funcionar.

strace -f -o su.trace su - $(whoami)
strace -f -o bash.trace bash -il

Tente um (eu recomendo o bash primeiro) e veja se ele reproduz a saída. Observe que a opção "-o" redireciona a saída rastreada para um arquivo. Se você não está familiarizado com strace, a saída pode ser um pouco demais para filtrar.

Em segundo lugar, colocar instruções de depuração em scripts RC (como .bashrc) poderia ser usado para rastreá-las.

    
por 22.01.2014 / 02:06

Tags