win11安装WSL UbuntuTLS

win11安装WSL

  • WSL 简介
  • WSL 1 VS WSL 2
  • 先决要求
  • 安装方法
    • 一键安装
    • 通过「控制面板」安装 WSL
  • 基本命令
  • Linux发行版安装
  • Ubuntu初始化相关
    • 设置root用户密码
    • 网络工具安装
    • 安装1panel面板指导
  • WSl可视化工具
  • 问题总结
    • WSL更新命令错误
    • Ubuntu 启动初始化错误
    • 未解决问题

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 1WSL 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,然后等待执行完成后,重启电脑即可
wsl --install

通过「控制面板」安装 WSL

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

  2. 勾选「适用于 Linux 的 Windows 子系统」以及「虚拟机平台」后点击「确定」
    在这里插入图片描述

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

wsl --update

基本命令

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

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

    wsl --version
    
    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 状态

    wsl --status
    
  • Help 命令

    wsl --help
    
  • 设置默认 WSL 版本(请执行该命令)

    wsl --set-default-version 2
    
  • 列出可用的 Linux 发行版

    wsl --list --online
    
  • 列出已安装的 Linux 发行版

    wsl --list --verbose
    
  • 关闭

    wsl --shutdown
    

Linux发行版安装

  1. 查看可用的linux系统
    wsl --list --online
    
  2. 打开应用商店,搜索需要的系统,然后点击安装即可
    在这里插入图片描述

Ubuntu初始化相关

设置root用户密码

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

网络工具安装

  • 安装后,可以正常使用ifconfig
sudo apt-get install net-tools

安装1panel面板指导

  • 首先请在win系统安装docker desktop,然后再安装1panel面板,这样docker就直接安装好了!关于wsl底层和docker 的关系,作者也没有深入研究,但是这是经过实践得出的结论,可以放心食用。
  • 再Ubuntu中安装1Panel命令还是官方的命令,没有什么问题,注意进行初始化配置就行
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更新命令错误

  • 无法从“https://raw.githubusercontent.com/microsoft/WSL/master/distributions/DistributionInfo.json”中提取列表分发。无法解析服务器的名称或地址 Error code: Wsl/WININET_E_NAME_NOT_RESOLVED
  • 解决方法:打开raw.Githubusercontent.com域名解析网站,选择正常的IP,然后手动修改本地hosts文件,这里推荐使用火绒安全的网络工具一键打开hosts文件,然后配置raw.Githubusercontent.com的IP地址
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

Ubuntu 启动初始化错误

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

未解决问题

  • llwsl.localhost无法访问。你可能没有权限使用网络资源。系统资源不足,无法完成请求的服务。
  • 1Panel中无法使用SSH建立连接(可能是Ubuntu配有配置好SSH连接)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/585647.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

vuepress-theme-hope 添加谷歌统计代码

最近做了个网站,从 cloudflare 来看访问量,过去 30 天访问量竟然有 1.32k 给我整懵逼了,我寻思不应该呀,毕竟这个网站内容还在慢慢补充中,也没告诉别人,怎么就这么多访问?搜索了下, cloudflare 还会把爬虫的请求也就算进来,所以数据相对来说就不是很准确 想到了把 Google An…

【STM32嵌入式系统设计与开发】——14PWM(pwm脉宽输入应用)

这里写目录标题 一、任务描述二、任务实施1、WWDG工程文件夹创建2、函数编辑(1)主函数编辑(2)USART1初始化函数(usart1_init())(3)USART数据发送函数( USART1_Send_Data(&#xff09…

C# wpf 实现底部嵌入HwndHost

WPF Hwnd窗口互操作系列 第一章 嵌入Hwnd窗口 第二章 嵌入WinForm控件 第三章 嵌入WPF控件 第四章 底部嵌入HwndHost(本章) 文章目录 WPF Hwnd窗口互操作系列前言一、如何实现?1、底部创建窗口(1)、创建透明窗口&…

如何理解模板?

文章目录 1. 泛型编程2.函数模板2.1函数模板概念2.1函数模板格式2.3函数模板的原理2.4函数模板的实例化2.5模板参数的匹配原则 3.类模板3.1类模板的定义格式3.2类模板的实例化 1. 泛型编程 如何实现一个通用的交换函数呢? void Swap(int& left, int& right)…

4t 15届第3套模拟

一、Seg !!!难点 1.上下限: 这种上下限的有种情况是 ①通过按键直接实现:那就是按一下一下 ②通过按键操作标志位在数码管实现:我没要对他进行操作,但是默认就是0,那你不能0就吧&a…

配置 施耐德 modbusTCP 分布式IO子站 RPA0100

1. 总体步骤 2. 软件组态:在 Unity Pro 软件中创建编辑 PRA 模块工程 2.1 新建项目 模块箱硬件型号如下 点击 Unity Pro 软件左上方【新建】按钮,选择正确的 DIO 模块型号、背板型号 2.2 模块组态 2.2.1 拖拽添加模块 双击【配置】菜单下的【0&…

安全防御产品—锐安盾重磅上线,助力更安全、更流畅的业务体验

在互联网时代,互联网技术蓬勃发展,然而,随之而来的网络安全问题也备受关注。诸如DDoS攻击、CC攻击、常见Web攻击等攻击手段突如其来,导致企业业务中断,严重影响企业业务正常运行。对此,锐成云重磅推出安全防…

数据删除如何恢复?使用 3 个适用于 Windows 的最佳数据恢复工具方法

您是否在将重要文件从一个位置移动到另一个位置时丢失了这些文件,或者在此过程中意外删除了它们?您是否在恶意软件损坏外部存储设备后格式化外部存储设备时丢失了数据?即使您没有备份也不必担心。 3 个适用于 Windows 的最佳数据恢复工具方法…

【计算机网络】select/poll

多路转接 - select/poll 一、I/O 多路转接之 select1. select 接口2. select 的使用3. select 的优缺点 二、I/O 多路转接之 poll1. poll 接口2. poll 的使用3. poll 与 select 的对比 一、I/O 多路转接之 select 多路转接属于 IO 复用方式的一种。系统提供 select() 函数来实…

# 达梦数据库知识点

达梦数据库知识点 测试数据 -- SYSDBA.TABLE_CLASS_TEST definitionCREATE TABLE SYSDBA.TABLE_CLASS_TEST (ID VARCHAR(100) NOT NULL,NAME VARCHAR(100) NULL,CODE VARCHAR(100) NULL,TITLE VARCHAR(100) NULL,CREATETIME TIMESTAMP NULL,COLUMN1 VARCHAR(100) NULL,COLUMN…

入门教程:Windows搭建C语言和EasyX开发环境

🌟 前言 欢迎来到我的技术小宇宙!🌌 这里不仅是我记录技术点滴的后花园,也是我分享学习心得和项目经验的乐园。📚 无论你是技术小白还是资深大牛,这里总有一些内容能触动你的好奇心。🔍 如果对你…

C++ list

文章目录 list的介绍及使用list的介绍list的构造list iterator的使用list capacitylist element accesslist modifiers list模拟实现list节点类list迭代器类list类 list深度剖析list迭代器失效list反向迭代器 list与vector对比 list的介绍及使用 list的介绍 1.list的底层是双向…