当前位置: 首页 > article >正文

Windows11离线安装wsl2(适用于 Linux 的 Windows 子系统)和Ubuntu

Windows11离线安装wsl2(适用于 Linux 的 Windows 子系统)和Ubuntu

最近想在自己的windows电脑上安装wsl系统,这样可以无性能损耗跑linux环境,但是微软商店的东西老是下载不下来,被迫离线安装,给其他兄弟们探了个路。

Windows Subsystem for Linux (WSL) 是一项功能,允许在 Windows 系统上运行 Linux 发行版。WSL 提供了一个与传统的 Linux 环境类似的操作体验,使得在 Windows 上进行开发和运行 Linux 应用程序变得更加便捷。本博文将详细介绍 WSL 的安装和使用步骤。

1、确认启用虚拟化

第一步就是确保自己的电脑开启了虚拟化设置,这一般需要在bios中设置,每个品牌的主板设置方式略微不同,参考:win11如何在bios中启用虚拟化(windows bios开启虚拟化)

如果不确认是否已经开启虚拟化,可以在任务管理器这查看:
在这里插入图片描述

2、启用WSL

这部分的操作主要参考官方教程:旧版 WSL 的手动安装步骤

步骤 1 - 启用适用于 Linux 的 Windows 子系统

需要先启用“适用于 Linux 的 Windows 子系统”可选功能,然后才能在 Windows 上安装 Linux 分发。

管理员身份打开 PowerShell(“开始”菜单 >“PowerShell” >单击右键 >“以管理员身份运行”),然后输入以下命令:

dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

步骤 2 - 检查运行 WSL 2 的要求

若要更新到 WSL 2,需要运行 Windows 10。

对于 x64 系统:版本 1903 或更高版本,内部版本为 18362.1049 或更高版本。
对于 ARM64 系统:版本 2004 或更高版本,内部版本为 19041 或更高版本。
或 Windows 11。此处我的电脑是window11,默认支持wsl2。

步骤 3 - 启用虚拟机功能

安装 WSL 2 之前,必须启用“虚拟机平台”可选功能。 计算机需要虚拟化功能才能使用此功能。

以管理员身份打开 PowerShell 并运行:

dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

!!!重新启动计算机,以完成 WSL 安装并更新到 WSL 2。

步骤 4 - 下载 Linux 内核更新包

下载链接中的包:适用于 x64 计算机的 WSL2 Linux 内核更新包

默认安装即可。

步骤 5 - 将 WSL 2 设置为默认版本

打开 PowerShell,然后在安装新的 Linux 发行版时运行以下命令,将 WSL 2 设置为默认版本:

wsl --set-default-version 2

步骤 6 - 最后检查

启用WLS2后,打开开始菜单,在开始菜单中输入 启用或关闭 Windows 功能,在弹出的窗口中,下面两个应该已经被勾选:
在这里插入图片描述

3、离线下载Ubuntu安装包

此处操作参考:离线下载安装Microsoft Store中的应用

首先到微软软件商店的网页版,找到所需版本对应的链接,
此处为:https://apps.microsoft.com/detail/9nz3klhxdjp5?hl=zh-cn&gl=CN
在这里插入图片描述
打开这个网站:
https://store.rg-adguard.net/
将上面复制的链接粘贴到搜索栏中(搜索类型使用默认的URL(link))
在这里插入图片描述
搜索到的结果通常会比较多,包含了不同的版本以及和这个应用相关的其他运行环境安装包,建议往下翻页,找到名称匹配一致的最高版本(版本数字最大)的链接,注意后缀应该是.appxbundle的链接(bundle表示包含所有相关文件)。点击上图下方的超链接即可自动下载

此处下载是22.04版本,双击软件包可以直接运行:
在这里插入图片描述

4、Ubuntu安装位置修改

默认安装位置在C盘,我是安装之后再修改的,修改步骤参考:
修改wsl安装包实际安装位置,最新完整教程


http://www.kler.cn/a/518757.html

相关文章:

  • Go语言开发项目文件规范
  • MySQL数据库笔记——版本号机制和CAS(Compare And Swap)
  • Dev-C++分辨率低-解决办法
  • 硬件学习笔记--35 AD23的使用常规操作
  • 【C++】类与对象初级应用篇:打造自定义日期类与日期计算器(2w5k字长文附源码)
  • ThinkPhp伪静态设置后,访问静态资源也提示找不到Controller
  • Android Toast 系统切换多语言显示
  • 当AI风暴来袭:中美科技商业版图的迥异走向
  • MyBatis 写法
  • 力扣算法题——1089.复写零【系统讲解】
  • 回归测试中的自动化与手动测试平衡
  • 大数运算之C语言实现
  • STM32项目分享:智能语音分类垃圾桶
  • 基于Flask的微博话题舆情分析可视化系统的设计与实现
  • Java Swing 基础组件详解 [论文投稿-第四届智能系统、通信与计算机网络]
  • 数据结构与算法之堆: LeetCode 208. 实现 Trie (前缀树) (Ts版)
  • Java面试题2025-Mysql
  • Pandas与Numpy的数据分析进阶题
  • 免费GPU算力,不花钱部署DeepSeek-R1
  • 【由浅入深认识Maven】第2部分 maven依赖管理与仓库机制
  • 基于大语言模型构建本地个人AI助理
  • WebRtc06: 音视频数据采集
  • ICSE‘25 LLM Assistance for Memory Safety
  • 【面试】【程序员基本知识】计算机网络,设计模式,正则,安全
  • 一文简单回顾复习Java基础概念
  • InfiniBand客户端注册机制详解:ib_register_client函数的作用与实现