我记得上次使用 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