云网牛站
所在位置:首页 > Linux云服务器 > 在Ubuntu 20.04服务器上安装TigerVNC并配置VNC的详细步骤

在Ubuntu 20.04服务器上安装TigerVNC并配置VNC的详细步骤

2021-03-29 10:48:13作者:项中强稿源:云网牛站

本文介绍在Ubuntu 20.04服务器(操作系统)上安装TigerVNC并配置VNC(Virtual Network Computing)的详细步骤。内容有:安装桌面环境、安装TigerVNC服务器、配置VNC访问、创建一个Systemd单位文件及连接到VNC服务器的说明。

在Ubuntu 20.04服务器上安装TigerVNC并配置VNC的详细步骤

 

简介

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

增加以下内容:

#!/bin/sh

unset SESSION_MANAGER

unset DBUS_SESSION_BUS_ADDRESS

exec startxfce4

保存并关闭文件。每当您启动或重新启动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

返回如下图信息:

在Ubuntu 20.04服务器上安装TigerVNC并配置VNC的详细步骤

在继续下一步之前,请使用带有-kill选项和服务器编号作为参数的vncserver命令停止VNC实例。在此示例中,服务器在端口5901(:1)上运行,因此我们将使用以下命令将其停止:

vncserver -kill :1

返回信息如下:

Killing Xtigervnc process ID 5710... success!

 

步骤四:创建一个Systemd单位文件

让我们创建一个systemd单元文件,而不是手动启动VNC会话,以便您根据需要启动、停止和重新启动VNC服务。

打开您的文本编辑器,然后将以下配置复制并粘贴到其中。确保在第7行更改用户名以匹配您的用户名。

运行:

sudo nano /etc/systemd/system/vncserver@.service

增加的内容如下:

[Unit]

Description=Remote desktop service (VNC)

After=syslog.target network.target

[Service]

Type=simple

User=linuxize

PAMName=login

PIDFile=/home/%u/.vnc/%H%i.pid

ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill :%i > /dev/null 2>&1 || :'

ExecStart=/usr/bin/vncserver :%i -geometry 1440x900 -alwaysshared -fg

ExecStop=/usr/bin/vncserver -kill :%i

[Install]

WantedBy=multi-user.target

注:如果用户是ywnz,则需要把User=linuxize改成User=ywnz,请自行更改。然后保存并关闭文件。

通知systemd已创建一个新的单位文件:

sudo systemctl daemon-reload

启用服务以在启动时启动:

sudo systemctl enable vncserver@1.service

@符号后面的数字1定义了VNC服务将在其上运行的显示端口。这意味着VNC服务器将侦听5901端口。

通过执行以下命令来启动VNC服务:

sudo systemctl start vncserver@1.service

验证服务是否成功启动:

sudo systemctl status vncserver@1.service

返回信息大致如下:

vncserver@1.service - Remote desktop service (VNC)

Loaded: loaded (/etc/systemd/system/vncserver@.service; enabled; vendor preset: enabled)

Active: active (running)

 

步骤五:连接到VNC服务器的说明

关于这一步骤,请参考:https://ywnz.com/linuxyffq/6458.html(文章:在CentOS 8上安装和配置VNC,然后通过SSH隧道安全地连接到VNC服务器),所要操作的步骤是一样的,请直接照着操作就可以了。以下是VNC SSH XFCE桌面的预览:

在Ubuntu 20.04服务器上安装TigerVNC并配置VNC的详细步骤

 

结语

以上已经向您展示了如何在Ubuntu 20.04上安装和配置VNC服务器,并使其启动并运行。要将VNC服务器配置为为多个用户启动显示,请创建初始配置并使用vncpasswd命令设置密码。同时您还需要使用其他端口创建一个新的服务文件。

 

相关主题

适用于Linux桌面的简单VNC查看器Remotely,附安装方法

精选文章
热门文章