技术标签: Win10 Linux子系统 Ubuntu WSL GUI 图形界面
陈拓 2021/07/25-2021/07/26
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操作系统(如Linux、FreeBSD和Solaris)上,提供轻量级桌面环境。
VcXsrv的下载网址是:https://sourceforge.net/projects/vcxsrv/
点击Download下载vcxsrv-64.1.20.9.0.installer.exe
下载后安装,过程很简单。VcXsrv安装完成后的程序名字是Xlaunch,在开始菜单和桌面上都可以找到Xlaunch:
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指定显卡的显示器编号(一个显卡可能输出到多台显示器)
source ~/.bashrc
在Win10系统中打开XLaunch,启动XServer监听WSL。
一路默认就可以。
设置完成后XServer就启动了,开始监听WSL,桌面右下角会出现XLaunch图标:
或者
在WSL终端测试一下,运行xeyes:
OK!
现在我们已经可以在命令行中运行Linux图形界面程序了,如果有Linux桌面就更方便了。
我们可以为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
sudo apt-get install xfce4 xfce4-terminal
出错,按照提示,输入命令:
sudo apt-get install xfce4 xfce4-terminal --fix-missing
选gdm3
OK
startxfce4
有一些警告,不管它了。看Xfce4桌面:
然后就可以在Xfce4桌面中进行Linux系统的操作了。
例如运行xeyes:Applications > Run Program
打开Application Finder窗口:
输入xeyes,点击Launch:
启用Xfce4之后Linux桌面就覆盖了Windows桌面,可以用Win键切换到其他的Windows程序。
默认情况下Xfce4桌面始终占据标题栏,导致其他程序显示不全。例如Word:
设置面板,让Xfce4隐藏标题栏:Applications > Settings > Panel
将下图中Automatically hide the panel的Never选项
改为Always
这样其他程序窗口就能显示全了,看效果。
文章浏览阅读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包解析结构
文章浏览阅读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模型量化
文章浏览阅读1.4k次。_选择排序、插入排序、冒泡排序以及快速排序和归并排序的c语言实现设计程序
文章浏览阅读6.2k次,点赞19次,收藏62次。什么是交叉编译?交叉编译过程!如何理解代码编译过程!arm-none-eabi-gccarm-none-eabi-asarm-none-eabi-ldarm-none-eabi-objcopy_arm toolchain
文章浏览阅读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 代码
文章浏览阅读1.2k次。在TI 的CC2530中,使用的是协议栈Z-Stack2007,现在想通过串口与STM32通信,当STM32给zigbee发送数据时,zigbee接收,只是接收的这部分代码TI给封装起来了,只知道在配置里头是这样的:/* @ZL 串口初始化 */halUARTCfg_t uartConfig;/* UART Configuration */uartConfig.configured ..._linux zigbee stack
文章浏览阅读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++
文章浏览阅读5.2k次,点赞2次,收藏47次。1). 死锁的概念在两个或者多个并发进程中,如果每个进程持有某种资源而又等待其它进程释放它或它们现在保持着的资源,在未改变这种状态之前都不能向前推进,称这一组进程产生了死锁。通俗的讲,就是两个或多个进程无限期的阻塞、相互等待的一种状态。2). 死锁产生的四个必要条件互斥:至少有一个资源必须属于非共享模式,即一次只能被一个进程使用;若其他申请使用该资源,那么申请进程必须等到该资源被释放为止;占有并等待:一个进程必须占有至少一个资源,并等待另一个资源,而该资源为其他进程所占有;_window os面试题
文章浏览阅读66次。1. 什么是 loader官方的解释是这样的:loader 用于对模块的源代码进行转换。loader 可以使你在 import 或"加载"模块时预处理文件。因此,loader 类似于其他构建工具中“任务(task)”,并提供了处理前端构建步骤的强大方法。loader 可以将文件从不同的语言(如 TypeScript)转换为 JavaScript,或将内联图像转换为 data URL。l..._webpack3处理sass
文章浏览阅读9.5k次,点赞3次,收藏7次。为大家精选了10片优秀的流程图文章~画了多年的流程图,你真的画规范了吗?如何画逻辑流程图,这个技能你Get了没?流程图那么多,你数得过来吗?产品的三种流程图,你都知道吗?三种常见「产品流程图」是如何思考与绘制出来的?PM小技巧——流程图&产品原型关于流程图元素定义、结构分类;以及,我有一些技巧告诉你线框流程图:一款用于工作流程或APP的UX交付一次流程图设计的思考案例分析:绘制流程图需要注..._a* algorithm flowchart
文章浏览阅读7.2k次。我们的台式机接口有时候用不了,可能是被禁用了,那要怎么样解决呢?下面由学习啦小编给你做出详细的台式机usb接口禁用了解决方法介绍!希望对你有帮助!台式机usb接口禁用了解决方法一:一、检查是否禁用主板usb设备。进入bios屏蔽掉usb,进入bios选择 Devices - USB Setup- Front USB Ports- 将该项改为 Enable; 按F10保存并退出。二、在控制面板里检查..._主机的usb接口封了怎么用
文章浏览阅读482次,点赞7次,收藏8次。解决:1. 手动加入jar包2.选择自己maven仓库中存在mysql-connector3. 选择完毕后,确定使用:4. 进行测试连接_idea com.mysql:mysql-connector下载卡住