Como inicio corretamente um servidor vnc no fedora?

Como inicio corretamente um servidor vnc no fedora?

Não me lembro de ter sido difícil na última vez que usei o vnc. Isso é o que eu tentei (estou executando o fedora 21) ...

Primeiro, instale um servidor vnc.

sudo yum install tigervnc-server
... y

Agora, para desbloquear a porta. Não tenho certeza se vnc-serverestá correto aqui, masesta páginadiz que é. A propósito, eu tentei inicialmente firewall-config, mas durante toda a minha vida não consegui fazê-lo funcionar via SSH com encaminhamento de X.

> sudo firewall-cmd --permanent --zone=public --add-service vnc-server
> sudo firewall-cmd --list-all
# vnc-server not listed. damn. maybe if I try again, but pressing the keys harder
> sudo firewall-cmd --permanent --zone=public --add-service vnc-server
Warning: ALREADY_ENABLED: vnc-server
# ...? whatever...
> sudo firewall-cmd --zone=public --add-port=5900/tcp
# the port's there, that should do

Posso entender porque muitos desistem e sudo service firewalld stopcomo último recurso. Agora, para executar o servidor vnc,

> vncpasswd
Password: *
Verify: *
> vncserver
# seems to have started

A conexão remota não funciona. Mesmo a conexão local não funciona ( unable connect to socket: Connection refused (111), embora apesarrecusoué a mesma mensagem quando nenhum servidor está em execução, então provavelmente significava algo um pouco menos como encontrar algo com quem conversar).

No momento não me importo em configurar um serviço para que o servidor seja iniciado automaticamente. Como faço o básico?

[EDITAR]
Para conectar, basta digitar o nome do host no RealVNC Viewer no Windows ou executar vncviewer localhostpara testar a conexão local.

Responder1

OK, ao contrário de alguns servidores Windows VNC que usei, onde o servidor compartilha uma área de trabalho, pode haver muitos desktops X virtuais. Em vez de ter um único servidor que gerencia vários desktops, existem vários servidores, cada um usando uma porta diferente.

  • Porta 5900 ( :0) - tela/login local (não tenho certeza da terminologia correta aqui)
  • Porta 5901 ( :1) – área de trabalho virtual 1
  • Porta 5902 ( :2) – área de trabalho virtual 2
  • ...

Acho que uma forma abreviada ou talvez amigável de se conectar a eles é adicionar :0ou :1etc. ao nome do host ao qual você está se conectando. Isso adiciona um número à porta antes de conectar.

Agora, sem nenhum argumento para vncserver, o padrão é iniciar um display virtual :1(na porta 5901) e por padrão vncviewerconectar-se ao 5900, o que explica porque não consegui conectar. Um programa como esse x11vncpode compartilhar a :0área de trabalho principal (por exemplo x11vnc -ncache 10 -rfbauth /home/user/.vnc/passwd -display :0, ), mas o tigrevnc reclama se você tentar vncserver :0.

TLDR:
Eu deveria ter conectado ao monitor 1 ou usado a porta 5901:

vncviewer localhost:1
vncviewer localhost::5901

informação relacionada