Win10的Linux子系统Ubuntu安装图形界面-程序员宅基地

技术标签: Win10 Linux子系统  Ubuntu  WSL  GUI  图形界面  

Win10Linux子系统Ubuntu安装图形界面

陈拓 2021/07/25-2021/07/26

1. 概述

Win10的linux子系统Windows Subsystem for Linux(简称 WSL)之Ubuntu安装见文章:

《Win10启用Linux子系统安装Ubuntu》

https://zhuanlan.zhihu.com/p/341394468

https://blog.csdn.net/chentuo2000/article/details/112131624

WSL安装完成后通过终端操作Linux子系统。

如果要运行带图形界面的程序,就需要为WSL安装图形用户界面GUI。

Linux图形界面多使用XServer。VcXsrv是常用于Windows的XServer。

VcXsrv可以运行安装在WSL环境中的Linux GUI程序。

有了XServer就可以运行Linux图形界面程序了,为例方便操作WSL我们可以安装一个Linux桌面环境,这不是必须的。我们安装常用的Linux桌面环境Xfce,Xfce是一个自由软件,运行在类Unix操作系统(如LinuxFreeBSDSolaris)上,提供轻量级桌面环境

2. Win10系统安装VcXsrv

VcXsrv的下载网址是:https://sourceforge.net/projects/vcxsrv/

点击Download下载vcxsrv-64.1.20.9.0.installer.exe

下载后安装,过程很简单。VcXsrv安装完成后的程序名字是Xlaunch,在开始菜单和桌面上都可以找到Xlaunch:

 

3. 配置XLaunch

  • 设置DISPLAY环境变量

echo -e "\n##DISPLAY Configuration" >> ~/.bashrc

echo "export DISPLAY=127.0.0.1:0.0" >> ~/.bashrc

export关键字导出DISPLAY环境变量

127.0.0.1是XServer的IP,也可以用win10电脑的IP

0.0的前一个0是XServer的显卡编号(一台机器可能有多个显卡)

0.0的后一个0是连到XServer指定显卡的显示器编号(一个显卡可能输出到多台显示器)

  • 查看配置cat ~/.bashrc

  • 配置生效

source ~/.bashrc

 

4. 使用VcXsrv

在Win10系统中打开XLaunch,启动XServer监听WSL。

  • 显示设置

一路默认就可以。

设置完成后XServer就启动了,开始监听WSL,桌面右下角会出现XLaunch图标:

 

或者

 

  • 测试

WSL终端测试一下,运行xeyes

OK!

现在我们已经可以在命令行中运行Linux图形界面程序了,如果有Linux桌面就更方便了。

5. 为WSL终端中安装桌面Xfce4

我们可以为WSL安装一个完整的Linux桌面Xfce4,方便对WSL的操作。

  • 换源

见《Win10的Linux子系统Ubuntu换源》

https://zhuanlan.zhihu.com/p/342771976

https://blog.csdn.net/chentuo2000/article/details/112387914

  • 更新源

sudo apt-get update

 

sudo apt-get upgrade

  • 安装Xfce4桌面

sudo apt-get install xfce4 xfce4-terminal

出错,按照提示,输入命令:

sudo apt-get install xfce4 xfce4-terminal --fix-missing

选gdm3

OK

 

  • 运行Xfce4

startxfce4

有一些警告,不管它了。看Xfce4桌面:

 

然后就可以在Xfce4桌面中进行Linux系统的操作了。

例如运行xeyes:Applications > Run Program

 

打开Application Finder窗口:

 

输入xeyes,点击Launch:

 

  • 切换到其他Windows程序

启用Xfce4之后Linux桌面就覆盖了Windows桌面,可以用Win键切换到其他的Windows程序。

  • 设置面板

默认情况下Xfce4桌面始终占据标题栏,导致其他程序显示不全。例如Word:

 

设置面板,让Xfce4隐藏标题栏:Applications > Settings > Panel

将下图中Automatically hide the panel的Never选项

改为Always

 

这样其他程序窗口就能显示全了,看效果。

 

参考文档

  1. 为win10的linux子系统搭载图形界面(WSL安装桌面)》https://www.cnblogs.com/liangxuran/p/14274847.html

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/chentuo2000/article/details/119104547

智能推荐

JAR包详解_jar包解析结构-程序员宅基地

文章浏览阅读9.2k次,点赞2次,收藏13次。一、什么是JAR包JAR包就是 Java Archive File,顾名思义,它的应用是与 Java 息息相关的,是 Java 的一种文档格式,是一种与平台无关的文件格式,可将多个文件合成一个文件。jar 包与 zip 包非常相似——准确地说,它就是 zip 包,所以叫它文件包。jar 与 zip 唯一的区别就是在 jar 文件的内容中,包含了一个 META-INF/MANIFEST.MF 文件,该文件是在生成 jar 文件的时候自动创建的,作为jar里面的"详情单",包含了该Jar包的版本、创建人和类搜_jar包解析结构

LLM权重量化_llm模型量化-程序员宅基地

文章浏览阅读921次,点赞13次,收藏19次。我们可以计算尺度是255/(3.2+3.0) = 41.13,zero point为 -round(41.13•-3.0)-128 = 123- 128 = -5,因此我们之前的0.1权重将被量化为round(41.13 * 0.1 - 5)= -1。然而,它们的局限性,特别是在处理异常值时,导致了LLM.int8(),这种技术也保留了模型的性能。通常,模型的大小是通过将**参数的数量(大小)乘以这些值的精度(数据类型)**来计算的。现在我们的模型已经被量化了,我们想要检查这个过程的影响。_llm模型量化

GNU ARM Toolchain 初学者入门指南-程序员宅基地

文章浏览阅读6.2k次,点赞19次,收藏62次。什么是交叉编译?交叉编译过程!如何理解代码编译过程!arm-none-eabi-gccarm-none-eabi-asarm-none-eabi-ldarm-none-eabi-objcopy_arm toolchain

html页面上有一个id值为s1的,达内java第3次周考题黄色背景为正确答案.doc-程序员宅基地

文章浏览阅读2.5k次。达内java第3次周考题黄色背景为正确答案.doc1 选择题40 题,每题 2 分 1、 在 CSS 中,关于 BOX 的 margin 属性的叙述正确的是( )单选 A、 边距 margin 只能取一个值 B、 margin 属性的参数有 margin-left、margin-right、margin-top、 margin-bottom C、 margin 属性的值不可为 auto D、 ma..._html 页面上有一个 id 值为 s1 的 元素,现需要使用 javascript 代码

linux嵌入式串口与zigbee,zigbee的串口与STM32通信-程序员宅基地

文章浏览阅读1.2k次。在TI 的CC2530中,使用的是协议栈Z-Stack2007,现在想通过串口与STM32通信,当STM32给zigbee发送数据时,zigbee接收,只是接收的这部分代码TI给封装起来了,只知道在配置里头是这样的:/* @ZL 串口初始化 */halUARTCfg_t uartConfig;/* UART Configuration */uartConfig.configured ..._linux zigbee stack

随便推点

关于新的NDK编译Openssl时候,遇到gcc文件不存在的问题处理_为什么 下载的 ndk 编译包 里 没有gcc 和g++-程序员宅基地

文章浏览阅读2.1k次。自从NDK的r19开始,由于gcc兼容clang的编译方式有问题,该版本已经移除了相关gcc文件,所以用老方法交叉编译Openssl的时候,会提示找不到gcc文件。实际现在是直接使用clang编译即可,具体方法如下:1.下载NDKhttps://developer.android.com/ndk/downloads/index.html2.下载opensslhttps://www.ope..._为什么 下载的 ndk 编译包 里 没有gcc 和g++

操作系统常见的40道面试题_window os面试题-程序员宅基地

文章浏览阅读5.2k次,点赞2次,收藏47次。1). 死锁的概念在两个或者多个并发进程中,如果每个进程持有某种资源而又等待其它进程释放它或它们现在保持着的资源,在未改变这种状态之前都不能向前推进,称这一组进程产生了死锁。通俗的讲,就是两个或多个进程无限期的阻塞、相互等待的一种状态。2). 死锁产生的四个必要条件互斥:至少有一个资源必须属于非共享模式,即一次只能被一个进程使用;若其他申请使用该资源,那么申请进程必须等到该资源被释放为止;占有并等待:一个进程必须占有至少一个资源,并等待另一个资源,而该资源为其他进程所占有;_window os面试题

webpack 3 零基础入门教程 #6 - 使用 loader 处理 CSS 和 Sass-程序员宅基地

文章浏览阅读66次。1. 什么是 loader官方的解释是这样的:loader 用于对模块的源代码进行转换。loader 可以使你在 import 或"加载"模块时预处理文件。因此,loader 类似于其他构建工具中“任务(task)”,并提供了处理前端构建步骤的强大方法。loader 可以将文件从不同的语言(如 TypeScript)转换为 JavaScript,或将内联图像转换为 data URL。l..._webpack3处理sass

a*算法流程图_关于流程图,你想知道的都在这里-程序员宅基地

文章浏览阅读9.5k次,点赞3次,收藏7次。为大家精选了10片优秀的流程图文章~画了多年的流程图,你真的画规范了吗?如何画逻辑流程图,这个技能你Get了没?流程图那么多,你数得过来吗?产品的三种流程图,你都知道吗?三种常见「产品流程图」是如何思考与绘制出来的?PM小技巧——流程图&产品原型关于流程图元素定义、结构分类;以及,我有一些技巧告诉你线框流程图:一款用于工作流程或APP的UX交付一次流程图设计的思考案例分析:绘制流程图需要注..._a* algorithm flowchart

计算机usb接口禁用,台式机usb接口禁用了怎么办-程序员宅基地

文章浏览阅读7.2k次。我们的台式机接口有时候用不了,可能是被禁用了,那要怎么样解决呢?下面由学习啦小编给你做出详细的台式机usb接口禁用了解决方法介绍!希望对你有帮助!台式机usb接口禁用了解决方法一:一、检查是否禁用主板usb设备。进入bios屏蔽掉usb,进入bios选择 Devices - USB Setup- Front USB Ports- 将该项改为 Enable; 按F10保存并退出。二、在控制面板里检查..._主机的usb接口封了怎么用

IDEA连接Mysql失败:下载驱动失败,Failed todownload Cannot download Read timed out_idea com.mysql:mysql-connector下载卡住-程序员宅基地

文章浏览阅读482次,点赞7次,收藏8次。解决:1. 手动加入jar包2.选择自己maven仓库中存在mysql-connector3. 选择完毕后,确定使用:4. 进行测试连接_idea com.mysql:mysql-connector下载卡住

推荐文章

热门文章

相关标签