realvnc使用小结

先导

为什么要使用VNC: VNC是一个通用的桌面分享协议,与windows的RDP协议齐名,用于在不同电脑键进行桌面分享,可以在另一台电脑操控你当前的电脑。当前我的需求就是在windows系统下链接我的linux主机进行远程操作

为什么使用realvnc:因为realvnc是我唯一使用成功的vnc工具,tigervnc一直不能进行启动,很令人心烦,当然,未来也会继续尝试折腾tigervnc的,因为这才是开源正统。

  • 本次是在manjaro linux下进行安vncserver、在windows下安装vncviewer。

安装

使用命令行安装:

yay -S realvnc-vnc-server
  • 官方提供的是deb的安装报,arch系列的话还是使用aur进行安装吧。

配置桌面启动

使用vnc的话,一般是使用用户登陆动作触发一个桌面session的启动,一般来只要在相关地方配置对应的桌面启动命令即可,使用realvnc的话使用的是xstartup脚本进行配置的。

一般使用的桌面session启动命令都可以通过使用命令补全功能猜出来,操作方式为:在控制台中输入start,然后通过tab按键进行补全操作,就可以看到差不多是桌面启动的命令了,如下图:

img-guess-start-session

知道使用什么命令来进行启动桌面之后,就可以开始着手进行配置vncserver了

一般使用的启动vncserver的话都是使用默认启动命令进行的,而默认命令使用的xstart脚本可以从启动的命令中看到,如下

img-vnc-setup

一般的桌面默认配置下连接是不能正常查询到当前的桌面session的,表现出来的状况为启动后通过vncviewer连接后只显示一个终端窗口,所以这时就需要去配置启动脚本了,当然,如果能够正常连接的话也不需要进行配置,所以配置前先启动连接试试

我安装的vncserver提示是使用/etc/vnc/xstartup这个启动文件,所以需要配置这个文件即可;配置这个文件中的twm为自己需要的桌面session启动命令,如下:

elif which twm > /dev/null 2>&1; then
  $XTERM_COMMAND &
  SESSIONBIN="startplasma-x11"
fi

启动和关闭vncserver

启动命令:

vncserver -geometry 1920x1080 -alwaysshared -depth 24 -dpi 1 :1

命令的参数如下:

  • geometry: 分辨率设置,后面跟着分辨率设置参数:1920x1080
  • alwaysshared:配置为一直可以连接
  • depth: 配置色彩深度
  • dpi:配置dpi,我这里的命令应该存在问题,但是我设置太高了的话视频传输会卡
  • :1: 启动的桌面,:1就是桌面1,对应的端口为5901;:2就是桌面2,对应端口为5902;以此类推

关闭命令:

vncserver -kill :1

命令的参数如下:

  • kill: 关闭一个桌面,后面跟着桌面的参数, :1就是对应屏幕1,也是以此类推

vncviewer连接

直接连接地址: x.x.x.x:1即可,x换为你对应的ip地址

总结

好了,经过这一番折腾,VNC server应该是能够用起来了,说明一下,默认下realvnc是需要购买密钥授权激活才能运行的,不然会提示没有授权无法启动,我这里就不说明其他的渠道来激活使用了,你们自己各凭本事。

版权

本作品采用 CC BY-NC-ND 4.0 授权。