Windows 11 配置 WSL 2 Ubuntu 20.04 环境

2023-05-16

文章目录

  • 启用 Windows 相关功能
  • 在终端中配置 WSL 2
    • 确认 WSL 版本
    • 安装 Linux 发行版
    • 替换国内 apt 源
  • 问题记录
    • 适用于 Linux 的 Windows 子系统内核可以使用“wsl --update”手动更新,但由于你的系统设置,无法进行自动更新
    • WslRegisterDistribution failed with error: 0x800701bc
    • 请求的操作需要提升
  • 参考文档

启用 Windows 相关功能

依次进入:控制面板 -> 程序 -> 程序和功能 -> 启用或关闭 Windows 功能
勾选:

  • 适用于 Linux 的 Windows 子系统
  • 虚拟机平台

在终端中配置 WSL 2

确认 WSL 版本

首先打开具有管理员权限的 Windows Terminal(Windows PowerShell),执行 wsl --status 可以查看 WSL 配置的信息:


可以看到默认版本为 2。

全局默认版本可以通过 wsl --set-default-version <version> 来修改,<version> 可以为 1 或者 2。

也可以针对特定的 Linux 发行版来指定 WSL 的版本,wsl --set-version <distribution name> <version><distribution name> 为 Linux 发行版名称,如 Ubuntu-20.04<version> 为 WSL 版本。

安装 Linux 发行版

通过 wsl --list --online 或者 wsl -l -o 可以查看可用的 Linux 发行版列表:


然后通过 wsl --install -d Ubuntu-20.04 选择 Ubuntu 20.04 进行安装。

如果之前未进行过安装,会先下载对应发行版:


下载完成后,会自动启动一个新的终端会话进行安装。

安装成功后,提示为 WSL 中的 Linux 设置用户名和密码:


按照提示依次设置用户名和密码后,即可进入 Linux 系统:


此账号默认具有与 root 相同的权限。

至此 WSL2 的 Ubuntu 20.04 环境已经配置完成。

回到原来的终端会话,执行 wsl --list --verbose,可以看到刚刚安装的 Ubuntu 20.04:


在 Windows 开始菜单的应用中,同样也能找到 Ubuntu 20.04:


替换国内 apt 源

Ubuntu apt 默认使用的都是国外的源,对于一些资源下载速度可能比较慢,可以替换为国内源。

替换步骤如下:

  1. 备份现有源列表

备份保存现有源列表,之后如果有需要可以换回来:

cd /etc/apt
sudo cp sources.list sources.list.bak
  1. 修改源列表

修改方法主要是将 sources.list 中的 http://archive.ubuntu.com/ 替换为相应的国内源地址。

此处使用阿里云源,sources.list 内容如下:

deb https://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb-src https://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse

deb https://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb-src https://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse

deb https://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb-src https://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse

# deb https://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
# deb-src https://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse

deb https://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
deb-src https://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse

以上源已经涵盖了大部分使用场景,需要注意的是不同的 Ubuntu 版本 apt 源列表可能不同,并且有些软件包使用的是其它特定的源。

  1. 更新软件包列表

经过上述操作已经更换了默认 apt 源,需要手动刷新一下软件包列表:

sudo apt update

问题记录

适用于 Linux 的 Windows 子系统内核可以使用“wsl --update”手动更新,但由于你的系统设置,无法进行自动更新

如果要打开自动更新,依次进入:设置 -> Windows 更新 -> 高级选项 -> 打开接收其他 Microsoft 产品的更新:


WslRegisterDistribution failed with error: 0x800701bc

可能是 WSL 内核没有升级,可以尝试执行 wsl --update

请求的操作需要提升

出现这个提示一般是终端会话不具有管理员权限,打开具有管理员权限的终端再执行相应操作即可。

参考文档

适用于 Linux 的 Windows 子系统文档 | Microsoft Learn

阿里巴巴 Ubuntu 开源镜像站 (aliyun.com)

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

Windows 11 配置 WSL 2 Ubuntu 20.04 环境 的相关文章

  • 在 wampserver 2.2 上安装 php_imagick.dll PHP 扩展

    我使用的是 32 位操作系统的 Windows 7 我安装了 ImageMagick 6 8 7 Q16Link https www imagemagick org script download php windows我能够从命令行 转换
  • NMCLI 设备不可用

    我正在尝试在 ubuntu core 16 04 上配置带有蜂窝接口的新设备 我有 NMCLI 包在上面运行 在添加连接之前 我检查了接口 nmcli dev DEVICE TYPE STATE CONNECTION eth1 ethern
  • Windows 睡眠功能极慢

    我正在通过 Windows h 使用 Sleep 命令制作一个程序 并且在 Windows 10 而不是 Windows 7 上运行我的程序时遇到了令人沮丧的差异 我将我的程序简化为下面的程序 它与我的更复杂的程序表现出相同的行为 在 Wi
  • 如何使用 python 在 Windows 中禁用/启用特定 USB 端口? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我想在图形窗口中创建一个切换开关 可以使用 python 禁用 启用 Windows 中的特定 USB 端口 我可以使用哪个外部命令或
  • 在 Ubuntu 中执行 .cgi 文件

    我在 Ubuntu 下运行 Apache PHP 当我运行 cgi 文件时 通过http localhost mycgi cgi 浏览器将显示代码而不是运行它 如何让浏览器执行 CGI 文件而不是显示其内容 将这些行添加到您的 apache
  • 使用 Windows 批处理文件在文本文件中添加新行

    我有一个文本文件 其中有 200 多行 我只想在第 4 行之前添加一个新行 我使用的是 Windows XP 输入前的示例文本文件 header 1 header 2 header 3 details 1 details 2 输出后 hea
  • 如何在Windows 8上正确使用SCardGetStatusChange?

    智能卡服务在 Windows 8 上的行为有所不同 并且 MSDN 尚未更新其文档 任何人都可以提供有关如何正确调用 SCardGetStatusChange 来监视 Windows 8 上的智能卡操作的代码片段吗 提前致谢 这是我为个人博
  • 如何使用 PowerShell 扩展 ZIP 存档(UTF-8 文件名)

    我的 zip 存档有一个文件 P re No l txt 该 zip 可以通过 Windows 文件资源管理器 7 Zip 或我尝试过的任何其他工具很好地扩展 但我不知道如何从 PowerShell 中做到这一点 显然我已经尝试过展开 存档
  • 从 Python 下载/安装 Windows 更新

    我正在编写一个脚本来自动安装 Windows 更新 我可以将其部署在多台计算机上 这样我就不必担心手动更新它们 我想用 Python 编写这个 但找不到任何关于如何完成此操作的信息 我需要知道如何搜索更新 下载更新并从 python 脚本安
  • Delphi中使用FindVCLWindow调用WinHelp32(WinXP Pro SP3 32bit)

    有什么问题吗 procedure TForm1 VCLHelpClick Sender TObject var Ctrl TWinControl begin Ctrl FindVCLWindow Mouse CursorPos if Ctr
  • 在Windows 7上安装curl后缺少libcurl-4.dll

    按照这个人的安装curl后指示 https stackoverflow com a 28757477 1186038 除了第 2 步 已安装Win64 OpenSSL v1 0 1u 轻型相反 因为下载页面中缺少版本 k http slpr
  • 在 Windows 7 上的 Sourcetree 中比较 Word docx 文件

    我一直在尝试获取在 Windows 7 上的 Sourcetree 中工作的 Word docx 文件的文本差异 我已按照此处的说明进行操作将 Microsoft Word 与 git 结合使用 http blog martinfenner
  • apt-get 无法在 ubuntu dockerfile 中工作

    我对 docker 相当陌生 正在尝试通过编写自己的镜像来学习 并且目前正在阅读 Docker 的实际操作 ISBN 1633430235 在我自己的代码和书中的示例 第 146 页 中 我想通过 dockerfile 安装 git My
  • ubuntu中R的igraph包的安装

    我使用以下命令在 ubuntu 中安装 R 的 igraph 包 install packages igraph 但我收到一条错误消息 警告 无法访问存储库的索引 http ftp iitm ac in cran src contrib h
  • 如何在 Ubuntu VirtualBox 中运行 Meteor 应用程序并使用 Windows 主机上的编辑器进行编辑?

    我希望在运行 Ubuntu 的 virtualbox 来宾中运行一个用于开发目的的流星服务器 该项目将位于主机上的一个文件夹内 该文件夹将共享给来宾 该文件夹本身位于 Dropbox 文件夹内 这样我可以在多个虚拟机和工作站之间共享开发 但
  • 仅在单个端口 8080 上转发到本地主机(Windows)可能吗? [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 我知道如何在 Windows 上使用 xampp 设置本地网络服务器 我在主机文件 c windows system32 drivers etc ho
  • 如何验证文件名称在 Windows 中是否有效?

    是否有一个 Windows API 函数可以将字符串值传递给该函数 该函数将返回一个指示文件名是否有效的值 我需要验证文件名是否有效 并且我正在寻找一种简单的方法来完成此操作 而无需重新发明轮子 我正在直接使用 C 但针对的是 Win32
  • 在 Ubuntu 中使用 Gstreamer 通过 RTP 协议流式传输 Mp4 视频

    我正在尝试从本地目录获取视频文件 启用来自服务器的流并从客户端捕获这些帧 我使用了以下管道 服务器端 gst launch v filesrc location home gokul Videos Econ TestVideo radioa
  • 让 Rails 生产在端口 80 上运行

    我正在尝试让我的 Rails 应用程序在生产模式下运行 但遇到了一些困难 我正在使用 Passenger 和 apache 并运行 Ubuntu 12 04 我已经配置和创建了生产数据库 并设置了乘客 状态如下 rvmsudo passen
  • 如何使我的表单标题栏遵循 Windows 深色主题?

    我已经下载了Windows 10更新包括黑暗主题 文件资源管理器等都是深色主题 但是当我创建自己的 C 表单应用程序时 标题栏是亮白色的 如何使我自己的桌面应用程序遵循我在 Windows 中设置的深色主题 你需要调用DwmSetWindo

随机推荐