【WSL/WSL 2-Redis】解决Windows家庭版/教育版无法安装WSL Ubuntu子系统与Redis安装

news2024/11/26 0:45:35

前言

在现代计算环境中,开发人员和技术爱好者通常需要在不同的操作系统之间切换,以便利用各种工具和应用程序。在这方面,Windows用户可能发现WSL(Windows Subsystem for Linux)是一个强大的工具,它允许他们在Windows操作系统上运行Linux发行版,无需双重引导或虚拟机。本文将探讨WSL的安装过程,提供常见问题的解决方案,并帮助用户更好地了解如何在Windows中创建Linux环境,以便于开发、测试和执行Linux命令。

文章目录

  • **前言**
  • **探索Windows中的Linux世界:WSL(Windows Subsystem for Linux)安装与解决常见问题**
    • 什么是WSL
    • 安装WSL Ubuntu
    • 安装镜像连接
    • 常见报错
      • The Windows Subsystem for Linux optional component is not enabled
        • 方法一
        • 方法二
      • WslRegisterDistribution failed with error: 0x800701bc
        • 方法一
        • 方法二(可能有风险)
      • WslRegisterDistribution failed with error: 0x80370102
    • Ubuntu安装到哪了?
    • 彻底卸载 Ubuntu 或任何其他 Linux 分发版
    • WSL/WSL 2相关指令
      • **检查WSL已安装的Linux分发版列表**:
      • **检查WSL已安装的Linux的详细信息**:
      • 切换whl版本
    • Redis
  • **总结**

探索Windows中的Linux世界:WSL(Windows Subsystem for Linux)安装与解决常见问题

什么是WSL

WSL(Windows Subsystem for Linux)是一项功能,允许在Windows操作系统上运行Linux发行版。它提供了一个类似于Linux的环境,允许用户在Windows上运行Linux应用程序和使用Linux命令行工具。WSL的主要作用包括:

  1. Linux 应用程序运行:WSL允许用户在其Windows系统中运行Linux应用程序,无需双重引导或虚拟机。

  2. 开发和测试:开发人员可以在Windows上使用WSL来进行Linux开发,测试和调试。这对于跨平台开发非常有用。

  3. 使用 Linux 命令行工具:WSL提供了一个Linux命令行界面,用户可以使用Linux命令和工具,如Bash、grep、sed等,来执行任务。

  4. 文件共享:WSL允许用户轻松共享文件和数据,以便在Windows和Linux之间传输信息。

安装WSL Ubuntu

由于国内的网络原因在微软商店中下载WSL子系统可能存在网络问题而无法下载,微软为WSL子系统的常见发行版提供了原始镜像下载链接。
作者:宽屏巴洛克 https://www.bilibili.com/read/cv20802408 出处:bilibili

安装镜像连接

Ubuntu:

  • 默认发行版:Ubuntu默认发行版
  • Ubuntu 22.04 LTS:Ubuntu 22.04 LTS
  • Ubuntu 20.04:Ubuntu 20.04
  • Ubuntu 20.04 ARM:Ubuntu 20.04 ARM
  • Ubuntu 18.04:Ubuntu 18.04
  • Ubuntu 18.04 ARM:Ubuntu 18.04 ARM
  • Ubuntu 16.04:Ubuntu 16.04

Debian:

  • Debian:Debian

Kali Linux:

  • Kali:Kali Linux

SUSE Linux:

  • SUSE Linux Enterprise Server 12:SUSE Linux Enterprise Server 12
  • SUSE Linux Enterprise Server 15 SP2:SUSE Linux Enterprise Server 15 SP2
  • SUSE Linux Enterprise Server 15 SP3:SUSE Linux Enterprise Server 15 SP3

openSUSE:

  • openSUSE Tumbleweed:openSUSE Tumbleweed
  • openSUSE 15.3:openSUSE 15.3
  • openSUSE 15.2:openSUSE 15.2

Oracle Linux:

  • Oracle Linux 8.5:Oracle Linux 8.5
  • Oracle Linux 7.9:Oracle Linux 7.9

Fedora Remix:

  • Fedora:Fedora Remix

这些链接可以帮助用户下载并安装所选的Linux分发版。用户可以根据自己的需求和偏好选择适合的分发版。
PowerShell安装法(较慢)

  1. 打开Windows PowerShell(管理员权限):按下Win + X,然后选择“Windows PowerShell (管理员)”选项。

  2. 下载Ubuntu:运行以下命令以下载适用于WSL的Ubuntu 16.04:

    Invoke-WebRequest -Uri https://aka.ms/wsl-ubuntu-1604 -OutFile Ubuntu.appx -UseBasicParsing
    
  3. 安装Ubuntu:运行以下命令以安装下载的Ubuntu包:

    Add-AppxPackage .\Ubuntu.appx
    
  4. 启动Ubuntu:安装完成后,可以在开始菜单中找到并启动Ubuntu。

常见报错

The Windows Subsystem for Linux optional component is not enabled

Installing, this may take a few minutes...
WslRegisterDistribution failed with error: 0x8007019e
The Windows Subsystem for Linux optional component is not enabled. Please enable it and try again.
See https://aka.ms/wslinstall for details.
Press any key to continue...

在这里插入图片描述

方法一

错误信息 “WslRegisterDistribution failed with error: 0x8007019e” 表明 Windows 子系统用于 Linux 的可选组件未启用。要解决这个问题,你需要手动启用 Windows 子系统用于 Linux 组件。以下是解决方法:

通过 PowerShell 启用 Windows 子系统用于 Linux 组件:

  1. 打开 PowerShell(管理员权限):按下 Win + X 键,然后选择“Windows PowerShell(管理员)”。

  2. 运行以下命令来启用 Windows 子系统用于 Linux 组件:

    dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
    
  3. 完成后,重新启动计算机以确保更改生效。

  4. 再次尝试安装 WSL,运行你的安装命令。

如果你在启用组件后仍然遇到问题,请确保你的系统满足安装WSL的要求。如果仍然存在问题,你可以尝试通过官方文档中提供的方法进行故障排除。官方文档链接为 https://aka.ms/wslinstall。

一旦 Windows 子系统用于 Linux 组件已成功启用,你应该能够安装和运行WSL,而不会再遇到这个错误。

方法二

使用PowerShell命令 Enable-WindowsOptionalFeature 也是启用 Windows 子系统用于 Linux 组件的有效方法。这个命令可以代替使用 dism.exe 命令。以下是使用 Enable-WindowsOptionalFeature 命令的示例:

  1. 打开 PowerShell(管理员权限):按下 Win + X 键,然后选择“Windows PowerShell(管理员)”。

  2. 运行以下命令以启用 Windows 子系统用于 Linux 组件:

    Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
    
  3. 完成后,重新启动计算机以确保更改生效。

此方法与使用 dism.exe 具有相同的效果,它也将启用 Windows 子系统用于 Linux 组件,允许你安装和运行WSL。使用哪种方法取决于你的个人偏好。感谢分享这个替代方法!

在这里插入图片描述
在这里插入图片描述
重启后再次启动Ubuntu
在这里插入图片描述

WslRegisterDistribution failed with error: 0x800701bc

Installing, this may take a few minutes...
WslRegisterDistribution failed with error: 0x800701bc
Error: 0x800701bc WSL 2 ?????????????????? https://aka.ms/wsl2kernel

Press any key to continue...

方法一

如果你要在Windows 10家庭版中使用虚拟化技术,有一种受支持的方法是使用Windows Subsystem for Linux 2 (WSL 2),它提供了轻量级的Linux环境,适用于开发和测试。你可以在家庭版中启用WSL 2,而无需执行额外的脚本。

要启用WSL 2,可以按照以下步骤操作:

  1. 打开 PowerShell 作为管理员。

  2. 运行以下命令来启用虚拟机平台:

    dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
    
  3. 安装 WSL 2 更新包。下载并安装 WSL 2 Linux 内核更新包,你可以从以下链接下载并运行安装程序:WSL 2 Linux 内核更新包
    在这里插入图片描述

  4. 将WSL 2设置为默认版本:

    wsl --set-default-version 2
    
  5. 安装你选择的Linux发行版,例如Ubuntu,从Microsoft Store或官方网站下载并手动导入。

这样,你可以在Windows 10家庭版中使用WSL 2来运行Linux发行版,而不必担心Hyper-V的许可问题。不过,如果你确实需要Hyper-V,你可以尝试运行你提供的脚本,但请务必谨慎操作并了解可能的许可问题。

方法二(可能有风险)

通过一个批处理文件(Hyper-V.cmd)来在Windows 10家庭版中启用Hyper-V功能。Hyper-V是Windows的虚拟化技术,通常在专业版和企业版中可用,但家庭版通常不支持。

这个脚本似乎尝试启用Hyper-V功能,但在家庭版中使用这个方法需要小心,因为Microsoft可能会进行许可方面的限制。

  • win10 家庭中文版没有Hyper-V,这样安装一步搞定

WslRegisterDistribution failed with error: 0x80370102

Installing, this may take a few minutes...
WslRegisterDistribution failed with error: 0x80370102
Error: 0x80370102 ???????????????????

Press any key to continue...

你看到的错误消息 “WslRegisterDistribution failed with error: 0x80370102” 与 Windows 子系统用于 Linux (WSL) 安装过程有关。这个错误表示在注册 WSL 发行版时出现了问题。它可能由各种因素引起,例如缺少或损坏的文件、系统配置问题或 Windows 安装问题。

以下是一些可能解决此问题的步骤:

建议先尝试安装 WSL 2 更新包。下载并安装 WSL 2 Linux 内核更新包,你可以从以下链接下载并运行安装程序:WSL 2 Linux 内核更新包

  1. **确保 Windows 版本兼容:**确保你运行的是与 WSL 兼容的 Windows 版本。WSL 2 需要 Windows 10 版本 1903 或更高版本。如果你运行较旧的版本,考虑升级 Windows。

  2. **启用虚拟化:**确保在你的 BIOS/UEFI 设置中启用了虚拟化。WSL 2 需要硬件虚拟化功能的支持。你可能需要重新启动计算机,访问 BIOS/UEFI 设置并启用虚拟化。

  3. **更新 Windows:**确保你的 Windows 安装已安装了最新的更新和补丁。

  4. **检查 Hyper-V:**如果你已安装并启用了 Hyper-V,它可能与 WSL 2 冲突。你可以尝试禁用 Hyper-V,或使用 “wsl --set-version” 切换到 WSL 1。要禁用 Hyper-V,你可以使用"控制面板"中的 “打开或关闭 Windows 功能”。

  5. **重新安装 WSL:**你可以尝试卸载然后重新安装系统上的 WSL 功能。

  6. **修复 WSL:**以管理员身份打开 PowerShell 并运行以下命令:

    dism.exe /online /cleanup-image /restorehealth
    sfc /scannow
    

    这些命令将检查并尝试修复可能导致 WSL 出现问题的系统文件问题。

  7. **检查第三方软件:**有时,第三方软件,特别是防病毒软件,可能会干扰 WSL 安装。你可以尝试临时禁用此类软件,看是否解决了问题。

  8. **检查损坏文件:**有可能一些 WSL 安装文件已经损坏。尝试删除引发问题的发行版,然后重新安装它。

Ubuntu安装到哪了?

之前的链接用于下载适用于 Windows Subsystem for Linux (WSL) 的 Ubuntu 安装包。在使用这些安装包安装 Ubuntu 时,安装的目录通常位于 Windows 系统中的特定位置。默认情况下,Ubuntu 将安装到 WSL 的默认位置,该位置通常是:

C:\Users\<YourUsername>\AppData\Local\Packages\CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc\LocalState\rootfs\

请注意,<YourUsername> 是你的用户帐户名称。如果你选择安装其他 Linux 分发版,安装目录也将位于类似的位置,只是相应的包名和目录名称会有所不同。

在这个目录中,你可以找到安装的 Ubuntu 文件系统。你可以在其中运行和管理 Ubuntu 系统,但请谨慎操作,因为直接编辑文件可能会导致不稳定或损坏系统。在大多数情况下,你应该使用 WSL 提供的终端界面来与安装的 Linux 分发版交互,而不是直接编辑文件系统。

彻底卸载 Ubuntu 或任何其他 Linux 分发版

要彻底卸载 Ubuntu 或任何其他 Linux 分发版,安装到 Windows Subsystem for Linux (WSL) 中的步骤可以包括以下几个步骤:

  1. 打开 Windows PowerShell 或命令提示符。

  2. 运行以下命令来列出已安装的 WSL 发行版:

wsl --list

这将显示已安装的 Linux 发行版的名称。

  1. 运行以下命令来卸载 Ubuntu 或其他特定的 WSL 发行版。请将 <DistributionName> 替换为你要卸载的发行版的名称,例如 “Ubuntu”。
wsl --unregister <DistributionName>

例如,如果要卸载 Ubuntu,命令可能如下所示:

wsl --unregister Ubuntu
  1. 在卸载过程中,Windows 会提示你确认删除 WSL 发行版。确认后,系统将卸载该发行版。

  2. 最后,删除 WSL 发行版的文件系统镜像。可以使用以下命令来删除镜像文件:

wsl --unregister <DistributionName>

替换 <DistributionName> 为你要删除的发行版名称。这会删除相应的镜像文件,以确保干净卸载。

以上步骤将卸载 WSL 发行版,并删除相关文件系统镜像,以确保干净卸载。在执行这些步骤之后,你的系统将不再包含该 Linux 发行版的残留部分。

WSL/WSL 2相关指令

要查看是否已经安装了WSL和WSL 2,你可以按照以下步骤操作:

检查WSL已安装的Linux分发版列表

  1. 打开Windows PowerShell(管理员权限):按下 Win + X,然后选择“Windows PowerShell (管理员)”选项。
  2. 运行以下命令来列出已安装的WSL分发版:
    wsl --list
    
    如果此命令返回已安装的Linux分发版列表,那么WSL已经安装。

在这里插入图片描述

检查WSL已安装的Linux的详细信息

用于检查 WSL 的状态的命令取决于你是否使用 WSL 1 还是 WSL 2。你可以通过运行以下命令来检查当前的 WSL 版本:

  1. 打开Windows PowerShell(管理员权限)。
  2. 运行以下命令来查看WSL和WSL 2的详细信息:
    wsl --list --verbose
    
    这将显示每个WSL分发版的详细信息,包括其WSL版本。
    在这里插入图片描述

切换whl版本

wsl --set-default-version 1
wsl --set-default-version 2

在这里插入图片描述

Redis

当在Ubuntu中安装Redis,可以按照以下步骤进行操作:

  1. 打开Ubuntu终端

  2. 更新包列表:确保您的包列表是最新的,使用以下命令:

    sudo apt update
    
  3. 安装Redis:使用以下命令安装Redis服务器和客户端:

    sudo apt install redis-server redis-tools
    
  4. 启动Redis:安装完成后,Redis服务器会自动启动。您可以使用以下命令检查其状态:

    sudo service redis-server status
    
  5. 连接到Redis:使用以下命令连接到Redis服务器:

    redis-cli
    

现在,您已经成功在Ubuntu上安装了Redis,并可以通过 redis-cli 命令与Redis服务器进行交互。如果需要进行高级配置或使用特定功能,您可以编辑 /etc/redis/redis.conf 文件或参考Redis的官方文档和其他教程。
若未启动

friklogff@DESKTOP-PQCLUS8:~$ sudo service redis-server status
sudo service redis-server status

  • redis-server is not running

根据输出,Redis服务器当前没有运行。如果你希望启动Redis服务器,可以使用以下命令:

sudo service redis-server start

这将启动Redis服务器。然后,你可以使用以下命令来检查其状态:

sudo service redis-server status

如果一切正常,你应该会看到Redis服务器正在运行的状态信息。如果Redis服务器启动失败或出现错误消息,请检查配置文件以解决问题。默认情况下,Redis的配置文件通常位于/etc/redis/redis.conf

总结

WSL(Windows Subsystem for Linux)是一项强大的功能,允许Windows用户在其操作系统中运行Linux发行版,提供了更灵活的开发和测试环境。本文介绍了如何安装WSL,提供了针对常见问题的解决方案,例如WSL组件未启用或WSL 2错误。此外,我们还解释了如何彻底卸载Linux分发版,以便读者可以轻松地管理其WSL环境。通过本文的指导,用户将能够更好地利用WSL,实现跨平台开发和Linux命令行工具的使用,从而提高其工作效率和开发体验。

在探索Windows中的Linux世界时,WSL是连接两个生态系统的桥梁,使用户能够充分利用Windows和Linux的优势,而无需切换操作系统。无论是开发者还是技术爱好者,WSL都为他们提供了更多的可能性和便利性。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Vue2组件化开发(路由与分页组件化)

组件化开发 组件化开发就是将一个页面拆分为多个不同的组件&#xff0c;每个组件依赖的Css,js,资源等放到一起进行开发&#xff0c;组件与组件之间可以进行嵌套&#xff0c;在组件化中&#xff0c;vue只有一个html文件&#xff0c;所有的组件都挂载在该文件上&#xff0c;这种单…

RabbitMQ 消息对象 序列化/反序列化 天坑!异常处理方案

目录 1. 报错的背景 2. 问题分析 3. 最佳解决办法 1. 报错的背景 a&#xff09;使用 RabbitMQ 发送消息时&#xff0c;发送消息的类型为 Map<String, Object>&#xff0c;map 里面我 put 了一个 <String, Long> 类型&#xff0c;如下图&#xff1a; b&#xff…

带你人工识别C#开源库BarcodeLib生成的一维码Code128

我们是做HIS系统开发的&#xff0c;前段时间发现某些处方的一维码出现无法识别的情况。看了一下一维码生成的逻辑&#xff0c;使用到了BarcodeLib库&#xff0c;经过反复确认&#xff0c;我们程序是没有问题的。后面不得不反编译看一下BarcodeLib生成一维码的逻辑。最后调整一维…

Techwalk攻略 | 来北京与OpenHarmony技术大会一起技术漫游!

去北京Citywalk已经不是新鲜事&#xff1f; 不如来第二届OpenHarmony技术大会一起Techwalk&#xff01; 大会即将开幕请速速收藏以下打卡攻略↓ 点击链接&#xff0c;观看线上直播

【从瀑布模式到水母模式:ChatGPT如何赋能软件研发全流程】

你是否曾读过一本让你欲罢不能的计算机书籍&#xff1f;它可能为你打开了新的技术世界大门&#xff0c;或者是帮助你解决了棘手的编程难题。 前言&#xff1a; 计算机技术的发展和互联网的普及&#xff0c;使信息处理和传输变得更加高效&#xff0c;极大地改变了金融、商业、…

服务器搭建:从零开始创建自己的Spring Boot应用【含登录、注册功能】

当然&#xff0c;你可以先按照IDEA搭建SSM框架【配置类、新手向】完成基础框架的搭建 步骤 1&#xff1a;设计并实现服务器端的用户数据库 在这个示例中&#xff0c;我们将使用MySQL数据库。首先&#xff0c;你需要安装MySQL并创建一个数据库以存储用户信息。以下是一些基本步…

分布式事务解决方案之Atomikos

这种方式只适用于 对于真正分布式应用不适用,原因在于 Atomikos需要获得所有数据源 统一进行事务管理 JTA(Java Transaction API)被称为Java事务API,是由Java语言提供的一套解决分布式事务的API标准 XA协议 1 2 31. XA协议是JTA的基础 2. XA协议最早由Tuxedo首先提出,并交给…

ChatGPT、Llama-2等大模型,能推算出你的隐私数据!

ChatGPT等大语言模型的推理能力有多强大&#xff1f;通过你发过的帖子或部分隐私数据&#xff0c;就能推算出你的住址、年龄、性别、职业、收入等隐私数据。 瑞士联邦理工学院通过搜集并手工标注了包含520个Reddit&#xff08;知名论坛&#xff09;用户的个人资料真实数据集Pe…

MySQL导入数据库报错Error Code: 2006

Error Code: 2006 - MySQL server has gone away 因为导入的某张表数据过大导致导入中途失败 , 修改max_allowed_packet 即可解决。 SET GLOBAL max_allowed_packet 1024*1024*200;

Pytest UI自动化测试实战实例

环境准备 序号库/插件/工具安装命令1确保您已经安装了python3.x2配置python3pycharmselenium2开发环境3安装pytest库pip install pytest4安装pytest -html 报告插件pip install pytest-html5安装pypiwin32库(用来模拟按键)pip install pypiwin326安装openpyxl解析excel文件库p…

享受户外的美好时光:花园吊椅的魅力

拥有舒适的花园吊椅&#xff0c;就像在家中创造了一个度假天堂。这些轻松摇摆的座位为您提供了一个完美的地方&#xff0c;既能舒适躺卧&#xff0c;又能让您在家中的花园或庭院中感受到度假的氛围。度过美好时光的吊椅&#xff0c;将成为家庭花园的一大亮点&#xff0c;为您带…

Python某建筑平台数据, 实现网站JS逆向解密

嗨喽&#xff0c;大家好呀~这里是爱看美女的茜茜呐 环境使用: 首先我们先来安装一下写代码的软件&#xff08;对没安装的小白说&#xff09; Python 3.8 / 编译器 Pycharm 2021.2版本 / 编辑器 专业版是付费的 <文章下方名片可获取魔法永久用~> 社区版是免费的 模块…

学生成绩管理神器

在信息化时代&#xff0c;你是否还在为处理大量的学生成绩数据而烦恼&#xff1f;是否还在用传统的方式&#xff0c;手动输入和整理成绩信息&#xff1f;今天&#xff0c;我将向你展示如何利用各种代码和Excel&#xff0c;打造一个学生自助查询成绩的神器&#xff0c;让数据管理…

ClickHouse 学习之基础入门(一)

第 1 章 ClickHouse 入 门 ClickHouse 是俄罗斯的 Yandex 于 2016 年开源的列式存储数据库&#xff08;DBMS&#xff09;&#xff0c;使用 C 语言编写&#xff0c;主要用于在线分析处理查询&#xff08;OLAP&#xff09;&#xff0c;能够使用 SQL 查询实时生成分析数据报告。 …

词典查询工具django-mdict

什么是 django-mdict &#xff1f; django-mdict 不是词典软件&#xff0c;是词典查询的脚本工具&#xff0c;主要目的是解决词典数量多&#xff0c;手机容量不足的问题&#xff0c;是对其他词典软件局域网在线查询功能的补充&#xff0c;是用 django 实现的 mdict 词典查询工具…

递归与快速算法

借鉴&#xff1a; 4分钟彻底掌握递归算法、斐波那契数列、快速排序&#xff0c;不再怕面试&#xff01;_哔哩哔哩_bilibili 可直接观看借鉴里的视频 快速算法

vcruntime140.dll在哪下载?vcruntime140.dll文件说明及其下载方法

vcruntime140.dll在哪下载&#xff1f;为啥还有这样的问题&#xff1f;其实就是你电脑的vcruntime140.dll文件丢失了&#xff0c;你需要重新去下载一个vcruntime140.dll文件&#xff0c;这时候你就会想这个东西到底要去哪里下载&#xff0c;今天我们就来给大家详细的解析一下&a…

AI视频 | Runway的史诗级更新真的那么震撼吗?来看我的试用体验!

就在昨天&#xff0c;Runway&#xff0c;这个生成式AI的领头羊&#xff0c;正式在X上发布了他们史诗级更新 看下视频 【视频2】 这个确实看起来太棒了 注册个账号&#xff0c;看下效果咋样 地址百度哈&#xff0c;注册登录也比较方便 直接邮箱即可 不过我是直接google账号登录的…

从使用的角度看 ByConity 和 ClickHouse 的差异

自 ClickHouse Inc 宣布其重要新功能仅在 ClickHouse Cloud 上开放以来&#xff0c;一些关注 ByConity 开源的社区小伙伴也来询问 ByConity 后续开源规划。为回答社区疑问&#xff0c;我们将之前分享的关于 ByConity 与 ClickHouse 相关功能对比的 webinar 整理为文章&#xff…