从Mac OS X访问Raspberry Pi VNC会话


22

我正在尝试通过Mac OS X客户端对我的Raspberry Pi(运行Raspbian)进行远程屏幕访问。

这是我得到的:

  • 我运行了“ raspbian-config”,并用它来启用VNC服务器。
  • raspberry-pi上的桌面显示VNC服务器正在运行。 ps说是vncserver-x11-core
  • 树莓派在Finder中的Mac上显示为共享屏幕。
  • 当我在Mac上单击“共享屏幕”按钮时,出现以下错误消息对话框:

    The software on the remote computer appears to be
    incompatible with this version of Screen Sharing.
    

我的Mac正在运行10.9(小牛?),所以它有点旧...

我有什么选择?

  • 我可以调整Pi上的配置选项吗?那是我的首选方法。
  • 如果失败,切换到tightvncserver会有所帮助吗?
  • 为解决此问题而更新我的Mac感觉有些矫kill过正,但这会有所帮助吗?

Answers:


6

您可以在Mac上安装RealVNC查看器,或者将服务器上的身份验证类型更改为“ VNC身份验证”并设置合适的VNC密码。

Mac查看器不支持RealVNC的系统身份验证,该身份验证允许您以系统用户身份登录。


1
这工作了。要补充一点细节:Raspberry Pi上的VNC服务器具有一个GUI,您可以从中获得各种选项。选项之一是用于身份验证,我通过将“ UNIX密码”更改为“ VNC密码”进行了修复。
理查德·巴内特

安德鲁(Andrew)的解决方案可以正常工作,但也要确保加密功能处于“关闭”状态。
乔恩·波内斯特

最好的方法是realvnc.com/download/vnc/macosx,但是如果您确实要使用内置工具,则必须在Raspberri Pi上设置VNCServer Options,以免使用UNIX用户名/密码。
llange


2
但是RealVNC确实支持标准的VNC验证。...请参阅下面的说明。简单..没有增加的软件,没有增加的问题;-)少即是多。
William Cerniuk

22

无头VncServer配置

如果您需要使用osx的Screen配置对pi的访问,但对pi的访问权限有限,则可以使用vnc配置文件。

  1. sudo raspi-config>接口选项> VNC>启用。重启。
  2. 使用vncpasswd -service生成您希望在屏幕上使用的密码

    sudo vncpasswd -service
    
  3. 在此处创建和编辑以下文件:/etc/vnc/config.d/common.custom

  4. 输入以下配置:

    Authentication=VncAuth
    
  5. 重新启动vnc服务:

    sudo systemctl restart vncserver-x11-serviced
    
  6. 按照上述说明打开“屏幕”,然后使用您提供给vncpasswd的密码。

如果需要监视vncserver的日志,则可以使用journalctl:

sudo journalctl -u vncserver-x11-serviced.service

此处介绍了可与VncServer配置一起使用的其他参数:https : //www.realvnc.com/en/connect/docs/server-parameter-ref.html


1
稍微容易一点:使用vncpasswd -service来提供密码,并且配置文件中唯一需要的行是Authentication=VncAuth
jrc

@jrc整洁!下次当我使用pi时,我会尝试一下,然后将其编辑下来。
aaronP

12

使用Mac访问Raspberry Pi屏幕的最好的部分是,您不需要在Raspberry Pi或Mac上安装任何东西。(适用KISS规则!)

这很好,因为诸如ightvncserver之类的软件需要Java在Pi上运行。Java很方便,但它是处理器的代名词,应避免使用Java以使项目尽可能快地运行。如果您的Pi是完全无线的,请确保最长的电池寿命。我使用Raspberry Pi零Wi-Fi(rbp0w),这对于完全无线来说是很自然的。

由于您正在寻找它,因此您可能是Pi的新手,可能不知道设置在哪里,甚至不知道“ VNC”是什么。

因此...这是逐步的“新Pi用户”指南,用于在MacOS上使用标准系统本机VNC客户端(称为“ 屏幕共享”)与Raspberry Pi的本机RealVNC服务器,执行以下配置:

1)这些说明假定您是从RaspberryPi站点安装操作系统NOOBS的:

https://www.raspberrypi.org/downloads/noobs/

2)通过单击菜单栏图标打开RealVNC Server配置界面:

在此处输入图片说明

3)在“ VNC服务器”窗口上,单击汉堡包菜单,然后选择“选项”:

在此处输入图片说明

4)如果尚未选择“安全性”,则将“加密”设置为“首选”,将“身份验证”设置为“ VNC密码”。假设您的设备位于安全网络上的防火墙后面...因此可以安全地关闭加密以确保兼容性。

在此处输入图片说明

5)设置密码不超过8个字符的“标准用户”

在此处输入图片说明

6)然后在Mac上打开“屏幕共享”,然后从“连接”菜单中选择“新建”,然后输入Pi的IP地址:

在此处输入图片说明

7)遇到挑战时,输入您在步骤5中在Pi上设置的密码。

在此处输入图片说明

8)按连接,您就进入了!

在此处输入图片说明


2
这应该是公认的答案。我唯一要添加的是,对于无头设置,命令行方法是vncserver Authentication=VncAuth :0(注意::0对于默认端口,请在操作后进行设置;如果要在“ session”中进行设置,请sudo systemctl stop lightdm连接至默认端口)raspberrypi.local:5902:2
jdonald

3

对于RealVNCNEED使用其专有的浏览器。(也许可以与其他软件一起使用macOS屏幕共享,但是X11几年来一直没有包含在Mac中。)

您可以使用tightvncserver;我使用它并open vnc://pi@10.1.1.41:5901在Mac上开始会话(更改为IP或使用raspberrypi.local)。

RealVNC需要运行Pi上的GUI(您可以手动启动,但是,如果需要,为什么要打扰)并共享同一屏幕。

tightvncserver 启动一个新屏幕(IMO更好,因为会话可以具有不同的分辨率)。

注意 RealVNCtightvncserver不兼容,并且您的Pi上只能有1个。


2

Andrew Wedgbury和Richard Barnette的评论适用于OS X 10.12.5 Screenshare。

您不必关闭加密。但是你可以按照乔恩的建议

而是在树莓派上将新用户添加为Administrator类型到VNC Server(版本:4.9.35)

  1. 单击VNC工具栏图标
  2. 单击“ VNC服务器汉堡包”图标以显示下拉菜单
  3. 单击选项(可能需要关闭消息窗口)
  4. 选择身份验证下拉菜单并设置为VNC密码,然后单击应用。
  5. 单击下面“ VNC密码”部分中的“用户和权限”链接。
  6. 点击添加按钮
  7. 从用户下拉菜单中选择管理员用户。
  8. 设置密码,然后单击确定
  9. 单击确定退出选项。

在OS X共享屏幕上,输入raspberry.local(hostname.local),在出现提示时输入密码。


在非常小型的处理器上使用相当大规模的OS,处理器节省的每一点都会有所帮助。通过VNC连接,Pi速度非常慢(尽管“缓慢”),加密会使情况变得更糟。由于我的网络是加密的,因此我不愿意使用PI处理器。加密是一个很好的工具,但像抗生素一样,应谨慎使用并与Intellegence一起使用。
William Cerniuk
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.