Como usar su com ssh x-forwarding

O caso: Tive que lançar um programa gráfico em um servidor que é acessível via ssh (não pergunte porque, o software realmente insistiu). Isso é muito fácil ao usar o Linux no servidor e na minha máquina. Basta usar o x-forwarding no ssh (opção de linha de comando -X) e a janela aparecerá na tela. Ocorreu um problema ao usar su. Isso era meio complicado, porque parte do x-forwarding é adicionar uma linha ao arquivo ~/.Xauthoritydizendo para onde a saída do X pode ser redirecionada. Ao trocar o usuário esta linha não foi transferida para o outro usuário e então X não sabia onde exibir a janela. Em servidores debian, há uma solução realmente simples: Use em suxvez desu. Este pequeno programa auxiliar faz a transferência. No entanto, em rhel an friends este comando não está instalado. Lá, você pode executar estas etapas manualmente:

xauth extract /tmp/x :10
su

xauth merge
/tmp/x

Et voila, você tem X.