如何在 Fedora 上正确启动 vnc 服务器?

如何在 Fedora 上正确启动 vnc 服务器?

我记得上次使用 vnc 时这并不困难。这是我尝试过的(我运行的是 fedora 21)...

首先,安装一个 vnc 服务器。

sudo yum install tigervnc-server
... y

现在解除端口阻塞。不确定vnc-server这里是否正确,但是这一页据说是的。顺便说一句,我最初尝试过firewall-config,但我无论如何都无法通过 SSH 和 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

我可以理解为什么许多人放弃并sudo service firewalld stop作为最后的手段。现在要运行 vnc 服务器,

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

远程连接不起作用。即使本地连接也不起作用(unable connect to socket: Connection refused (111)尽管拒绝当没有服务器运行时,它是相同的消息,因此它可能意味着一些不太像它一开始就找到了可以对话的东西)。

目前我并不关心如何设置服务以使服务器自动启动。我该如何进行基本设置?

[编辑]
为了连接,我只需在 Windows 上的 RealVNC Viewer 中输入主机名或运行vncviewer localhost以测试本地连接。

答案1

好的,与我使用过的一些 Windows VNC 服务器不同,这些服务器共享一个桌面,但可以有多个虚拟 X 桌面。与使用单个服务器管理多个桌面不同,有多个服务器,每个服务器使用不同的端口。

  • 端口 5900(:0)-本地屏幕/登录(不确定这里的术语是否正确)
  • 端口 5901 ( :1) - 虚拟桌面 1
  • 端口 5902(:2)- 虚拟桌面 2
  • ...

我猜想连接这些的一个简便方法或用户友好方法是将:0:1等添加到您要连接的主机名中。这会在连接之前将数字添加到端口。

现在,如果没有任何参数vncserver,则默认启动虚拟显示器:1(在端口 5901 上),并且默认vncviewer连接到 5900,这解释了为什么我无法连接。诸如 之类的程序x11vnc可以共享主:0桌面(例如x11vnc -ncache 10 -rfbauth /home/user/.vnc/passwd -display :0),但如果您尝试 ,tigrevnc 会发出抱怨vncserver :0

总结:
我应该连接到显示器 1 或使用端口 5901:

vncviewer localhost:1
vncviewer localhost::5901

相关内容