ubuntu 使用tigervnc-server实现远程桌面访问
转载:https://www.ywnz.com/linuxyffq/8969.html
简介
VNC是一个图形桌面共享系统,可让您使用键盘和鼠标来远程控制另一台计算机,它是Microsoft远程桌面协议(RDP)的开源替代方案。它的英文全称为Virtual Network Computing,中文意为虚拟网络计算。
步骤一:安装桌面环境
Ubuntu 20.04服务器是通过命令行管理的,默认情况下未安装桌面环境。如果您运行桌面版本的Ubuntu,请跳过此步骤。
当前Ubuntu 20.04存储库中提供了各种桌面环境,一种选择是安装Gnome,它是Ubuntu 20.04中的默认桌面环境。另一个选择是安装Xfce。它是一种快速、稳定且轻巧的桌面环境,非常适合在远程服务器上使用。
建议安装Xfce,以具有sudo特权的用户身份输入以下命令:
sudo apt update
sudo apt install xfce4 xfce4-goodies
注:下载和安装Xfce软件包可能需要一些时间,请耐心等待安装完成。
步骤二:安装TigerVNC服务器
Ubuntu 20.04存储库中有几种不同的VNC服务器,例如TightVNC、TigerVNC和x11vnc。每个VNC服务器在速度和安全性方面都有各自的优缺点。
我们将安装TigerVNC,这是一个主动维护的高性能VNC服务器,输入以下命令以安装软件包:
sudo apt install tigervnc-standalone-server
步骤三:配置VNC访问
安装VNC服务器后,下一步是创建初始用户配置并设置密码。
使用vncpasswd命令设置用户密码,运行以下命令时请勿使用sudo:
vncpasswd
系统将提示您输入并确认密码,以及是否将其设置为只读密码。如果选择设置仅查看密码,则用户将无法使用鼠标和键盘与VNC实例进行交互:
Password:
Verify:
Would you like to enter a view-only password (y/n)? n
密码文件存储在~/.vnc目录中,如果不存在则创建该目录。
接下来,我们需要配置TigerVNC以使用Xfce。为此,请创建~/.vnc/xstartup文件,运行:
nano ~/.vnc/xstartup
增加以下内容(启动Xfce桌面环境):
#!/bin/sh
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
exec startxfce4
如果要使用原始gome桌面环境,则添加以下内容:
#!/bin/sh unset SESSION_MANAGER unset DBUS_SESSION_BUS_ADDRESS [ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup [ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources xsetroot -solid grey vncconfig -iconic & x-terminal-emulator -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" & gnome-session &
保存并关闭文件。每当您启动或重新启动TigerVNC服务器时,以上命令都会自动执行。
~/.vnc/xstartup文件也需要具有执行权限,使用chmod命令设置文件权限:
chmod u+x ~/.vnc/xstartup
如果需要将其他选项传递给VNC服务器,请创建一个名为config的文件,即~/.vnc/config,并在每行添加一个选项。这是一个例子:
geometry=1920x1080
dpi=96
现在,您可以使用vncserver命令启动VNC服务器:
vncserver
返回如下信息,供参考:
New 'server2.linuxize.com:1 (linuxize)' desktop at :1 on machine server2.linuxize.com
Starting applications specified in /home/linuxize/.vnc/xstartup
Log file is /home/linuxize/.vnc/server2.linuxize.com:1.log
Use xtigervncviewer -SecurityTypes VncAuth -passwd /home/linuxize/.vnc/passwd :1 to connect to the VNC server.
在上面的输出中,请注意主机名后面的:1。这表示正在运行vnc服务器的显示端口号。在此示例中,服务器在TCP端口5901(5900+1)上运行。如果使用vncserver创建第二个实例,它将在下一个可用端口(即:2)上运行,这意味着服务器在端口5902(5900+2)上运行。
要记住的重要一点是,在使用VNC服务器时,:X是表示5900+X的显示端口。
您可以通过输入以下命令获取所有当前正在运行的VNC会话的列表:
vncserver -list
返回如下图信息:
在继续下一步之前,请使用带有-kill选项和服务器编号作为参数的vncserver命令停止VNC实例。在此示例中,服务器在端口5901(:1)上运行,因此我们将使用以下命令将其停止:
vncserver -kill :1
返回信息如下:
Killing Xtigervnc process ID 5710... success!
步骤四:启动vncserver可以从任何地方访问
vncserver -localhost no -geometry 1280x720 -depth 24
步骤五:使用工具连接远程桌面
在这里我使用:Mobaxterm
下载地址:https://mobaxterm.mobatek.net/download-home-edition.html