WSL1和WSL2相互转换以及安装路径迁移相关问题

这篇具有很好参考价值的文章主要介绍了WSL1和WSL2相互转换以及安装路径迁移相关问题。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

1.从WSL 1如何切换到WSL 2?

2.从WSL 2如何切换回WSL 1?

3.WSL1转换为WSL2后,WSL1里面安装的程序和库需要重装吗?

4.WSL2转换为WSL1后,WSL2里面安装的程序和库需要重装吗?

5.如何备份WSL2?

6.一台电脑上面可以同时运行WSL1和WSL2吗?

7.WSL2如何从C盘转移到D盘?

8.导入到D盘之后,原来的WSL还在吗?是不是我的电脑上面同时就有了2个wsl?

9.当有多个WSL时,如何启动特定的WSL?

10.电脑上现在运行了2个WSL,想关闭其中一个,但使用--shutdown命令全部都关闭了,我想另外一个依然运行,怎么操作?


1.从WSL 1如何切换到WSL 2?

        从WSL 1切换到WSL 2的过程中,需要执行以下步骤:

  1. 确保Windows版本为1903或更高版本,并启用了虚拟化功能。

  2. 下载并安装WSL 2更新:Install WSL | Microsoft Learn

  3. 将WSL 2设置为默认版本,可以使用以下命令:wsl --set-default-version 2

  4. 更新WSL 1发行版,以便其在WSL 2中运行,可以使用以下命令:wsl --set-version <distribution name> 2

        请注意,切换到WSL 2后,需要下载并安装适用于WSL 2的Linux内核,但不需要重新安装Linux发行版。现有的WSL 1发行版将自动转换为WSL 2发行版。

2.从WSL 2如何切换回WSL 1?

可以通过以下步骤将WSL 2转换回WSL 1:

  1. 打开 PowerShell 并运行以下命令以将 WSL 1设置为默认版本:

    wsl --set-default-version 1

  2. 然后,运行以下命令以将 WSL 2 发行版转换为 WSL 1 发行版。请将 <distribution name> 替换为想要转换的发行版的名称:

    wsl --set-version <distribution name> 1 ,如我这边的WSL2的名称为Ubuntu-20.04-e,那么我输入的命令就是:wsl --set-version Ubuntu-20.04-e 1,稍等片刻就会显示转换完成:

    WSL1和WSL2相互转换以及安装路径迁移相关问题

  3. 等待转换过程完成。此过程可能需要一些时间,具体取决于发行版的大小和计算机的性能。

        请注意,转换过程将删除 WSL 2 的所有状态和文件,并将其转换为 WSL 1。如果之前在 WSL 2 中安装了任何程序或库,则需要在 WSL 1 中重新安装它们。

        另外,如果之前已删除 WSL 1 的状态或文件,则可能需要在转换回 WSL 1 之前重新安装 WSL 1 发行版。可以从 Microsoft Store 或其他适当的渠道重新安装 WSL 1 发行版。

3.WSL1转换为WSL2后,WSL1里面安装的程序和库需要重装吗?

        通常来说,在WSL 1中安装的程序和库可以在WSL 2中继续使用,无需重新安装。

        将WSL 1升级为WSL 2时,WSL 1发行版会自动转换为WSL 2发行版,并且已经安装的程序和库将保留在转换后的发行版中。可以使用与WSL 1相同的方式在WSL 2中运行这些程序和库,只是在性能和功能方面会有所提升。

        但是,如果程序或库依赖于特定于WSL 1的功能或配置,则可能需要在WSL 2中进行适当的修改或重新安装。此外,WSL 2中使用的Linux内核与WSL 1中使用的Linux内核有所不同,因此某些特定的Linux驱动程序或内核模块可能需要重新安装或重新编译以在WSL 2中正常运行。

4.WSL2转换为WSL1后,WSL2里面安装的程序和库需要重装吗?

        在将 WSL 2 转换回 WSL 1 后,WSL 2 中安装的程序和库不会自动转移到 WSL 1,因此需要在 WSL 1 中重新安装它们。

        当在 WSL 2 中安装程序或库时,它们将安装在 WSL 2 文件系统中。而在将 WSL 2 转换回 WSL 1 后,WSL 1 文件系统将替换 WSL 2 文件系统,因此之前在 WSL 2 中安装的程序和库将无法在 WSL 1 中访问。

        如果需要在 WSL 1 中使用之前在 WSL 2 中安装的程序和库,则需要在 WSL 1 中重新安装它们。在 WSL 1 中安装程序和库的过程与在 WSL 2 中安装它们的过程类似,只需要在 WSL 1 中打开终端并使用适当的包管理器(如 apt-get 或 yum)来安装它们。

        请注意,在 WSL 1 和 WSL 2 之间切换可能会涉及到文件系统和网络配置的变化,因此在切换之前最好备份重要数据并了解这些变化的影响。

5.如何备份WSL2?

        在备份 WSL 2 之前,需要先理解 WSL 2 的文件系统和状态存储位置。在 WSL 2 中,Linux 文件系统存储在虚拟硬盘(VHD)中,并位于 Windows 文件系统中的特定位置。此外,WSL 2 状态信息存储在 Windows 注册表中的特定位置。

        要备份 WSL 2,需要完成以下步骤:

  1. 停止 WSL 2 发行版:在 PowerShell 中运行以下命令,其中 <distribution name> 是要备份的发行版的名称:

    wsl --terminate <distribution name>

  2. 导出 WSL 2 的 VHD 文件:在 PowerShell 中运行以下命令,其中 <Distribution Name> 是要备份的发行版的名称,<FileName> 是导出文件的路径和名称。

    wsl --export <Distribution Name> <FileName>

  3. 备份 WSL 2 的状态信息:打开 Windows 注册表编辑器,并导航到以下位置:HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Lxss\<distribution GUID>。右键单击此位置并选择“导出”,然后选择保存导出文件的位置和名称。

  4. 备份完毕后,可以重新启动 WSL 2 发行版:在 PowerShell 中运行以下命令,其中 <Distribution Name> 是要重新启动的发行版的名称:

    wsl --start <Distribution Name>

        要恢复备份,只需执行以下操作:

  1. 将导出的 VHD 文件复制到要恢复的计算机上,并将其重命名为要还原的发行版的名称。

  2. 在 PowerShell 中运行以下命令,其中 <Distribution Name> 是要还原的发行版的名称,<FileName> 是上一步导出文件的路径和名称。

    wsl --import <Distribution Name> <InstallLocation> <FileName>

    注意,<InstallLocation> 是要导入发行版的安装位置。如果这个位置不存在,WSL 2 会自动创建它。

  3. 导入成功后,可以使用以下命令启动 WSL 2 发行版:

    wsl --start <Distribution Name>

        请注意,备份和恢复 WSL 2 可能需要一些时间,具体取决于发行版的大小和计算机的性能。同时,由于 WSL 2 使用的是动态虚拟硬盘文件,因此备份文件的大小可能会超过发行版的实际大小。

6.一台电脑上面可以同时运行WSL1和WSL2吗?

        一台计算机可以同时安装 WSL 1 和 WSL 2。在 Windows 10 版本 2004 及更高版本中,可以使用“启用或关闭 Windows 功能”对话框来启用或禁用 WSL 1 和 WSL 2:

        要同时使用 WSL 1 和 WSL 2,请先确保已启用 WSL 功能。打开 Windows PowerShell 并以管理员身份运行,然后运行以下命令:

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

        接下来,需要启用 WSL 2。打开 Windows PowerShell 并以管理员身份运行,然后运行以下命令:

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

        然后,需要下载和安装 WSL 2 更新内核。可以从 Microsoft 的官方网站上下载适用于的Windows 版本的最新内核更新。安装完成后,请重启计算机以使更改生效。

        一旦 WSL 1 和 WSL 2 都启用并且最新的 WSL 2 更新内核已安装,可以在 Windows 终端中使用 wsl --set-version <distribution name> <versionNumber> 命令将特定的 WSL 发行版切换为 WSL 1 或 WSL 2 版本。请注意,WSL 1 和 WSL 2 版本之间的切换可能需要一些时间,并且需要重新启动 WSL 发行版才能生效。

        在同一台计算机上使用 WSL 1 和 WSL 2 可以让在不同的环境中运行不同的 Linux 发行版和应用程序,并且具有更高的灵活性和兼容性。

7.WSL2如何从C盘转移到D盘?

        要将 WSL 2 安装从 C 盘转移到 D 盘,可以执行以下步骤:

  1. 在 D 盘创建一个新的目录,用于存储 WSL 2 安装文件。例如,可以在 D 盘根目录下创建一个名为 wsl 的文件夹。

  2. 打开 Windows 终端,使用管理员权限运行。

  3. 通过 wsl --list --verbose 命令查找要移动的 WSL 2 发行版的 GUID(Global Unique Identifier)。

  4. 在 Windows 终端中,执行以下命令,将 WSL 2 安装文件从 C 盘移动到 D 盘:

  wsl --export <Distribution Name> <FileName>

        其中,<Distribution Name> 是要移动的 WSL 2 发行版的名称,例如 Ubuntu,<FileName> 是导出文件的路径和名称,例如 D:\wsl\ubuntu.tar

        如:wsl --export Ubuntu-20.04 D:\WSL\Ubuntu-20.04-d

        然后,执行以下命令,从导出的文件中导入 WSL 2 安装到 D 盘:

  1. wsl --import <Distribution Name> <InstallLocation> <FileName>其中,<Distribution Name> 是要导入的 WSL 2 发行版的名称,例如 Ubuntu,<InstallLocation> 是要在 D 盘上创建的新 WSL 2 安装文件夹的路径,例如 D:\WSL,<FileName> 是上一步导出文件的路径和名称,例如D:\WSL\Ubuntu-20.04-d。总的命令就是:wsl --import Ubuntu-20.04-d D:\WSL D:\WSL\Ubuntu-20.04-d
  2. 然后,使用 wsl --set-default <distribution name> 命令将新导入的 WSL 2 发行版设置为默认发行版。

        通过这些步骤,可以将 WSL 2 安装文件从 C 盘移动到 D 盘,并在 D 盘上重新导入和安装 WSL 2 发行版。请注意,在此过程中,需要确保 WSL 2 发行版的数据和配置已备份,并且已将它们迁移到新的安装文件夹中。

8.导入到D盘之后,原来的WSL还在吗?是不是我的电脑上面同时就有了2个wsl?

        导入到 D 盘后,原来的 WSL 2 发行版仍然存在于 C 盘中,并且在 D 盘上创建了一个新的 WSL 2 发行版。因此,电脑上现在有两个 WSL 2 发行版。

        可以使用 wsl --list --verbose 命令查看所有已安装的 WSL 发行版的详细信息,包括它们的 GUID、状态、路径和默认状态。默认情况下,新导入的 WSL 2 发行版可能不会自动成为默认的 WSL 发行版,因此可能需要使用 wsl --set-default <distribution name> 命令将其设置为默认的 WSL 发行版。

        请注意,当创建新的 WSL 发行版时,WSL 2 发行版和 WSL 1 发行版都可以存在于同一台计算机上,且可以同时运行。但是,当使用 wsl --set-version 命令将 WSL 2 发行版转换为 WSL 1 发行版或将 WSL 1 发行版转换为 WSL 2 发行版时,需要重启 WSL 发行版,这可能会导致的应用程序和库需要重新安装和配置。

9.当有多个WSL时,如何启动特定的WSL?

        如果在计算机上同时安装了多个 WSL 2 发行版,可以使用以下步骤启动想要的 WSL 发行版:

  1. 打开 Windows 终端。
  2. 运行 wsl --list --verbose 命令列出所有已安装的 WSL 发行版及其详细信息。
  3. 查找想要启动的 WSL 发行版的名称,该名称在第一列中。
  4. 运行 wsl --distribution <distribution name> 命令,其中 <distribution name> 是想要启动的 WSL 发行版的名称。

        例如,如果想要单独启动名为 "Ubuntu" 的 WSL 发行版,可以运行以下命令:

   wsl --distribution Ubuntu

        请注意,也可以使用以下命令来启动默认的 WSL 发行版:

    wsl

        此命令将启动在上一次使用 wsl 命令时设置的默认 WSL 发行版。如果想要更改默认的 WSL 发行版,请使用 wsl --set-default <distribution name> 命令,其中 <distribution name> 是想要设置为默认的 WSL 发行版的名称。

10.电脑上现在运行了2个WSL,想关闭其中一个,但使用--shutdown命令全部都关闭了,我想另外一个依然运行,怎么操作?

        如果想要关闭一个 WSL 发行版,但让另一个 WSL 发行版继续运行,请按照以下步骤操作:

  1. 打开 Windows 终端。
  2. 运行 wsl --list 命令列出所有已安装的 WSL 发行版及其名称。
  3. 找到想要关闭的 WSL 发行版的名称。
  4. 运行 wsl --terminate <distribution name> 命令,其中 <distribution name> 是想要关闭的 WSL 发行版的名称。

        例如,如果想要关闭名为 "Ubuntu" 的 WSL 发行版,可以运行以下命令:

  wsl --terminate Ubuntu

        请注意,这个命令将立即终止 WSL 发行版中所有正在运行的进程,因此请确保已经保存并关闭了所有需要保存的文件和应用程序。

11.如何卸载指定的WSL发行版?

       使用如下命令在Windows 终端中执行即可:

  1. 打开 Windows 终端。
  2. 运行 wsl -l -v命令列出所有已安装的 WSL 发行版及其名称。
  3. 找到想要卸载的 WSL 发行版的名称。
  4. 运行wsl --unregister <DistributionName>命令,其中 <DistributionNam> 是想要卸载的 WSL 发行版的名称。

        例如,如果想要关闭名为 "Ubuntu-20.04-e" 的 WSL 发行版,可以运行以下命令:

  wsl --unregister Ubuntu-20.04-e

      文章来源地址https://www.toymoban.com/news/detail-439755.html

到了这里,关于WSL1和WSL2相互转换以及安装路径迁移相关问题的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【2023最新版】Win11: WSL(Ubuntu22.04)使用docker远程容器教程(Windows的Docker Desktop下载安装、迁移到非系统盘、配置国内镜像源、设置 WSL2)

    目录 一、准备工作 1. 安装WSL(适用于 Linux 的 Windows 子系统) 2. docker简介——来源chatGPT 二、Windows安装 Docker Desktop 1. 官网链接 2. 安装过程 3. 迁移到非系统盘 4. 配置国内镜像源 国内镜像 方法1——通过Docker-Desktop配置 方法2——找打daemon.json文件进行配置 三、在适用于 Wind

    2024年02月12日
    浏览(84)
  • win10下wsl2使用记录(系统迁移到D盘、配置国内源、安装conda环境、配置pip源、安装pytorch-gpu环境、安装paddle-gpu环境)

    安装好后环境测试效果如下,支持命令nvidia-smi,不支持命令nvcc,usr/local目录下没有cuda文件夹。 系统迁移到非C盘 wsl安装的系统默认在c盘,为节省c盘空间进行迁移。 1、输出 wsl -l 查看要迁移的系统名称 2、执行导出命令: wsl --export Ubuntu-20.04 ./Ubuntu-20.04.tar ,以下命令将系统

    2024年02月20日
    浏览(59)
  • wsl2相关问题

    wsl 删除相关文件后,如删除docker 无用的容器和镜像,windows上磁盘仍然无法自动回收空间  (参考:[microsoft/ WSL ](https://github.com/microsoft/WSL/issues/4699#issuecomment-627133168))

    2024年02月09日
    浏览(45)
  • SSH连接WSL2踩坑记录与增加端口转换规则,实现外网与WSL2的连接

    1. 在WSL里的操作 1.1 重装 openssh-server 1.2 修改配置信息 打开文件后,可以用搜索修改如下的信息 把上面的都改完好,就重启ssh服务 至止,WSL里的的操作基本上已经完成了 2. ssh连接 2.1 先测试一下本机的终端是否能连接到WSL的ssh 先打开 power shell 或者 cmd 如上图,提示输入密码

    2024年02月15日
    浏览(57)
  • WSL2模式下,将Ubuntu、Docker迁移出C盘并解除Ubuntu、Docker对C盘的空间占用

    windows用户以前如果需要使用linux,一般是远程linux服务器或者使用虚拟机,更有甚者是把系统换成linux。相较于以上方式,对于体验用户或者本机需要使用容器创建服务的用户来说,这是很不方便的。但是近年来,微软也开发了wsl,在windows里集成了linux服务,启用wsl后,从微软

    2024年02月09日
    浏览(40)
  • 【WSL2】【图形界面】【CUDA驱动】WSL2 Ubuntu+gnome原生图形界面及WSL2显卡CUDA驱动的安装

      没有图形化界面的Ubuntu实在是看着不爽,虽然已经习惯用命令。为了更加方便使用WSL2子系统,还是配置了gnome原生桌面(虽然不是很轻量级,但是舒服啊!),然后因为有深度学习需求,有NVIDIA的显卡顺带配置了一下显卡驱动。   下面看看如何配置WSL2图形界面和显卡

    2024年02月10日
    浏览(61)
  • WSL2安装CUDA

    在WSL里面不用安装显卡驱动,显卡驱动必须要提前在Windows系统里面安装好,安装好后相应库文件会自动映射到WSL里面 进入网站 找到自己需要的版本,我这里是CUDA 11.7.1,点击进入详细页面 依次选择 L i n u x → x 86 _ 64 → W S L − U b u n t u → 2.0 → r u n f i l e Linuxrightarrow x86_

    2024年02月16日
    浏览(42)
  • WSL2安装(详细过程)

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 安装WSL2步骤 为Linux启用子系统 检查WSL2的要求 启用虚拟机功能 下载Liunx内核安装包 将WSL2设置为默认版本 安装选择的Linux发行版 安装成功 引用资料: https://learn.microsoft.com/en-us/windows/wsl

    2024年02月02日
    浏览(44)
  • windows10安装wsl2

    注意: 在安装wsl_update.msi前要重启一次 https://zhuanlan.zhihu.com/p/355276815

    2024年02月11日
    浏览(50)
  • wsl2安装mysql环境

    安装完mysql后通过如下命令启动mysql 会显示如下错误:  mysql: unrecognized service  实际上上面显示的错误是由于mysql没有启动成功造成的 我们要想办法成功启动mysql才可以 1.通过如下操作就可以跳过密码直接进入mysql环境  2.如果想找到mysql默认密码,通过密码进入mysql环境,可以

    2024年02月13日
    浏览(42)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包