Como exibir o xclock em outro computador?

8

Eu quero exibir xclockem outro computador.

No meu computador ( 111), consigo pingoutro computador ( 222) dentro da minha rede doméstica:

$ ifconfig wlan0
wlan0     Link encap:Ethernet  HWaddr 44:55:66:77:88:99  
          inet addr:192.168.0.111  Bcast:192.168.0.255  Mask:255.255.255.0
$ ping 192.168.0.222

O roteador é um roteador D-Link DIR-655 Wireless N Gigabit .

$ xclock -display 192.168.0.111:0

Exibe xclockno meu computador ( 111) conforme o esperado. No outro computador ( 222):

$ xhost +

Mas, novamente no meu computador ( 111), ele também é exibido no meu computador quando alterado para:

$ xclock -display 192.168.0.222:0

Para tentar verificar o uso do -displaycomutador:

$ xclock -display 192.168.0.111:0.1
Error: Can't open display: 192.168.0.111:0.1
$ ping 192.168.0.333
ping: unknown host 192.168.0.333
$ xclock -display 192.168.0.333:0

Eu esperaria que falhasse, mas também é exibido no meu computador ( 111), mas com um pouco de atraso. Esses resultados me dizem que o displayargumento está chegando xclock.

$ uname -a
 Linux mycomputer 3.2.0-27-generic #43-Ubuntu SMP Fri Jul 6 14:46:35 UTC 2012 i686 i686 i386 GNU/Linux

Estou usando o LXDE em vez do GNOME ou KDE.

Estou apenas tentando xclockexibir e não estou interessado em resolver problemas de segurança nesta pergunta.

CW Holeman II
fonte

Respostas:

5

Duas coisas a verificar: A porta 6000 precisa estar aberta na máquina 222 (configurar ou desativar o firewall) e o próprio servidor X precisa estar escutando nessa porta. Isso geralmente é desativado nas distribuições modernas. Verifique se está ouvindo com

# netstat -nltp | grep 6000
tcp        0      0 0.0.0.0:6000            0.0.0.0:*               LISTEN      10818/Xorg          
tcp6       0      0 :::6000                 :::*                    LISTEN      10818/Xorg          

Caso contrário, você pode habilitá-lo para o gdm no /etc/gdm/custom.conf

[security]
DisallowTCP=false

Efetue logout / reinicie o gdm na máquina 222 e efetue login novamente. Você deve ver o Xorg ouvindo na porta 6000.

Pedro
fonte
1
'/etc/lightdm/lightdm.conf e adicione xserver-allow-tcp = true' para LXDE em askubuntu.com/questions/72812/how-to-disable-nolisten
CW Holeman II
4

No meu computador ( 111):

ssh -X 192.168.0.222

seguido simplesmente por:

xclock

será executado xclockno outro computador ( 222) e exibido no meu computador ( 111).

Nota: Para que isso funcione, X11Forwardingdeve ser ativado /etc/ssh/sshd_configno computador ( 222)

CW Holeman II
fonte
1

E você pode fazer o mais simples :)

$ ssh -X 192.168.0.222 "xclock"
Grégory Roche
fonte
0

Aqui está a resposta atualizada. Ele funcionou para mim na nova instalação do Ubuntu 18.04.02.

Eu instalei o servidor ssh para tornar o sistema acessível no ssh.

Nada é bloqueado por padrão, para verificá-lo. Então, nada a fazer. iptables -L

Abri o arquivo /etc/gdm/custom.confe adicionei

[security]
DisallowTCP=false

Descomente o seguinte em /etc/ssh/sshd_config

AllowTcpForwarding yes
X11Forwarding yes
X11DisplayOffset 10

Eu reiniciei a máquina e executei o comando xhost +

Agora fui ao segundo computador e executei o comando, verifique se o xclock está instalado e assumindo que a saída do comando echo $DISPLAYseja: 1

xclock -display IP_Address:1

Você verá o xclock no computador ubuntu.

netstat -antlp | grep 6001 estava mostrando o Xorg ouvindo.

Mian Asbat Ahmad
fonte