Eu tento iniciar uma sessão de tela e conectar-me a três máquinas diferentes com o mesmo usuário.
Aqui está o que eu tenho na minha .screenrc
screen -t "machine1" 0 ssh user@machine1
screen -t "machine2" 1 ssh user@machine2
screen -t "machine3" 2 ssh user@machine3
Minhas ~/.ssh/config contém
ForwardX11 yes
Eu recebo o seguinte erro nos terminais de machine2 e machine3.
Warning: No xauth data; using fake authentication data for X11 forwarding
/usr/X11/bin/xauth: error in locking authority file /home/user/.Xauthority
Se eu remover apenas uma das máquinas do meu .screenrc ele funciona corretamente.
Como posso evitar esse erro e conectar-me a várias máquinas a partir da tela.
EDITAR :
O diretório inicial do usuário está no NFS e o bloqueio não funciona corretamente com o NFS.
Para contornar isso, eu tentei muito ter o arquivo XAuthority em um sistema de arquivos local (/ tmp) ou ter um arquivo por ssh. Eu não consegui, de alguma forma meu xauth parece ignorar completamente o XAUTHORITY variável de ambiente. Ainda confuso ...
ssh -f -N (em algum script de shell, em vez de usar screen ) seria uma opção, então pelo menos você pode adicionar alguns sleep comando entre os 3 comandos? Ou talvez mova os 3 screen comandos de .screenrc em algum script de shell, usando sleep também?
ForwardX11quando você quiser usar sessões gráficas. Até onde sei,screené apenas baseado em personagens?)