Windows 11 开启 WSL2 运行Linux操作系统-Ubuntu
gudong366 2025-04-05 17:54 7 浏览
前言
很多时候,我们的常用电脑系统是windows 的环境,而很多源码和依赖库需要在Linux环境下操作。
原先我们可能会在电脑上安装双系统,一款windows 一款Linux。或采用虚拟机环境进行配置,安装虚拟机,再下载Linux系统包等等。
而我们现在可以利用windows 的WSL2,将Linux 当做一个软件的模式进行运行了。
下面就介绍我的电脑的安装过程。
我的电脑环境:
版本 Windows 11 家庭中文版 版本 21H2 安装日期 2021/11/21 操作系统版本 22000.527 体验 Windows 功能体验包 1000.22000.527.0
0. WSL 1 和WSL 2 对比
WSL 有两个版本分别是WSL1 和WSL2 。其中WSL2 也有个名称叫做 WSLG 其中的G就是:GUI。因为WSL 2 支持Linux 的GUI应用界面的渲染。
相较于WSL1,WSL2 主要更新内容为:
- 提高文件系统性能。
- 支持完全的系统调用兼容性。
WSL 2 可以提供更快的性能和100% 的系统调用兼容性。
1.开启 Linux 子系统支持
通过控制面板打开:程序和功能界面。
点击左侧的 启用或关闭Windows 功能。 因为该功能是windows系统的一个功能。
在弹出的对话框中下拉找到:适用于Linux 的Windows 子系统。然后在前面打上,然后再选择:虚拟机平台 打上。
效果如下图:
我们如果不开启虚拟机平台,那么之后我们只能安装WSL 1的版本。这两个是有区别的。
最后执行确定按钮,系统开始进行更新和启动该子系统配置。
启动完毕后,需要我们重启电脑。重启成功后该功能就开启了。
但是到这里还无法操作,我们需要安装相关的系统。
但是到这一步之后,我们在 我的电脑中就可以看到有一个Linux 的模块了
但是现在访问里面是空的。我们现在继续安装
2. 配置WSL2
我们重启完毕后,通过管理员终端 windows PowerShell 进行下面的操作。
第一步输入: wsl --set-default-version 2 切换WSL的默认版本为WSL2。
然后执行更新操作,检测是否有更新(该功能非必须操作项,我们也可以跳过。)
第二步输入:wsl --update 进行更新操作
如果你是以普通角色访问的话,那么无法进行下载更新。
这一步的下载更新速度比较慢。我们需要有点耐心进行等待,如果你不想更新的话,也可以直接不进行更新。
当我们配置完毕后,通过wsl --shutdown重启。
然后可以开始安装Linux 的系统了。
第三步输入:wsl --list --online 检查当前wsl支持的Linux系统的版本。
第四步输入: wsl --install -d Ubuntu-20.04 我们下载最新的Ubuntu 分支版本。
等待一点点的安装完毕。
安装完毕后,会自动启动 Ubuntu 20.04 LTS
2.1 配置Ubuntu
安装完毕后,我们需要配置UNIX 的用户名和密码。这个用户名和密码并不是我们windows电脑的密码。
配置之后,我们以后启动UNIX系统的时候需要输入的用户名和密码。
用户名的要求,"A-Z"+"a-z"+"数字"+"-"
但是“-”不能是开头的。匹配的正则表达式为:"^[a-z][-a-z0-9]*\$"
可以简单点设置,因为这个最终也是在我们电脑上使用的。配置完毕后,就可以启动了。
我们可以在我的电脑上看到我们刚才安装的 Ubuntu 的系统配置和文件夹了。
WSL 不只能安装这一个,它还能安装多个Linux子系统。
到这一步为止占用了我C盘大概3G的空间。
所以我们安装的时候还要注意下我们的C盘是否空间足够。
我们可以通过该入口 随时启动Ubuntu系统。到这一步的时候,我们的Linux系统已经安装完毕了。
我们如果想带GUI界面的,那么可以继续操作,如果当前命令行模式已经满足我们的需求的情况下,那么到这里就可以了。
3. 安装Ubuntu GUI 系统
安装GUI 就和我们在其他Linux 系统中安装桌面是一样的。在Ubuntu下安装相应的桌面系统就可以了。
3.1 vGPU 插件
针对Linux GUI ,Windows 11 提供了vGPU。可以让我们的Linux GUI也享受系统硬件的OpenGL渲染。
- 适用于 WSL 的 Intel GPU 驱动程序
- 适用于 WSL 的 AMD GPU 驱动程序
- 适用于 WSL 的 NVIDIA GPU 驱动程序
再次提醒一下,只有WSL 2才支持Linux GUI 应用。 如果要使用Linux GUI 应用,那么需要将WSL1 更改为WSL 2. 更改方式参考:WSL 的基本命令 | Microsoft Docs
但是,经过我的实际安装体验,估计还得你的电脑的显卡支持。
3.2 安装 UNITY 的GUI 应用
建议先进行upgrade 和update 更新一下。然后再执行安装操作。
建议大家先切换源之后再进行下载,否则速度很慢而且还容易造成文件破损。
$ sudo apt-get upgrade
$ sudo apt-get update
$ sudo apt-get install xxxx
如果有空,再写个关于桌面的配置吧。这样启动后Ubuntu就和一个应用程序一样我们可以通过界面进行操作了。
参考
https://aka.ms/wslusers
使用 WSL 运行 Linux GUI 应用 | Microsoft Docs
PS: 现在 WSA也出来了。在windows上运行Android系统,只是暂时处于试运行阶段。后续稳定之后应该也会以WSL的形式运行Linux一样,运行Android系统了。
相关推荐
- 飞牛fnNAS搭建Web版Linux系统(飞牛网改版升级说明)
-
飞牛NAS本身就是Linux内核(Debian发行版),那为何还要安装一个Linux呢?因为飞牛的Linux是特殊版本,并不能运行PC端的带UI的程序,比如我需要登录微信,需要使用wps打字……,这是...
- 如何在 Linux 中使用 Sysctl 命令?
-
sysctl是一个用于配置和查询Linux内核参数的命令行工具。它通过与/proc/sys虚拟文件系统交互,允许用户在运行时动态修改内核参数。这些参数控制着系统的各种行为,包括网络设置、文件...
- Apple尝试使用轻量级Linux虚拟机实现容器化
-
Apple于本周一发布了一个开源的容器化框架,用于在Mac上创建和运行Linux容器镜像。软件容器将应用程序及其依赖项组合成一个单元,在主机上运行于隔离环境中。由于它们基于符合OCI标准...
- Docker 安全与权限控制:别让你的容器变成“漏洞盒子”
-
在享受容器带来的轻量与灵活的同时,我们也必须面对一个现实问题:安全隐患。容器并不是天然安全,错误配置甚至可能让攻击者“越狱”入侵主机!本篇将带你从多个层面强化Docker的安全防护,构建真正可放心...
- 网络安全必备!Linux firewalld 防火墙原理 + 配置实战(放行http)
-
5.1了解firewall防火墙基础概念与原理5.1.1Linux防火墙概述在网络安全领域,防火墙是保障网络安全的关键屏障,Linux系统中的firewall防火墙(firewalld服...
- 从零开始搭建 Linux PXE 无盘启动服务器
-
在企业环境或实验室中,PXE(PrebootExecutionEnvironment,无盘启动)被广泛用于大规模批量部署操作系统。通过PXE,无需U盘或CD,就能远程启动和安装Linux...
- [250417] Fedora 42 正式发布,搭载 Linux 6.14 内核和 GNOME 48 桌面环境
-
Fedora42正式发布FedoraLinux42现已正式发布!此版本基于最新的Linux内核6.14构建,带来了众多激动人心的新特性和改进,旨在提供更现代化、更强大、更易用的Li...
- Linux Kernel学习003——内核源码
-
Linux学习笔记:老版本内核的坑,新工具救场,代码门道藏着啥秘密.最近想学Linux内核,网上查资料发现现在的稳定版本都已经到5.x了,但我跟着教程选的是2.6.34。官网下载链接卡着老卡,后来用清...
- Linux:实现Hadoop集群Master无密码登录
-
以下所介绍的安装方式都是在线安装方式,如果你需要连网请参考:Linux:宿主机通过桥接方式连接的VMware内部Linux14.04虚拟机(静态IP)实现上网方案环境:OS:LinuxUbuntu1...
- 除了Win10,微软还发布了一套“专业版Linux”系统
-
IT之家讯9月21消息,不知道大家是否还记得,微软CEO纳德拉曾在去年的一次活动中公开宣称“微软爱Linux”,其实那个时候的微软就已经在服务器方面拥抱Linux了。而最近,除了最新Windows1...
- Linux系统匿名上网小技巧(linux匿名文件)
-
Tails可以做什么+优点Tails所有数据连接通过Tor网络传输,可以为个人用户提供最好的匿名性和安全性,并且它是一个Linux系统,不会感染Windows系统的病毒,它可以存储在闪存盘上运行。-...
- Linux环境中DeepSeek AI大模型使用与管理之七:安装Cherry Studio
-
简介:在Linux系统中成功通过Ollama部署DeepSeek-R1大模型后,用户通常需要一个直观且易于操作的客户端来访问和交互。为了满足这一需求,本文将详细介绍如何在Linux环境中安装和配置Ch...
- Linux系统部署Go编程环境(一)使用Go语言编写简单web服务器
-
摘要:Go语言是一个开源的编程语言,Go语言被称为“互联网时代的C语言”。Go语言的风格类似于C语言。其语法在C语言的基础上进行了大幅的简化,去掉了不需要的表达式括号,循环也只有for一种表示...
- FirewallD 安装与环境准备(firewall.service not loaded)
-
本节将详细介绍如何在不同的Linux发行版上安装FirewallD,并讲解其配置文件位置、基本配置方式以及运行状态的查看和管理命令。1.FirewallD的安装FirewallD在许多主流...
- (WSL笔记)想用Linux开发环境?不妨试试WSL吧!
-
声明:本文系个人使用经验总结,不代表官方表述1.为什么推荐使用WSL“Windows不适合开发”,很多开发老手可能都会说这句话,但是原因他们可能就说不上来。这里就要讲一些历史了。Windows系统诞...
- 一周热门
- 最近发表
-
- 飞牛fnNAS搭建Web版Linux系统(飞牛网改版升级说明)
- 如何在 Linux 中使用 Sysctl 命令?
- Apple尝试使用轻量级Linux虚拟机实现容器化
- Docker 安全与权限控制:别让你的容器变成“漏洞盒子”
- 网络安全必备!Linux firewalld 防火墙原理 + 配置实战(放行http)
- 从零开始搭建 Linux PXE 无盘启动服务器
- [250417] Fedora 42 正式发布,搭载 Linux 6.14 内核和 GNOME 48 桌面环境
- Linux Kernel学习003——内核源码
- Linux:实现Hadoop集群Master无密码登录
- 除了Win10,微软还发布了一套“专业版Linux”系统
- 标签列表
-
- linux一键安装 (31)
- linux运行java (33)
- ln linux (27)
- linux 磁盘管理 (31)
- linux 内核升级 (30)
- linux 运行python (28)
- linux 备份文件 (30)
- linux 网络测试 (30)
- linux 网关配置 (31)
- linux jre (32)
- linux 杀毒软件 (32)
- linux语法 (33)
- linux博客 (33)
- linux 压缩目录 (37)
- linux 查看任务 (32)
- 制作linux启动u盘 (35)
- linux 查看存储 (29)
- linux乌班图 (31)
- linux挂载镜像 (31)
- linux 软件源 (28)
- linux题目 (30)
- linux 定时脚本 (30)
- linux 网站搭建 (28)
- linux 远程控制 (34)
- linux bind (31)