在Windows上面安装WSL以使用Linux

2023-05-16

在Windows上面安装WSL以使用Linux

  • 0 WSL(Windows Subsystem for Linux )
  • 1 安装Ubuntu步骤
    • 1.1 检查Windows版本
    • 1.2 激活WSL服务
    • 1.3 安装Ubuntu发行版
    • 1.4 apt换源
    • 1.5 更新软件列表和软件源,顺便查看换源后速度如何
  • 2 在WSL中安装desktop(GUI)
    • 2.1 安装精简Linux桌面lxde
    • 2.2 在Windows中安装VcXsrv
    • 2.3 XLaunch设置
    • 2.4 添加环境变量
    • 2.5 启动Linux桌面lxde

写在前面:超链接我会将链接地址明示,这样大家在无法联网的时候也能看到链接地址。

0 WSL(Windows Subsystem for Linux )

  • WSL(Windows Subsystem for Linux )就是Linux版本的Windows系统。

  • 官方页面——适用于 Linux 的 Windows 子系统文档:https://learn.microsoft.com/zh-cn/windows/wsl/

WSL目前(2023年2月)有两个版本,分别是WSL 1和WSL 2 ,异同点如下:

功能WSL 1WSL 2
Windows 和 Linux 之间的集成
启动时间短
与传统虚拟机相比,占用的资源量少
可以与当前版本的 VMware 和 VirtualBox 一起运行
托管 VM
完整的 Linux 内核
完全的系统调用兼容性
跨 OS 文件系统的性能

从上面的比较表中可以看出,WSL 2 架构在几个方面优于 WSL 1,但跨 OS 文件系统的性能除外,对于这种情况,可通过将项目文件存储在与处理项目时运行的工具相同的操作系统上进行处理

1 安装Ubuntu步骤

1.1 检查Windows版本

必须运行 Windows 10 版本 2004 及更高版本(内部版本 19041 及更高版本)或 Windows 11 才能使用以下命令。

按下WIN+R,输入winver,查看系统内核版本,符合上述条件才可以继续,如果版本低,请参阅——旧版 WSL 的手动安装步骤https://learn.microsoft.com/zh-cn/windows/wsl/install-manual
在这里插入图片描述
在这里插入图片描述

1.2 激活WSL服务

按下WIN+X,点击Windows PowerShell (管理员),输入以下命令

Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux

在这里插入图片描述
在这里插入图片描述
查看Windows功能,如下即可。
在这里插入图片描述

1.3 安装Ubuntu发行版

在Microsoft Store中搜索Ubuntu,选择你需要的版本,并不是越新越好,可能你需要使用的工具不支持Ubuntu最新版,所以需要先了解清楚。

这里我安装的是18.04.5 LTS 版本
在这里插入图片描述
下载好了之后点击打开,等待几分钟后打开,设置用户名和密码。这里就表示WSL安装好了。
在这里插入图片描述

1.4 apt换源

Debian / Ubuntu 的官方源在国内访问很慢,建议更换为清华大学 TUNA 的软件源镜像。https://mirrors.tuna.tsinghua.edu.cn/

  1. 查看当前apt源:
cat /etc/apt/sources.list

在这里插入图片描述

  1. 查看清华Ubuntu 软件仓库镜像使用帮助https://mirrors.tuna.tsinghua.edu.cn/help/ubuntu/
    记得设置Ubuntu版本
    在这里插入图片描述
  2. 备份原配置文件
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
  1. vim编辑sources.list
sudo vim /etc/apt/sources.list 

在这里插入图片描述

  1. 将 sources.list 中的内容替换如下
    输入i,进入编辑模式
    在这里插入图片描述
  • 把原来的内容删除,把清华镜像的内容复制粘贴(右键空白处)进来,如果编辑途中有其他问题,请搜索vim编辑语法。
    在这里插入图片描述

编辑完,按ESC,输入:wq,再按Enter,保存并退出
在这里插入图片描述

  1. 查看修改后的apt源
cat /etc/apt/sources.list

在这里插入图片描述

1.5 更新软件列表和软件源,顺便查看换源后速度如何

sudo apt-get update
sudo apt-get upgrade
  • 速度大约2m/s,差不多是我平时下载其他东西的速度。
    在这里插入图片描述
  • 这一步要好几分钟,等待……
    在这里插入图片描述

2 在WSL中安装desktop(GUI)

2.1 安装精简Linux桌面lxde

sudo apt install lxde
在这里插入图片描述
安装lxde的时候别闲着,顺便下载并安装VcXsrv

2.2 在Windows中安装VcXsrv

这是一个免费软件,VcXsrv Windows X Server:https://sourceforge.net/projects/vcxsrv/

  1. 打开安装包,点击下一步
    在这里插入图片描述
  2. 选择路径,开始install
    在这里插入图片描述

2.3 XLaunch设置

  • 选择One large widow,display number选择0。
    在这里插入图片描述
  • 下一步
    在这里插入图片描述
  • 下一步
    在这里插入图片描述
  • 保存配置文件
  • 出现黑色窗口
    在这里插入图片描述

2.4 添加环境变量

在Ubuntu的terminal中输入以下命令

export DISPLAY=localhost:0
export LIBGL_ALWAYS_INDIRECT=1

在这里插入图片描述

2.5 启动Linux桌面lxde

startlxde

在这里插入图片描述
在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在Windows上面安装WSL以使用Linux 的相关文章

  • 如何使用Python在没有窗口的情况下在屏幕上显示文本

    问题 我需要在没有窗口的情况下直接将文本写入屏幕 文本需要显示在所有其他窗口和全屏应用程序之上 并且不应以任何方式单击或交互 Example The text doesn t need to have a transparent backg
  • 停止服务时单元陷入故障状态(状态=143)[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 这是我的问题 我有 CentOS 和 java 进程在上面运行 Java进程是通过启动 停止脚本来操作的 它也创建了 java 实例的 p
  • 已安装全局 NPM 包但未找到命令

    我已经全局安装了两个 npm 包 下载 https www npmjs com package download and 谜虚拟盒 https www npmjs com package enigmavirtualbox通过命令行 npm
  • 在 powershell 脚本中以不同用户身份本地运行代码块

    这是非常简单的事情 但我就是无法让任何东西发挥作用 我想在特定用户下的 powershell 脚本中运行块代码 关键字是locally我正在使用 powershell 2 0 Invoke Command 似乎需要远程主机 我运行以下命令
  • Unix 命令“host” - Windows 中有等效命令吗? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我在一台 Windows 7 机器上 按照本文指示我使用 Unix 命令 host https devcenter heroku com
  • Windows 版 GitKraken 中的文件名太长

    正如建议的Q22575737 https stackoverflow com a 22575737 6623589 我已经更新了我的注册表并设置了git config system core longpaths true在处理长路径时 问题
  • 为 Qt 应用程序创建 Linux 安装

    我刚刚用 Qt Creator 制作了一个很棒的程序 我对自己很满意 如何将其从台式机移至笔记本电脑 那么 最好的方法是安装程序 对吗 对于 Ubuntu 这是一个 Debian 软件包 对吗 我怎么做 有人这样做过吗 他们可以分享 QT
  • 如何检测Windows版本是否合法? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我对获取版本信息不感兴趣 我想做的就是确保我的应用程序只能在合法版本的 Windows 上运行 而不是在盗版版本上运行 Windows 使
  • Windows 上的 Node.js 和 Express

    今晚 我决定尝试在我的 Windows 7 计算机上使用 Express 构建一个简单的 Node js 应用程序 安装过程还算顺利 但 Express 拒绝配合 以下是我已采取的步骤 使用以下位置提供的 MSI 安装 Node jshtt
  • sleep 0 有特殊含义吗?

    我看到很多用法sleep 0在我的一个客户项目中 代码看起来像这样 while true sleep 0 end 阅读一些像这样的答案this https stackoverflow com questions 3727420 signif
  • 适用于 KDE 和 Gnome 的 Gui [重复]

    这个问题在这里已经有答案了 我想为一个现在是 CLI 的应用程序编写一个 gui 它需要在 KDE 和 Gnome DE 中 看起来不错 充分利用用户的外观设置 如果我选择 Qt 或 GTK 我能够做到这一点吗 它们与两个 DE 集成良好吗
  • 无需 cron 在后台发送邮件

    我想知道是否有一种方法可以运行 PHP 循环 以便在后台向订阅者发送几百封电子邮件 我的目标是格式化新闻通讯 单击发送 然后关闭浏览器或更改页面 当然 发送电子邮件的实际过程将在后台运行 不会因浏览器关闭而中断 我知道这可以通过 cron
  • Docker:处理 tar 文件时出错(退出状态 1):设置枢轴目录时出错:不是目录

    我是 Docker 新手 不知道是什么原因导致此错误或如何诊断它 任何有关此问题的具体帮助或有关首先检查何处以诊断此类问题的提示将不胜感激 我的 Dockerfile FROM java 8 Install maven RUN apt ge
  • 设置 Apache POI 的路径

    我想创建 Excel 文件并使用 java 程序在该文件中写入数据 That is here http www techbrainwave com p 554我在 java 文件所在的位置提取了 Apache POI 并将该路径包含在路径变
  • Linux shell 脚本中的 while 循环超时

    这工作正常 无限循环 while TRUE do printf done 我在尝试着timeout this while loop与timeout命令 所有这些都不起作用 timeout 5 while TRUE do printf don
  • subprocess.Popen('start') 失败

    在 python 中运行此命令将导致 WindowsError 指出找不到指定的文件 FAILS import subprocess subprocess Popen start notepad exe 在命令窗口中 它可以工作 start
  • 信号处理程序有单独的堆栈吗?

    信号处理程序是否有单独的堆栈 就像每个线程都有单独的堆栈一样 这是在 Linux C 环境中 来自 Linux 手册页signal 7 http kernel org doc man pages online pages man7 sign
  • 如何制作和应用SVN补丁?

    我想制作一个SVN类型的补丁文件httpd conf这样我就可以轻松地将其应用到其他主机上 If I do cd root diff Naur etc httpd conf httpd conf original etc httpd con
  • .NET Core 中的跨平台文件名处理

    如何处理文件名System IO以跨平台方式运行类以使其在 Windows 和 Linux 上运行 例如 我编写的代码在 Windows 上完美运行 但它不会在 Ubuntu Linux 上创建文件 var tempFilename Dat
  • 并行运行 make 时出错

    考虑以下制作 all a b a echo a exit 1 b echo b start sleep 1 echo b end 当运行它时make j2我收到以下输出 echo a echo b start a exit 1 b star

随机推荐

  • vscode+cmake配置普通c++项目

    目录 写在前面代码命令行编译与运行vscode配置编译与调试调试参考 写在前面 1 本文内容 vscode 43 cmake配置普通c 43 43 项目 2 平台 ubuntu vscode 3 转载请注明出处 xff1a https bl
  • Vscode 使用Remote-SSH 连接到虚拟机ubuntu18.04(以及遇到的错误和解决办法)

    vscode版本 xff1a 1 40 0 ubuntu xff1a 18 04 一 vscode安装remote ssh插件 二 设置要连接的主机IP地址和用户名 1 Crtl 43 P呼出命令栏 xff0c 输入 gt Remote S
  • 7、结构体之结构体数组

    结构体这块本来学着没有什么问题的 xff0c 但是 xff0c 有时候的学习不知道怎么的 xff0c 可能是课程进度有点快 xff0c 会让自己把前面的知识点与现学的联系起来 xff0c 从而使自己迷惑起来 好了 xff0c 先说问题 xf
  • 输入n个数字,并求出它们中间的最大值与最小值

    做题觉得简单 xff0c 拿着编译器一编程就各种小毛病出来了 xff0c 这样下去的进度就太慢了 既然是n个数 xff0c 那么肯定就要有输入 xff0c 定义一个数组a 5 来接收从键盘输入的数字 xff0c 怎么将接收的数值依次传入数组
  • 二叉树和堆(理论)

    树 1 树其实就是不包含回路的连通无向图 2 一棵树中的任意两个结点有且仅有唯一的一条路径连通 3 一棵树如果有n个结点 xff0c 那么它一定恰好有n 1条边 二叉树 二叉树是一种特殊的树 二叉树的特点是每个结点最多有两个儿子 xff0c
  • 十进制转八进制

    给一个十进制数 xff0c 输出它的八进制数 由于取余所得得到数需要逆序输出 xff0c 符合栈的特征 xff08 后进先出 xff09 xff0c 所以使用栈来完成 源代码 xff1a include lt stdio h gt incl
  • 矩阵各项求和

    include span class token generics function span class token punctuation lt span stdio span class token punctuation span
  • 简单易理解的做法:有n个人围成一圈,顺序从1开始排号。从第1个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来第几号的那位。简单的循环做法。

    写在前面 xff1a 这个方法用到很简单的指针与循环 xff0c 以方便新手上手该题 xff0c 并且通过直接模拟的方式理解这一过程 很多同学看懂题目意思而无法实现 xff0c 不妨看看我的方法 上代码 xff1a include lt i
  • switch中的i++与++i

    for 语句1 语句2 语句3 在上式for循环的语句3中 xff0c i 43 43 与 43 43 i都是在完成一次循环后执行 xff0c 无论使用哪一种 xff0c 输出结果都是一样的 因为i 43 43 是在使用当前值之后再 43
  • 东北大学秦皇岛分校通信工程中外合作2020级C语言实验5

    1 编写程序 xff0c 定义整型指针变量p xff0c 初始化整型一维数组a的首地址 xff08 数组a的长度为10 xff09 xff0c 利用指针变量p实现从键盘输入10个整型数据到一维数组a中 xff0c 并输出该数组中最大值和最大
  • 东北大学秦皇岛分校通信工程中外合作2020级C语言实验6

    1 定义结构体类型 xff0c 包括候选人名和选票两个成员 xff0c 编程实现对候选人得票的统计 1 Write a C program that implements the statistics of the candidate vo
  • C/CPP三种排序算法

    一 简单选择排序 span class token keyword void span span class token function sort span span class token punctuation span span c
  • ACLGUI IN SSTC(PIA)2020中可能遇到的一些知识点

    文章目录 xff08 一 xff09 条件编译 xff08 二 xff09 部分头文件 xff08 三 xff09 空指针具体操作示例常见问题1 xff1a 空指针指向了内存的什么地方 xff1f 常见问题2 xff1a 在实际的操作中 x
  • 计算机网络基础(一)概述

    计算机网络是一组自治 xff08 拥有独立的计算能力 xff09 计算机互联的集合 IEEE高级委员会 坦尼鲍姆 本文参考书目为 计算机网络 xff08 第七版 xff09 xff08 谢希仁 xff09 书中为方便 xff0c 将计算机网
  • vultr购置配置在线kali

    vultr购置配置kali 购买 这里使用vultr可能需要一个小小的 xff0c 反正我没有 是上不去得 xff0c 大家这里看自己 xff0c 注册好账号我们需要重置 xff0c 这里我们可以选择支付宝进行充值 选择好充值得费用就可以了
  • 华为服务器装CentOS 7系统

    参考文章 https blog csdn net weixin 43897572 article details 98513207 用网线插入服务器网口 xff0c 使用kvm客户端或者浏览器 记录一下华为服务器的默认密码 有进主板的密码
  • c++重学笔记21 - 类型选择器

    喜欢这篇文章吗 xff1f 喜欢的话去看博主的置顶博客 xff0c 即可依据分类找到此文章的原版得到更好的体验 xff0c 图片及代码显示的问题 xff0c 笔者深感抱歉 xff0c 想要更好的体验去原博文即可 title c 43 43
  • Ubuntu 20 安装包下载(清华镜像)

    Ubuntu 20 安装包下载 在国内推荐使用清华大学镜像 清华镜像地址 xff1a https mirrors tuna tsinghua edu cn 在搜索框中输入Ubuntu xff0c 然后点击Ubuntu release xff
  • 今日arXiv精选 | ICCV 2021/CIKM 2021/ACM MM 2021

    关于 今日arXiv精选 这是 AI 学术前沿 旗下的一档栏目 xff0c 编辑将每日从arXiv中精选高质量论文 xff0c 推送给读者 SUNet Symmetric Undistortion Network for Rolling S
  • 在Windows上面安装WSL以使用Linux

    在Windows上面安装WSL以使用Linux 0 WSL xff08 Windows Subsystem for Linux xff09 1 安装Ubuntu步骤1 1 检查Windows版本1 2 激活WSL服务1 3 安装Ubuntu