折腾了一个下午,总算是成功在Windows机器上远程链接到树莓派上了。
首先第一步,版本要找对!VNC-SERVER官网针对树莓派只有32位版本,其实树莓派自己的源里是有64位的。
在下面的链接里可以下载。
https://archive.raspberrypi.org/debian/pool/main/r/realvnc-vnc/
下面是详细步骤。
- 安装deb包
sudo dpkg -i realvnc-vnc-server_6.7.2.43081_arm64.deb
- 如果缺少依赖可以尝试
sudo apt-get install -f
自动修复依赖 - 安装完需要创建链接,让这些库指向正确的路径
sudo ln /usr/lib/aarch64-linux-gnu/libbcm_host.so /usr/lib/libbcm_host.so.0
sudo ln /usr/lib/aarch64-linux-gnu/libvcos.so /usr/lib/libvcos.so.0
sudo ln /usr/lib/aarch64-linux-gnu/libmmal.so /usr/lib/libmmal.so.0
sudo ln /usr/lib/aarch64-linux-gnu/libmmal_core.so /usr/lib/libmmal_core.so.0
sudo ln /usr/lib/aarch64-linux-gnu/libmmal_components.so /usr/lib/libmmal_components.so.0
sudo ln /usr/lib/aarch64-linux-gnu/libmmal_util.so /usr/lib/libmmal_util.so.0
sudo ln /usr/lib/aarch64-linux-gnu/libmmal_vc_client.so /usr/lib/libmmal_vc_client.so.0
sudo ln /usr/lib/aarch64-linux-gnu/libvchiq_arm.so /usr/lib/libvchiq_arm.so.0
sudo ln /usr/lib/aarch64-linux-gnu/libvcsm.so /usr/lib/libvcsm.so.0
sudo ln /usr/lib/aarch64-linux-gnu/libcontainers.so /usr/lib/libcontainers.so.0
- 启动服务
sudo systemctl enable vncserver-x11-serviced.service
sudo systemctl enable vncserver-virtuald.servic
sudo systemctl start vncserver-x11-serviced.service
sudo systemctl start vncserver-virtuald.service
- 检查服务是否正确运行
sudo systemctl status vncserver-virtuald.service
sudo systemctl status vncserver-x11-serviced.service
如果出现类似 Gtk-ERROR **: GTK+ 2.x symbols detected. Using GTK+ 2.x and GTK+ 3 in the same process is not supported 的错误
需要重新安装一下这个模块
sudo apt-get install --reinstall libcanberra-gtk-module
- 然后打开激活界面(可选),输入VNC的账号密码
sudo vnclicensewiz
免费的个人版能登5台机,足够了 - 避免 RealVNC 不兼容的 Wayland 在登录界面就被加载,需要更改
sudo gedit /etc/gdm3/custom.conf
如果直接SSH连,没有显示器就用sudo nano /etc/gdm3/custom.conf
打开文件后,把#WaylandEnable=false
的#号去掉,即改为WaylandEnable=false
- 重启系统,应该就能正常运行了。