紧密的VNC连接被拒绝


16

完全按照RPi官方网站上的这些说明在我的Pi(型号2)上安装TightVNC。Pi有一个静态IP地址,我可以(显然)可以ping通它和SSH,所以我知道它可以正常工作。

但是,当我尝试使用Windows TightVNC客户端进行连接时,我收到一条消息,指出服务器主动拒绝了连接。我正在使用192.168.x.x:0连接,但我也192.168.x.x:5900按照其他地方的建议进行了尝试,但均无济于事。我需要怎么做才能使TightVNC正常工作?

ps aux | grep vnc 返回以下内容:

root      1888  0.0  0.0   1768   376 ?        S    11:26   0:00 /bin/sh /etc/init.d/vncboot start
root      1899  0.0  0.3   4756  3752 ?        S    11:26   0:00 /usr/bin/perl /usr/bin/vncserver :0 -geometry 1920x1080 -depth 32 -pixelformat rgb565
root      2055  0.0  0.0   1692   272 ?        S    11:26   0:00 vncpasswd /root/.vnc/passwd

netstat -l 返回此:

Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State
tcp        0      0 *:ssh                   *:*                     LISTEN
udp        0      0 192.168.6.31:ntp        *:*
udp        0      0 localhost:ntp           *:*
udp        0      0 *:ntp                   *:*
Active UNIX domain sockets (only servers)
Proto RefCnt Flags       Type       State         I-Node   Path
unix  2      [ ACC ]     STREAM     LISTENING     4914     /tmp/.X11-unix/X0
unix  2      [ ACC ]     STREAM     LISTENING     4887     /var/run/dbus/system_bus_socket
unix  2      [ ACC ]     STREAM     LISTENING     4913     @/tmp/.X11-unix/X0
unix  2      [ ACC ]     STREAM     LISTENING     6965     /tmp/.pcmanfm-socket--0-pi
unix  2      [ ACC ]     STREAM     LISTENING     4972     /tmp/ssh-yoCLTWKx0wUO/agent.2194
unix  2      [ ACC ]     STREAM     LISTENING     8238     /tmp/.menu-cached-:1-steven
unix  2      [ ACC ]     SEQPACKET  LISTENING     419      /run/udev/control
unix  2      [ ACC ]     STREAM     LISTENING     5730     @/tmp/dbus-GF4T9MxwNb
unix  2      [ ACC ]     STREAM     LISTENING     5779     /tmp/.menu-cached-:0-pi

1
我知道仅发送链接来回答问题是很遗憾的,(抱歉),但是如果以下说明不起作用,请告诉我(leanpub.com/RPiMRE/read#leanpub-auto-remote-access-via -tightvnc
d3noob 2015年

Answers:


33

我知道这是很久以前问过的,但我找到了解决此问题的方法。

如果使用display :1(或大于0的值)启动它,则必须输入如下IP :(192.168.x.x:590<displayNumber>192.168.1.23:5901)。

我希望这对将来的用户有帮助


在TightVNC查看器中,您必须指定端口号,即192.168.0.10::5901(是,双冒号)

乐于助人!
jdtech

我经历了无数教程,而这些教程都没有提到这一相当关键的信息,这让我感到莫名其妙!谢谢。
玛纳奇

3

我认为0Xserver 的数量用于实际屏幕(pi上的HDMI)。
因此,启动后请勿登录GUI桌面。或者您可以尝试使用:1

tightvncserer :1

以下是用于自动启动的配置文件。

#!/bin/sh
### BEGIN INIT INFO
# Provides: tightvnc
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Start VNC Server at boot time
# Description: Start VNC Server at boot time.
### END INIT INFO

# Set the VNCUSER variable to the name of the user to start tightvncserver under
VNCUSER='pi'
eval cd ~$VNCUSER
case "$1" in
 start)
   su $VNCUSER -c '/usr/bin/tightvncserver :1 -geometry 1200x700 -depth 16 -pixelformat rgb565'
   echo "Starting TightVNC server for $VNCUSER "
   ;;
 stop)
   pkill Xtightvnc
   echo "Tightvncserver stopped"
   ;;
 *)
   echo "Usage: /etc/init.d/tightvnc {start|stop}"
   exit 1
   ;;
esac
exit 0

将此文件保存到/etc/init.d/tightvnc,并将其添加到启动列表。

sudo chmod 755 tightvnc
sudo update-rc.d tightvnc defaults

运行OS X的默认VNC连接。 Rpi Gui配置上启用VNC 之后,我无法再连接...在Rpi命令行以:1启动TightVNC为我解决了该问题。自动启动也很有魅力。谢谢!!
brasofilo

2

在服务器(pi)和客户端(远程计算机)上安装TightVNC之后,必须在服务器端输入密码。键入vncpasswd紧密的vnc服务器的终端(即pi)。输入密码,然后尝试登录您的pi。


1

这不起作用。许多人(包括我自己)尝试失败。

如果确实如此,它可能确实有效,但前提是您尝试以方式连接root,但这不是一个好主意,也不是大多数人期望的。

tightvncserver 在用户登录之前无法共享用户桌面。

我建议您首先使用登录ssh并开始tightvncserver。然后,您可以使用VNC客户端进行连接。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.