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

Windows 11 下使用 WSL2 安装 Ubuntu 22.04 步骤

目录

  • 一、前置工作(安装 WSL2)
    • 1. 启用适用于 Linux 的 Windows 子系统
    • 2. 启用虚拟机功能
    • 3. 将 WSL 2 设置为默认版本
  • 二、安装 Ubuntu 22.04
    • 1. 查看可用的 WSL 发行版
    • 2. 安装 Ubuntu 22.04
    • 3. 将 Ubuntu 的虚拟磁盘映像文件移至 D 盘
      • 1)将 Ubuntu 导出为 .tar 文件
      • 2)注销在 C 盘的 Ubuntu
      • 3)将 Ubuntu 导入 D 盘
      • 4)启动 Ubuntu
      • 5)修改默认登录用户为普通用户
      • 6)其他
  • 三、安装并运行图形化桌面环境(GUI)
    • 1. 存在的问题:systemd 没有运行


参考文章:
【旧版 WSL 的手动安装步骤】
【全网最全Win10/11系统下WSL2+Ubuntu20.04的全流程安装指南(两种支持安装至 D 盘方式)】

一、前置工作(安装 WSL2)

1. 启用适用于 Linux 的 Windows 子系统

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

以管理员身份打开 PowerShell 并输入以下命令:

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

2. 启用虚拟机功能

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

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

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

重启 计算机以完成 WSL 安装和更新到 WSL 2。

3. 将 WSL 2 设置为默认版本

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

wsl --set-default-version 2

二、安装 Ubuntu 22.04

1. 查看可用的 WSL 发行版

以管理员身份打开 PowerShell 并运行以下命令,

wsl --list --online

2. 安装 Ubuntu 22.04

wsl --install -d Ubuntu-22.04

安装完毕后需要创建一个新用户,按照提示输入用户名和两次密码即可。此时会进入 [username]@xxx:~$ 的界面,想要退出的话点击 Ctrl+D 快捷键。

3. 将 Ubuntu 的虚拟磁盘映像文件移至 D 盘

1)将 Ubuntu 导出为 .tar 文件

首先在 D 盘下创建一个名为 WSL 的文件夹,并在该文件夹下创建一个名为 Ubuntu-22.04 的文件夹(文件夹名字可自行修改),然后打开 PowerShell 并运行以下命令:

wsl --export Ubuntu-22.04 D:\WSL\Ubuntu-22.04\Ubuntu-22.04.tar

此时 Ubuntu-22.04 会被下载并导出至 Ubuntu-22.04 文件夹下,打开该文件夹可以查看到一个名为 Ubuntu-22.04.tar 的文件。

2)注销在 C 盘的 Ubuntu

注销原有的默认在 C 盘的 Ubuntu-22.04,在 PowerShell 下运行命令:

wsl --unregister Ubuntu-22.04

3)将 Ubuntu 导入 D 盘

在 PowerShell 运行以下命令,将 Ubuntu-22.04 的虚拟磁盘映像文件导入至 D:\WSL\Ubuntu-22.04 文件夹下:

wsl --import Ubuntu-22.04 D:\WSL\Ubuntu-22.04 D:\WSL\Ubuntu-22.04\Ubuntu-22.04.tar --version 2

此时在 Ubuntu-22.04 文件夹下将会出现一个名为 ext4.vhdx 的虚拟磁盘映像文件,该文件用于存储整个 Ubuntu-22.04 的文件系统。

4)启动 Ubuntu

在 PowerShell 运行 wsl -d Ubuntu-22.04 命令启动 WSL 下的 Ubuntu-22.04 ,但此时是 root 账户,需要使用 adduser [username] 命令创建新用户,并输入该用户的密码(该用户名和密码需要与刚刚创建的一致)。

  • 使用命令 usermod -aG sudo [username] 赋予新用户 sudo 的权限,此时新用户就可以通过使用 sudo 命令进行管理员操作。

  • 使用命令 su [username] ,将 root 账户变为用户账户;使用命令 exit ,将用户账户变为 root 账户。

  • 使用命令 wsl -d Ubuntu-22.04 -u [username] ,以用户账户登录 Ubuntu(仅本次)。

  • 使用命令 wsl -l -v ,确认 Ubuntu 安装成功。

5)修改默认登录用户为普通用户

以管理员身份运行 PowerShell ,执行以下命令:

ubuntu2204 config --default-user [username]

再次使用命令 wsl -d Ubuntu-22.04 启动 WSL 下的 Ubuntu ,就是默认以普通用户进行登录。

6)其他

  1. 启动 Ubuntu 有两种主要方式:

    • 从开始菜单:像启动任何其他应用程序一样,在开始菜单中搜索 “Ubuntu” 并点击它。

    • 从终端(推荐):在 Windows 终端 (Windows Terminal)、PowerShell 或命令提示符 (CMD) 中直接输入 ubuntu 或 wsl 命令。

  2. 常用 Linux 目录:

    • / : 根目录

    • /home : 用户主目录

    • /etc : 系统配置文件存放地

    • /tmp : 临时文件

    • /mnt : 用来挂载其他设备的地方,尤其重要!

  3. 如何从 Ubuntu 内部访问 Windows 文件?所有你的 Windows 硬盘驱动器(如 C盘、D盘)都被 WSL 自动挂载到了 /mnt/ 目录下。

    • C 盘路径:/mnt/c/

    • D 盘路径:/mnt/d/

  4. 如何从 Windows 内部访问 Ubuntu 文件?可以直接从 Windows 的文件资源管理器中像浏览普通文件夹一样浏览 Ubuntu 的文件系统。

    • 在文件资源管理器中输入路径:直接在地址栏输入 \wsl$ 或者 \wsl$\Ubuntu (如果你安装了多个发行版,Ubuntu 是发行版名称),然后回车。你就可以看到所有 Ubuntu 的文件了。

    • 在 Ubuntu 命令行中打开:在 Ubuntu 终端里,输入命令 explorer.exe . (注意最后的点.代表当前目录)。这会直接用 Windows 文件资源管理器打开你当前的 Linux 目录。这是最常用的方法!

    • 通过 Windows 开始菜单:在开始菜单里找到你安装的 Ubuntu 发行版,它的下面通常会有一个选项叫 “在文件资源管理器中打开”,点击它即可。

三、安装并运行图形化桌面环境(GUI)

WSLg(WSL Graphical User Interface)是微软官方从 Windows 11 和 Windows 10 版本 21H2 开始内置的功能。它允许 WSL 应用程序直接使用宿主 Windows 系统的 GPU 硬件加速,并自动处理显示问题,无需任何复杂配置。

  1. 适用系统:Windows 11 或 Windows 10 版本 21H2 及以上

  2. 步骤:

    • 确保系统更新:将你的 Windows 系统更新到最新版本。

    • 安装图形化桌面环境:在 Ubuntu 终端中,安装一个轻量级的桌面环境,例如 Xfce 或 LXQt(Gnome 和 KDE 较重量级,不建议初次尝试)。

# 更新软件列表
sudo apt update# 安装 Xfce4 桌面环境(推荐,轻量且功能齐全)
sudo apt install xfce4 -y# 或者安装 LXQt(另一个非常轻量的选择)
# sudo apt install lxqt -y
  1. 安装应用程序:安装一些基础应用,如终端、文件管理器、浏览器等。
sudo apt install xfce4-terminal thunar-archive-plugin firefox gedit nautilus -y
  1. 启动桌面环境:在 Ubuntu 终端中直接输入以下命令启动整个桌面环境:
startxfce4

几秒钟后,一个全新的 Xfce 桌面窗口就会在你的 Windows 桌面上打开。你可以像使用一台完整 Linux 电脑一样使用它。WSLg 会自动为你处理好所有显示和音频的桥接工作。

  1. 也可以只启动单个图形应用(这是 WSLg 最常用的方式),例如:
gedit & # 启动文本编辑器
nautilus & # 启动文件管理器
firefox & # 启动火狐浏览器

在 WSL 中运行完整的桌面环境会消耗不少内存和 CPU。如果只是需要运行少数 GUI 程序,强烈建议只安装并运行你需要的特定应用程序,而不是启动整个桌面,这样会更加轻量和高效。

1. 存在的问题:systemd 没有运行

可能会出现错误表明 WSL 中的 Ubuntu 试图启动 systemd 用户会话但失败了。这是一个在 WSL 中非常常见的问题,因为 WSL 默认并不使用 systemd 作为其初始化系统。

genie 是专门为 WSL 打造的一个工具,用于创建和管理一个 systemd 容器环境,非常稳定。安装和运行命令:

  1. 安装依赖和 genie:
# 1. 更新软件列表并安装基础工具
sudo apt update && sudo apt install -y curl wget# 2. 安装 genie 所需的依赖
sudo apt install -y systemd-container# 3. 添加 genie 的软件源
curl -s https://packagecloud.io/install/repositories/arkane-systems/wsl-translinux/script.deb.sh | sudo bash# 4. 安装 genie
sudo apt update && sudo apt install -y genie

出现的问题是官方的 genie 软件源显示 404 Not Found

  1. 初始化并运行 genie:
# 初始化 genie(只需运行一次)
genie -i# 启动一个带有 systemd 的 shell 环境(每次需要时运行)
genie -s

执行 genie -s 后,你会看到提示符可能变为 [systemd] user@machine,这表示你已进入一个完整的 systemd 环境中。


文章转载自:

http://49ToLfWJ.dtnzk.cn
http://tsTMj4Rc.dtnzk.cn
http://tEZ5502R.dtnzk.cn
http://KbmGJ7TA.dtnzk.cn
http://hf8KdtO3.dtnzk.cn
http://OaIT7gjw.dtnzk.cn
http://lLSSFrlb.dtnzk.cn
http://LZ0i5ExA.dtnzk.cn
http://uf9vHWBh.dtnzk.cn
http://V4257s3g.dtnzk.cn
http://KPWGuSKy.dtnzk.cn
http://CYsmSnEB.dtnzk.cn
http://vEF9GCQD.dtnzk.cn
http://g403yTug.dtnzk.cn
http://DZd3dwVA.dtnzk.cn
http://4hTFRWec.dtnzk.cn
http://PQkkLoWt.dtnzk.cn
http://SgWYBt8r.dtnzk.cn
http://gb90zbwQ.dtnzk.cn
http://ICdCnuYf.dtnzk.cn
http://Yno9gk51.dtnzk.cn
http://9ux6GZew.dtnzk.cn
http://ygD7pBRh.dtnzk.cn
http://wCKUox38.dtnzk.cn
http://4cnqdJ68.dtnzk.cn
http://KwKub0FA.dtnzk.cn
http://hLmETmSn.dtnzk.cn
http://m12PyTqE.dtnzk.cn
http://tt75UKvh.dtnzk.cn
http://MnKMVQSO.dtnzk.cn
http://www.dtcms.com/a/387341.html

相关文章:

  • 在 WSL 中通过 Bash 函数快速转换 Windows 路径为 Ansible/WSL 路径
  • 【ubuntu24.04】 nvidia-smi监控GPU 利用率
  • 《嵌入式硬件(十四):基于IMX6ULL的通用目的定时器(GPT)操作》
  • 鸿蒙Next Web调试与维测全攻略:从DevTools到专项测试
  • 基于运行设计域(ODD)的安全论证方法
  • 鸿蒙HarmonyOS界面开发-组件动态创建(一)
  • 网络安全风险评估中元模型构建与实例应用
  • 鸿蒙5.0应用开发——V2装饰器@ObservedV2和@Trace的使用
  • xkInfoScan 是一款集成化的网络信息收集与安全扫描工具,支持 IP / 域名 / URL /信息追踪多维度目标探测
  • 解决 Windows 系统下 TDengine 数据恢复及迁移问题
  • PocketBase 是一个‌开源的轻量级后端框架‌,基于 Go 语言开发
  • 苹果新手机和旧手机怎么传输数据?新手避坑指南
  • Maven 只打包部分模块,跳过单元测试... 常用打包参数
  • 【maven01】依赖管理的工具
  • BP神经网络多输入多输出回归预测+SHAP可解释分析+新数据预测(MATLAB完整源码)
  • MATLAB 时间序列小波周期分析
  • 计算机视觉进阶教学之DNN模块
  • 大模型无需懂MCP:工具调用范式的架构革命与实践指南
  • 剑指offer题单 9.14
  • IIS 站点 http 请求412问题解决
  • Web前端入门:从零开始做网站(视频教程)
  • 本地--Oracle表被锁了该如何处理
  • Doris与Clickhouse分析
  • ByteDance字节前端一面
  • 卫星通信+AI双核驱动,遨游智能三防手机连得上、会思考
  • 云手机通道具有哪些方面的优势
  • 前端实验(二)初识Vue
  • html.
  • 【人工智能与机器人研究】基于多模态的管道非接触式磁记忆检测方法研究
  • DIY Linux 桌面:让电脑再次快速运行