VNC server ubuntu20 配置

介绍

最近想使用实验室的4卡服务器跑一些深度学习实验,因为跑的是三维建图实验,需要配上可视化界面,本来自带的IPMI可以可视化,但分辨率固定在640*480,看起来很别扭,就捣鼓服务器远程可视化访问了两天,踩坑很多,还好搞成了,记录一下。

VNC是虚拟网络计算的缩写,是一个远程图形桌面共享系统,允许可视化的使用键盘和鼠标对远端设备图形用户界面进行远程访问。让用户(客户端或称“本地电脑”)连上提供终端机服务的电脑(服务器端或称“远程电脑”)。

VNC的另一个同类技术是RDP(Remote Desktop Protocol),其在服务器端仅适配windows系统,客户端可以在Windows、Linux、FreeBSD、Mac OS X上使用。

这里用到的服务器是Linux系统,用VNC。

参考:RDP 还是 VNC?远程桌面该如何选

 本博客所使用远程图形桌面共享系统详细配置:

ubuntu 桌面环境:Xfce。其他包括(Gnome(连接上后出现灰屏问题)、Unity、KDE等等)

VNC-Server:tigervnc,其他包括TightVNC 和 x11vnc 

配置方法

安装XFCE桌面环境

这里也尝试过Ubuntu自带的Gnome,虽然最后成功连接上,但界面是灰色,没有响应。

sudo apt update
sudo apt install xfce4 xfce4-goodies

安装VNC服务

Ubuntu 存储库中有几种不同的 VNC 服务器可用,例如 TightVNC 、 TigerVNC 和 x11vnc 。每个 VNC 服务器在速度和安全性方面都有不同的优势和劣势。 TigerVNC是一个积极维护的高性能 VNC 服务器,参数配置也更易懂整洁一些。 输入以下命令安装包。

sudo apt install tigervnc-standalone-server

VNC server设置

配置连接密码

vncpasswd

#输出结果
Password:
Verify:
Would you like to enter a view-only password (y/n)? n
A view-only password is not used

配置启动命令,将~/.vnc/xstartup文件备份,内容替换为:

#!/bin/sh
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
exec startxfce4

添加可执行权限

chmod u+x ~/.vnc/xstartup

启动vncserver 

vncserver -localhost no -geometry 1280x800

其中 -localhost开放非localhost客户端连接,-geometry配置分辨率

VNC客户端连接

使用Remmina,输入ip:number,number为启动vncserver 时终端输出的数字。

最后连接成功的界面如下:

参考:

实战记录在 Linux Ubuntu 20.04 安装VNC 远程桌面_ubuntu20.04安装vnc xfce xstartup-优快云博客

https://www.cnblogs.com/a5idc/p/13539969.html

遇到的问题

VNC卸载导致桌面环境崩溃

Ubuntu 存储库中有几种不同的 VNC 服务器可用,例如 TightVNC 、 TigerVNC 和 x11vnc,刚开始没有注意到,导致参考博客文章以上几个都安装了,也不确定在用哪个,又担心冲突导致问题,就用apt purge卸载,结果卸载之后重启电脑,系统图形界面无法进入,只能进入命令行界面。

接着发现显卡驱动都不见了,很是奇怪,在安装显卡驱动时候又发现内核版本不能太高,否则之前下载好的显卡驱动无法安装成功,于是又切换到旧的内核版本,显卡驱动安装成功后又需要切换回新的内核版本,否则IPMI的图形界面仍然进不去。

参考:https://www.cnblogs.com/carle-09/p/12377128.html

接着是修复可视化界面,需要重新配置桌面环境。

#重新配置
sudo dpkg-reconfigure gdm3
#查看
cat /etc/X11/default-display-manager

连接成功后显示拒绝连接 

通过~/.vnc目录下的对应数字log查看了报错,上网查询发现是conda激活默认环境冲突导致,于是关闭conda默认激活,成功连接并显示界面。

### 配置和运行 Ubuntu 20.04 上的 VNC Server 尽管提供的引用描述了在 Ubuntu 18.04 上安装和配置 VNC 的方法[^1],但在 Ubuntu 20.04 中也可以采用类似的流程来完成此操作。以下是详细的说明: #### 安装桌面环境 由于命令行界面可能不足以满足远程图形化需求,在安装 VNC 前需先部署一个轻量级桌面环境,推荐使用 Xfce。 ```bash sudo apt update && sudo apt install xfce4 xfce4-goodies -y ``` 上述命令会更新包列表并安装 Xfce 桌面环境及其附加组件。 #### 安装 TigerVNC TigerVNC 是一种高性能的 VNC 实现方式,适合用于 Linux 平台上的远程访问。 ```bash sudo apt install tigervnc-standalone-server tigervnc-common -y ``` 这一步骤将安装 TigerVNC 及其相关依赖项。 #### 设置 VNC 密码 为了保障连接安全,需要为 VNC 用户设定密码。 ```bash vncpasswd ``` 执行该命令后会被提示输入两次密码以确认,并可选设置只读视图密码。 #### 创建自定义启动脚本 创建一个新的配置文件 `/home/yourusername/.vnc/xstartup` 来指定当客户端连接到服务器时应加载的内容。 ```bash nano ~/.vnc/xstartup ``` 向其中添加如下内容: ```bash #!/bin/bash unset SESSION_MANAGER unset DBUS_SESSION_BUS_ADDRESS startxfce4 & ``` 保存退出后赋予脚本执行权限: ```bash chmod +x ~/.vnc/xstartup ``` 这样可以确保每次建立新会话都会自动启动 XFCE 桌面环境。 #### 启动 VNC 服务 最后通过下面这条指令开启第一个虚拟显示实例(默认编号 :1 对应端口 5901)。 ```bash vncserver :1 -geometry 1280x720 -depth 24 ``` 这里 `-geometry` 参数指定了分辨率大小;而 `-depth` 则表示颜色位数。 如果一切正常,则可以通过任何支持 RFB 协议 (Remote Framebuffer Protocol) 的客户端尝试接入位于目标主机 IP 地址加冒号再接上对应序号所构成的目标地址之上。 --- #### 注意事项 对于防火墙开放特定端口或者调整 SELinux 策略等内容未在此处展开讨论,请根据实际网络状况自行处理。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值