jjzjj

WSL2 Ubuntu+gnome图形界面的安装血泪史(亲测有效)

LV小猪精 2023-07-19 原文

WSL2 Ubuntu+gnome图形界面

写在最前面(血泪史)

前因
近期遇到一个问题,需要在ubuntu虚拟机上用opengl3.3以上的版本(可编程管线),但是虚拟机上查看版本时发现为opengl2.1,查了各种资料才得知是驱动版本太低。
这边一个大坑请注意: 虚拟机无法升级显卡驱动,虚拟机无法升级显卡驱动,虚拟机无法升级显卡驱动!!! 网上的参考资料基本没说清楚是用真linux还是虚拟机下的ubuntu,这点我绕了很多的弯路,也尝试了大部分比较靠谱的资料最后均无法实现!!!

在虚拟化环境中,虚拟机通常无法直接访问物理显卡,而是使用虚拟显卡来模拟图形输出。因此,虚拟机中的显卡性能通常受到限制,无法达到与物理机相同的水平。

然而,一些虚拟化软件(如 VMware、VirtualBox 等)提供了一些特殊的功能,可以使虚拟机在一定程度上利用物理显卡的性能。这些功能通常被称为“虚拟 GPU”(Virtual GPU)或“显卡透传”(GPU Passthrough)。
后果
后来查看资料得知可以使用window子系统,Windows Subsystem for Linux,即适用于 Linux 的 Windows 子系统 (WSL)。
这边已经升级为WSL2,官方资料说明其可以使用windows下的显卡驱动,嗯就很香~,言归正传,看看如何配置WSL2 Ubuntu+gnome图形界面

1.wsl2 安装

必须运行 Windows 10 版本 2004 及更高版本(内部版本 19041 及更高版本)或 Windows 11 才能使用以下命令。
WSL2的安装主要参考官方教程
https://docs.microsoft.com/zh-cn/windows/wsl/install-win10
其他资料网上也比较多一般这一步比较容易这边不展开

2.Ubuntu安装

首先打开windows应用商店,输入ubuntu,这边我下载的是ubuntu 18.04版本的,其他版本的没有尝试过


ubuntu初始化操作
下载完成后点击打开,需要输入用户名、密码、确认密码。输入密码是不会显示的,直接输入之后回车就可以,出现这个界面即为成功了

3.VcXsrv安装与启动

连接WSL显示桌面需要用到X Server Windows软件,使用VcXsrv
软件链接:https://sourceforge.net/projects/vcxsrv/
3.1 安装就一路next就好
3.2 启动步骤



点下Save configuration保存配置,点击完成,下一次就直接点config文件进入不需要在重新设置一遍,点击进入后应该是黑屏如下:

4. gnome图形界面的配置

WSL 不支持 systemd 而 Gnome 桌面又是基于 systemd,所以先解决这个问题

sudo apt update
sudo apt install git
git clone https://github.com/DamionGans/ubuntu-wsl2-systemd-script.git
cd ubuntu-wsl2-systemd-script/
bash ubuntu-wsl2-systemd-script.sh

安装完systemd之后,退回windows终端(直接叉掉这个终端就行),务必输入

wsl --shutdown

确认你wsl版本为wsl2

wsl -l -v


如果wsl version 为1那么需要先将版本转为2

wsl --set-version Ubuntu-18.04 2 

重启ubuntu终端。输入

systemctl

确认systemctl能用,出来一堆log,失败的话会是

System has not been booted with systemd as init system (PID 1). Can't operate.

接下来安装图形界面

sudo apt install ubuntu-desktop

这边可能要多试几次,网络不好容易断掉,确保文件下载并安装完成
安装完毕后
输入以下命令

sudo service dbus restart

输入sudo vi ~/.bashrc
在.bashrc文件中导入(vi的插入用 i,输入完成后按esc 输入:wq保存)

export DISPLAY=$(grep -m 1 nameserver /etc/resolv.conf | awk '{print $2}'):0.0

export XDG_SESSION_TYPE=x11

保存后
执行 source ~/.bashrc 生效
保证VcXsrv启动状态下,输入

gnome-session

这边又有一个大坑,很多人在这边发现屏幕还是黑屏,我来来回回试了30多次吧,均也是这种情况,这时候可以去看看是不是VcXsrv被防火墙给拦截了


设置完成后重启VcXsrv,这个时候应该能够看到这个界面

恭喜到这里就完成了

5.显卡驱动的升级

因为我这边需要用到opengl3.3以上,但是我查看信息时发现还是opengl2.1,在gnome终端输入查看的命令为

glxinfo | grep OpenGL

这时候不要急着升级驱动,因为wsl2用的是windows的驱动,这边先升级opengl

sudo add-apt-repository ppa:kisak/kisak-mesa
sudo apt update && sudo apt upgrade

升级过后重启ubuntu
再次进入后在gnome终端输入:

glxinfo | grep OpenGL

这个时候应该会出现

查看显卡驱动为

完成!!!

6. wsl2与VMware虚拟机共存

只需要将VMware升级到16以上,开启虚拟机平台,即可解决问题

本地与WSL文件传输

方法一直接命令启动,缺点每次都要输入

explorer.exe .

方法二:添加网络位置,设置完成后,之后直接打开即可

有关WSL2 Ubuntu+gnome图形界面的安装血泪史(亲测有效)的更多相关文章

  1. ruby - 如何在 Ubuntu 中清除 Ruby Phusion Passenger 的缓存? - 2

    我试过重新启动apache,缓存的页面仍然出现,所以一定有一个文件夹在某个地方。我没有“公共(public)/缓存”,那么我还应该查看哪些其他地方?是否有一个URL标志也可以触发此效果? 最佳答案 您需要触摸一个文件才能清除phusion,例如:touch/webapps/mycook/tmp/restart.txt参见docs 关于ruby-如何在Ubuntu中清除RubyPhusionPassenger的缓存?,我们在StackOverflow上找到一个类似的问题:

  2. Vscode+Cmake配置并运行opencv环境(Windows和Ubuntu大同小异) - 2

    之前在培训新生的时候,windows环境下配置opencv环境一直教的都是网上主流的vsstudio配置属性表,但是这个似乎对新生来说难度略高(虽然个人觉得完全是他们自己的问题),加之暑假之后对cmake实在是爱不释手,且这样配置确实十分简单(其实都不需要配置),故斗胆妄言vscode下配置CV之法。其实极为简单,图比较多所以很长。如果你看此文还配不好,你应该思考一下是不是自己的问题。闲话少说,直接开始。0.CMkae简介有的人到大二了都不知道cmake是什么,我不说是谁。CMake是一个开源免费并且跨平台的构建工具,可以用简单的语句来描述所有平台的编译过程。它能够根据当前所在平台输出对应的m

  3. 在VMware16虚拟机安装Ubuntu详细教程 - 2

    在VMware16.2.4安装Ubuntu一、安装VMware1.打开VMwareWorkstationPro官网,点击即可进入。2.进入后向下滑动找到Workstation16ProforWindows,点击立即下载。3.下载完成,文件大小615MB,如下图:4.鼠标右击,以管理员身份运行。5.点击下一步6.勾选条款,点击下一步7.先勾选,再点击下一步8.去掉勾选,点击下一步9.点击下一步10.点击安装11.点击许可证12.在百度上搜索VM16许可证,复制填入,然后点击输入即可,亲测有效。13.点击完成14.重启系统,点击是15.双击VMwareWorkstationPro图标,进入虚拟机主

  4. kvm虚拟机安装centos7基于ubuntu20.04系统 - 2

    需求:要创建虚拟机,就需要给他提供一个虚拟的磁盘,我们就在/opt目录下创建一个10G大小的raw格式的虚拟磁盘CentOS-7-x86_64.raw命令格式:qemu-imgcreate-f磁盘格式磁盘名称磁盘大小qemu-imgcreate-f磁盘格式-o?1.创建磁盘qemu-imgcreate-fraw/opt/CentOS-7-x86_64.raw10G执行效果#ls/opt/CentOS-7-x86_64.raw2.安装虚拟机使用virt-install命令,基于我们提供的系统镜像和虚拟磁盘来创建一个虚拟机,另外在创建虚拟机之前,提前打开vnc客户端,在创建虚拟机的时候,通过vnc

  5. ruby - ri 有空文件 – Ubuntu 11.10, Ruby 1.9 - 2

    我正在运行Ubuntu11.10并像这样安装Ruby1.9:$sudoapt-getinstallruby1.9rubygems一切都运行良好,但ri似乎有空文档。ri告诉我文档是空的,我必须安装它们。我执行此操作是因为我读到它会有所帮助:$rdoc--all--ri现在,当我尝试打开任何文档时:$riArrayNothingknownaboutArray我搜索的其他所有内容都是一样的。 最佳答案 这个呢?apt-getinstallri1.8编辑或者试试这个:(非rvm)geminstallrdocrdoc-datardoc-da

  6. ruby - 在 Ubuntu 14.04 中使用 Curl 安装 RVM 时出错 - 2

    我试图在Ubuntu14.04中使用Curl安装RVM。我运行了以下命令:\curl-sSLhttps://get.rvm.io|bash-sstable出现如下错误:curl:(7)Failedtoconnecttoget.rvm.ioport80:Networkisunreachable非常感谢解决此问题的任何帮助。谢谢 最佳答案 在执行curl之前尝试这个:echoipv4>>~/.curlrc 关于ruby-在Ubuntu14.04中使用Curl安装RVM时出错,我们在Stack

  7. ruby - rails 3.2.2(或 3.2.1)+ Postgresql 9.1.3 + Ubuntu 11.10 连接错误 - 2

    我正在使用PostgreSQL9.1.3(x86_64-pc-linux-gnu上的PostgreSQL9.1.3,由gcc-4.6.real(Ubuntu/Linaro4.6.1-9ubuntu3)4.6.1,64位编译)和在ubuntu11.10上运行3.2.2或3.2.1。现在,我可以使用以下命令连接PostgreSQLsupostgres输入密码我可以看到postgres=#我将以下详细信息放在我的config/database.yml中并执行“railsdb”,它工作正常。开发:adapter:postgresqlencoding:utf8reconnect:falsedat

  8. ruby-on-rails - Ubuntu 14.04 Rails 丢失文件 - 2

    安装Rails时,一切都很好,但后来,我写道:rails-v和输出:/home/toshiba/.rvm/rubies/ruby-2.2.1/lib/ruby/site_ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in`require':cannotloadsuchfile--rails/cli(LoadError)from/home/toshiba/.rvm/rubies/ruby-2.2.1/lib/ruby/site_ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in`r

  9. Ubuntu20.04系统WineHQ7.0安装微信 - 2

    提供3种Ubuntu系统安装微信的方法,在Ubuntu20.04上验证都ok。1.WineHQ7.0安装微信:ubuntu20.04安装最新版微信--可以支持微信最新版,但是适配的不是特别好;比如WeChartOCR.exe报错。2.原生微信安装:linux系统下的微信安装(ubuntu20.04)--微信适配的最好,反应最快,但是微信版本只到2.1.1,版本太老,很多功能都没有。3.深度deepin-wine6安装微信:ubuntu20.04+系统deepin-wine6安装新版微信--综合比较好,当前个人使用此种方法1个月,微信版本3.4;没什么大问题,尚可。一、WineHQ7.0安装微信

  10. ruby-on-rails - 无法构建 gem native 扩展 (mkmf (LoadError)) - Ubuntu 12.04 - 2

    这个问题在这里已经有了答案:Unabletoinstallgem-Failedtobuildgemnativeextension-cannotloadsuchfile--mkmf(LoadError)(17个答案)关闭9年前。嘿,我正在尝试在一台新的ubuntu机器上安装rails。我安装了ruby​​和rvm,但出现“无法构建gemnative扩展”错误。这是什么意思?$sudogeminstallrails-v3.2.9(没有sudo表示我没有权限)然后它会输出很多“获取”命令,最终会出现这个错误:Buildingnativeextensions.Thiscouldtakeawhi

随机推荐