ubuntu 20 桌面版安装备忘

最近攒了一台服务器,安装上去ubuntu20然后用vnc在开发的电脑上控制,使用了virtualgl和tourboVnc来保证游戏画面也可以正常映射,下面是安装配置的过程:

安装后:

安装smb

sudo apt install samba

配置/etc/samba/smb.conf

systemctl start samba

支持opengl的vnc

从这里下载virtual gl

https://sourceforge.net/projects/virtualgl/

缺少包 从这里下载deb包先安装

https://launchpad.net/ubuntu/+archive/primary/+files/libegl1-mesa_23.0.4-0ubuntu1\~22.04.1_amd64.deb

对于笔者这种没有显示器的神奇需求,需要先在显卡上创建一个没有显示器的X-window,有显示器可以忽略这一步。

BASH

https://virtualgl.org/Documentation/HeadlessNV

查看显卡的车牌号(划掉,busid)

nvidia-xconfig --query-gpu-info

在对应的显卡上创建X-window

sudo nvidia-xconfig -a --allow-empty-initial-configuration --use-display-device=None --virtual=1920x1080 --busid {busid}

配置从VirtualGL启动3D X-server,这个过程中需要关闭桌面环境

BASH

service gdm stop

如果在本地操作,这时屏幕会进入黑屏,因为图形化的界面已经被关闭了,按ctrl+alt+f1进入命令行界面,配置VirtualGL。

BASH

/opt/VirtualGL/bin/vglserver_config

选择 1 configure server for use with VirtualGL in GLX mode

途中需要选择一些选项,全部选No即可。安装完成后,重新启动桌面环境

BASH

service gdm start

这时按ctrl+alt+f7就可以重新切换到桌面环境。进入终端,测试安装是否正确

xdpyinfo -display :0

/opt/VirtualGL/bin/glxinfo -display :0 -c

正常情况下可以看到如下内容

GL_OES_vertex_array_object, GL_OES_vertex_half_float,

GL_OES_viewport_array, GL_OVR_multiview, GL_OVR_multiview2,

GL_OVR_multiview_multisampled_render_to_texture

215 GLXFBConfigs:

visual x bf lv rg d st colorbuffer ax dp st accumbuffer ms cav drw

id dep cl sp sz l ci b ro r g b a F bf th cl r g b a ns b eat typ


0x0a5 24 tc 0 24 0 s y . 8 8 8 0 . 4 24 8 16 16 16 16 0 0 None PRW

0x0a6 24 dc 0 24 0 s y . 8 8 8 0 . 4 24 8 16 16 16 16 0 0 None PRW

0x0a7 24 tc 0 32 0 s y . 8 8 8 8 . 4 24 8 16 16 16 16 0 0 None PAW

0x0a8 24 dc 0 32 0 s y . 8 8 8 8 . 4 24 8 16 16 16 16 0 0 None PAW

0x0a9 24 tc 0 24 0 s . . 8 8 8 0 . 4 24 8 16 16 16 16 0 0 None PRW

0x0aa 24 dc 0 24 0 s . . 8 8 8 0 . 4 24 8 16 16 16 16 0 0 None PRW

0x0ab 24 tc 0 32 0 s . . 8 8 8 8 . 4 24 8 16 16 16 16 0 0 None PAW

0x0ac 24 dc 0 32 0 s . . 8 8 8 8 . 4 24 8 16 16 16 16 0 0 None PAW

0x0ad 24 tc 0 24 0 s y . 8 8 8 0 . 4 24 0 16 16 16 16 0 0 None PRW

0x0ae 24 dc 0 24 0 s y . 8 8 8 0 . 4 24 0 16 16 16 16 0 0 None PRW

fig2

如果出现问题,可以删除当前配置

BASH

/opt/VirtualGL/bin/vglserver_config

选择 2 Unconfigure server for use with VirtualGL in GLX mode

安装TurboVnc

https://sourceforge.net/projects/turbovnc/files

参照官网文档,使用dpkg安装TurboVNC

BASH

https://turbovnc.org/Documentation/Documentation

dpkg -i turbovnc*.deb

启动服务,首次启动时需要设置密码

BASH

/opt/TurboVNC/bin/vncserver

启动成功后,可以得到如下结果。注意记下最后一个数字。当开启多个Turbovnc服务时,使用最后的数字区分不同屏幕。

BASH

Desktop 'TurboVNC: XmechGPU:1 (my_user)' started on display XmechGPU:1

启动成功后,除非使用下方命令手动关闭,服务一直会运行。其中n为上面的数字。

/opt/TurboVNC/bin/vncserver -kill :n

从windows或mac远程访问服务器

回到Source Forge,下载符合自己系统版本的TurboVNC,mac的版本需要单独安装jdk。

https://sourceforge.net/projects/turbovnc/files

连接内网,输入服务器ip以及上面获得的vnc编号,验证密码即可登录服务器

TurboVNC内置了CPU软件实现的OpenGL,可以直接运行OpenGL的程序,但背后是软件渲染。例如使用glxgears进行测试,可以看到旋转的齿轮。

如果使用硬件加速,需要在原本的命令前加上vglrun。此时画面会使用GPU进行硬件加速,齿轮的帧速就会大幅提高。

如果服务器安装了anaconda,可能会产生黑屏,需要将anaconda的路径从PATH中移除,并重新启动vncserver,就能恢复正常。当vncserver正常运行时,环境变量就不会再影响vnc,可以正常使用anaconda。

相关推荐
无敌小茶2 分钟前
Linux学习笔记之环境变量
linux·笔记
Harbor Lau15 分钟前
Linux常用中间件命令大全
linux·运维·中间件
漫谈网络33 分钟前
基于 Netmiko 的网络设备自动化操作
运维·自动化·netdevops·netmiko
꧁坚持很酷꧂1 小时前
Linux Ubuntu18.04下安装Qt Craeator 5.12.9(图文详解)
linux·运维·qt
凉、介1 小时前
PCI 总线学习笔记(五)
android·linux·笔记·学习·pcie·pci
电鱼智能的电小鱼2 小时前
EFISH-SBC-RK3588无人机地面基准站项目
linux·网络·嵌入式硬件·机器人·无人机·边缘计算
foo1st2 小时前
Tomcat Web应用(Ubuntu 18.04.6 LTS)部署笔记
ubuntu·tomcat
电鱼智能的电小鱼2 小时前
基于 EFISH-SBC-RK3588 的无人机环境感知与数据采集方案
linux·网络·嵌入式硬件·数码相机·无人机·边缘计算
小诸葛的博客2 小时前
详解Linux中的定时任务管理工具crond
linux·运维·chrome
一默19913 小时前
CentOS 7.9升级OpenSSH到9.9p2
linux·运维·centos