win11安装WSL UbuntuTLS

win11安装WSL

WSL 简介

  • Windows Subsystem for Linux(WSL) 适用于 Linux 的 Windows 子系统 是 Windows 的一项功能,可用于在 Windows 计算机上运行 Linux 环境,而无需单独的虚拟机或双引导。 WSL 旨在为希望同时使用 Windows 和 Linux 的开发人员提供无缝高效的体验。

特点:

  • 使用 WSL 安装和运行各种 Linux 发行版,例如 Ubuntu、Debian、Kali 等。 安装 Linux 发行版并从 Microsoft Store 接收自动更新、导入 Microsoft Store 中不可用的 Linux 发行版

  • 使用类似于 Unix 的命令行 shell 调用 Windows 应用程序。

  • 在 Windows 上调用 GNU/Linux 应用程序。

  • 运行直接集成到 Windows 桌面的 GNU/Linux 图形应用程序

  • 使用你的设备 GPU 加速 Linux 上运行的机器学习工作负载。

  • 安装 Linux 发行版时,WSL 2 是默认发行版类型。 WSL 2 使用虚拟化技术在轻量级实用工具虚拟机 (VM) 中运行 Linux 内核。 Linux 发行版作为独立的容器在 WSL 2 托管 VM 内运行。 通过 WSL 2 运行的 Linux 发行版将共享同一网络命名空间、设备树(而非 /dev/pts)、CPU/内核/内存/交换空间、/init 二进制文件,但有自己的 PID 命名空间、装载命名空间、用户命名空间、Cgroup 命名空间和 init 进程。

  • WSL 2 提高了文件系统性能,并且与 WSL 1 体系结构相比增加了完整的系统调用兼容性。

  • WSL 2 中的 Linux 内核是 Microsoft 根据最新的稳定版分支(基于 kernel.org 上提供的源代码)构建的。此内核已专门针对 WSL 2 进行了调整,针对大小和性能进行了优化,以便在 Windows 上提供良好的 Linux 体验。 内核将由 Windows 更新提供服务。

WSL 1 VS WSL 2

  • WSL 1 和 WSL 2 之间的主要区别在于,在托管 VM 内使用实际的 Linux 内核、支持完整的系统调用兼容性以及跨 Linux 和 Windows 操作系统的性能。 WSL 2 是安装 Linux 发行版时的当前默认版本,它使用最新最好的虚拟化技术在轻量级实用工具虚拟机 (VM) 内运行 Linux 内核。 WSL2 将 Linux 发行版作为托管 VM 内的隔离容器运行。
  • WSL 2 仅在 Windows 11 或 Windows 10 版本 1903、内部版本 18362 或更高版本中可用# 先决条件
  • 必须运行 Windows 10 版本 2004 及更高版本(内部版本 19041 及更高版本)或 Windows 11 才能使用以下命令。
  • 功能比较
功能 WSL 1 WSL 2
Windows 和 Linux 的集成
启动时间短
与传统虚拟机相比,占用的资源量少
可以与当前版本的 VMware 和 VirtualBox 一起运行
托管 VM
完整的 Linux 内核
完全的系统调用兼容性
跨 OS 文件系统的性能

先决要求

  • 必须运行 Windows 10 版本 2004 及更高版本(内部版本 19041 及更高版本)或Windows 11
  • WSL 2 确实利用了 Hyper-V 架构,但并不需要使用 Windows 11 专业版或者安装 Hyper-V 组件,WSL 功能支持所有 Windows 11 SKU。
  • WSL 2 支持 x64 和 ARM 处理器。如果在基于 ARM 的设备上使用它,需要使用具有 ARM 版本的 Linux,比如 Ubuntu。
    如果你的虚拟机软件支持嵌套虚拟化并启用了该功能,WSL 2 也可以在 Windows 内部的虚拟机中运行。

安装方法

一键安装

  • 使用管理员身份运行终端或者powershell,然后等待执行完成后,重启电脑即可
bash 复制代码
wsl --install

通过「控制面板」安装 WSL

  1. 使用Windows + R快捷键打开「运行」------ 执行control打开「控制面板」---「程序」---「程序和功能」---点击「启用或关闭 Windows 功能」

  2. 勾选「适用于 Linux 的 Windows 子系统」以及「虚拟机平台」后点击「确定」

  3. 功能启用后会要求立即重新启动 Windows 11 系统,然后输入即可安装wsl 2(默认)

bash 复制代码
wsl --update

基本命令

  • 常见正常命令可以正常运行,即可证明安装成功
  • 更新 WSL

    bash 复制代码
    wsl --update
  • 检查 WSL 版本(查看到具体的信息,即可证明安装成功)

    bash 复制代码
    wsl --version
    bash 复制代码
    wsl --version
    WSL 版本: 2.1.5.0
    内核版本: 5.15.146.1-2
    WSLg 版本: 1.0.60
    MSRDC 版本: 1.2.5105
    Direct3D 版本: 1.611.1-81528511
    DXCore 版本: 10.0.25131.1002-220531-1700.rs-onecore-base2-hyp
    Windows 版本: 10.0.26085.1
  • 检查 WSL 状态

    bash 复制代码
    wsl --status
  • Help 命令

    bash 复制代码
    wsl --help
  • 设置默认 WSL 版本(请执行该命令)

    bash 复制代码
    wsl --set-default-version 2
  • 列出可用的 Linux 发行版

    bash 复制代码
    wsl --list --online
  • 列出已安装的 Linux 发行版

    bash 复制代码
    wsl --list --verbose
  • 关闭

    bash 复制代码
    wsl --shutdown

Linux发行版安装

  1. 查看可用的linux系统

    bash 复制代码
    wsl --list --online
  2. 打开应用商店,搜索需要的系统,然后点击安装即可

Ubuntu初始化相关

设置root用户密码

  • 执行下面的命令,然后输入两次密码即可
bash 复制代码
sudo passwd

网络工具安装

  • 安装后,可以正常使用ifconfig
bash 复制代码
sudo apt-get install net-tools

安装1panel面板指导

  • 首先请在win系统安装docker desktop,然后再安装1panel面板,这样docker就直接安装好了!关于wsl底层和docker 的关系,作者也没有深入研究,但是这是经过实践得出的结论,可以放心食用。
  • 再Ubuntu中安装1Panel命令还是官方的命令,没有什么问题,注意进行初始化配置就行
bash 复制代码
curl -sSL https://resource.fit2cloud.com/1panel/package/quick_start.sh -o quick_start.sh && sudo bash quick_start.sh

WSl可视化工具

  • 可以在应用商店中直接搜索安装,任意一个即可
  • easyWSL
  • WSL Toolbox Beta

问题总结

WSL更新命令错误

Ubuntu 启动初始化错误

  • WslRegisterDistribution failed with error: 0x80370102
  • 可以先参看部署WSL2时遇到0x80370102问题的解决方法
  • 作者这里虚拟化和typer-v都开启没有问题,对该错误的解决是在WSL更新错误解决之后,就没有出现了,大家可以试试看

未解决问题

  • llwsl.localhost无法访问。你可能没有权限使用网络资源。系统资源不足,无法完成请求的服务。
  • 1Panel中无法使用SSH建立连接(可能是Ubuntu配有配置好SSH连接)
相关推荐
疯狂的大狗6 分钟前
docker进入正在运行的容器,exit后的比较
运维·docker·容器
XY.散人8 分钟前
初识Linux · 文件(1)
linux·运维·服务器
长天一色20 分钟前
【Docker从入门到进阶】01.介绍 & 02.基础使用
运维·docker·容器
伊玛目的门徒21 分钟前
docker 搭建minimalist-web-notepad
运维·docker·notepad
叶北辰CHINA1 小时前
nginx反向代理,负载均衡,HTTP配置简述(说人话)
linux·运维·nginx·http·云原生·https·负载均衡
不惑_2 小时前
在 Ubuntu 安装 Python3.7(没有弯路)
linux·运维·ubuntu
theo.wu3 小时前
使用Buildpacks构建Docker镜像
运维·docker·容器
玉树临风江流儿3 小时前
Linux驱动开发(速记版)--设备模型
linux·驱动开发
杰哥在此3 小时前
Python知识点:如何使用Multiprocessing进行并行任务管理
linux·开发语言·python·面试·编程
枫叶丹45 小时前
【在Linux世界中追寻伟大的One Piece】进程信号
linux·运维·服务器