Crie um alias em seu .bashrc / .bash_aliases (dependendo de como seus arquivos de recurso de login estão configurados):
alias x='export DISPLAY="127.0.0.1:$(echo $DISPLAY | sed '"'"'s/.*:\(.*\)//'"'"')"'
Em seguida, digite x
no logon.
(Observe que isso lida com o fato de que para cada novo pedido de encaminhamento X feito ao SSHD no host remoto o número atribuído à sua sessão X é incrementado, então pode ser: 10.0 ou pode ser: 11.0 etc).
Você pode colocar o comando de exportação em seu .login
, mas isso afetará ALL logins não apenas aqueles feitos de massa de vidraceiro.
EDIT: O OP perguntou por que isso funciona. Eu diria que você tem um alias no seu dispositivo de loopback do endereço 127.0.1.1 e o endereço de loopback padrão como o endereço da interface principal (um ifconfig
confirmaria isso). A maioria dos dispositivos loopback será padronizada para um 127.0.0.0/8 netblock e, portanto, o roteamento estará no local para apontar / 8 através do dispositivo lo:
127.0.0.0/8 dev lo scope link
localhost (como você já apontou) resolve através do seu /etc/hosts
e aponta para o endereço 127.0.1.1 e, portanto, esse é o IP que a maioria dos serviços usará. Você pode ser capaz de alterá-lo para resolver para 127.0.0.1, mas isso provavelmente também envolveria reiniciar todos os seus serviços que utilizam o endereço 127.0.1.1 ( netstat -an
mostrará isso) depois de ter alterado no seu arquivo hosts.