wsl2迁移镜像虚拟磁盘

2023-05-16

wsl2备份/迁移(ubuntu…)虚拟磁盘镜像

Author: once day Date: 2022年11月13日

1.引言

默认的wsl2会把Linux子系统虚拟磁盘文件放在C盘下 ,如果在wsl2里面安装了太多的程序,可能空间占用会很大。

有一种简单的方法是使用LxRunOffline工具迁移。

但是这里不介绍,直接用wsl命令来实现。

2.过程

2.1 查看全部子系统

需要以管理员权限运行powershell

PS C:\Users\cg> wsl --list --all --v
* Ubuntu-20.04           Running         2
  docker-desktop         Stopped         2
  docker-desktop-data    Stopped         2

如果子系统正在运行,需要关闭它。

2.2 关闭子系统

如下两个命令皆可:

PS C:\Users\cg> wsl --terminate Ubuntu-20.04
PS C:\Users\cg> wsl --shutdown

然后再确认一遍是否关闭准备迁移的子系统

PS C:\Users\cg> wsl --list --all --v
  NAME                   STATE           VERSION
* docker-desktop         Stopped         2
  Ubuntu-20.04           Stopped         2
  docker-desktop-data    Stopped         2
2.3 导出(备份)子系统

这里准备备份的子系统是ubuntu-20.04,使用下面命令即可。

备份的目的路径是E:\Ubuntu-20.04.tar,路径和名字取自己希望值即可。

PS C:\Users\cg> wsl --export Ubuntu-20.04 E:\Ubuntu-20.04.tar

这个过程需要等待一段时间,如果原有的子系统内容很多,那么可能要等待10+分钟

2.4 注销原有的ubuntu-20.04子系统
PS C:\Users\cg> wsl --unregister Ubuntu-20.04
PS C:\Users\cg> wsl --list --all --v
  NAME                   STATE           VERSION
  docker-desktop         Stopped         2
  docker-desktop-data    Stopped         2

注销完之后,再看列表中的子系统,已经没有ubuntu-20.04了。

2.5 导入备份的ubuntu-20.04子系统

上面的导出过程本质上也是给ubuntu-20.04做了一个备份,里面存储了全部内容。

因此这里实际上在导入一个备份。

首先确定目的文件夹,如果目录不存在,需要手动创建。这里目的目录为E:\ubuntu\。然后该子系统的虚拟磁盘文件就会放在此目录下。

PS C:\Users\cg> wsl --import Ubuntu-20.04 E:\ubuntu\ E:\Ubuntu-20.04.tar --version 2
PS C:\Users\cg> wsl --list --all --v
  NAME                   STATE           VERSION
* docker-desktop         Stopped         2
  Ubuntu-20.04           Stopped         2
  docker-desktop-data    Stopped         2

导入过程比较快,然后便可以看到刚刚导入的子系统了。

如果版本号不对,可以使用下面命令重设版本号。

PS C:\Users\cg> wsl --set-version Ubuntu-20.04 2
正在进行转换,这可能需要几分钟时间...
有关与 WSL 2 的主要区别的信息,请访问 https://aka.ms/wsl2
该分发已是请求的版本。
2.6 设置默认用户名

如果不设置默认用户名,那么登入wsl2的ubuntu-22.04时,默认以root用户登入。

一般之间都是默认都不是由root用户登入,所以可以使用下面命令设置默认登入用户。

ubuntu.exe config --default-user <username>

对于ubuntu-22.04,上面命令改写为:

ubuntu2004.exe config --default-user "onceday"

其中“onceday"也要用你自己的username代替

2.7 docker connect failed问题

迁移子系统后,要重启docker desktop应用,此时可能会出现下面问题。

onceday@ubuntu:~$ docker ps
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?

docker确实启动了,但是此时无法连接上docker-server

这个时候需要在docker-desktop->setting->Resources->WSL INTEGRATION-里面Enable integration with additional distros:中使能Ubuntu-20.04.

在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

wsl2迁移镜像虚拟磁盘 的相关文章

  • WSL2+VSCODE+OPENCV

    在网上能找到WSL和VSCODE的配置方法 xff0c 能找到VSCODE和opencv的使用方法 xff0c 能找到WSL和opencv的配置方法 xff0c 但很少有wsl 43 vscode 43 opencv xff0c 但描述不清
  • WSL2 + CentOS7 + GUI(xfce4) 运行图形化软件

    先看效果图 xff0c 可以和windows窗口混合使用 步骤 先安装wsl 升级到wsl2 安装LxRunOffline 上面有教程很详细这里就不重复说了 镜像配置 CentOS7镜像下载地址 xff1a https raw github
  • 【WSL2】迁移Windows虚拟子系统(Ubuntu)

    目录 WSL2 迁移Windows虚拟子系统 xff08 Ubuntu xff09 安装Ubuntu子系统导出虚拟机迁移虚拟机问题记录小结参考资料 WSL2 迁移Windows虚拟子系统 xff08 Ubuntu xff09 看了 从Win
  • 利用VS Code docker 搭建容器开发环境(含WSL2)

    目录 基本软件安装VScode 插件安装连接WSL2及容器linux代码编译查看源码 xff0c 调试linux kernel总结补充学习busyboxvmware真香 这篇文章的灵感来源 感谢UP xff0c 我才有了WSL2 vscod
  • Win10上Docker无法正常启动 出现install WSL2 kernel update的情况

    文章目录 一 情况描述 二 解决方法 2 1检查自己的Win10版本 2 2下载插件 三 最终效果 写在最后 一 情况描述 当装完docker之后 xff0c 系统提示Windows重新启动 xff0c 作者就重启系统准备使用docker
  • windows安装wsl2

    总的来说是按照这三个链接来的 xff0c 也写了一个大体流程 wsl对win版本有要求 xff0c 可以 win 43 r winver查看 原始参考链接 xff1a 1 xff09 https zhuanlan zhihu com p 4
  • WSL2 Ubuntu安装Qt(包括QtCreator)

    最近因为需要在Linux下使用qtcreator做一些界面开发的预研和学习 xff0c 主要是因为要交叉编译Qt 但又不想再使用虚拟机了 xff0c 真的太消耗内存了 于是就想着直接使用Windows10 下面的WSL2 怎么安装WSL2这
  • win10 WSL2 AirSim 仿真环境搭建

    win10 WSL2 AirSim 仿真环境搭建 wsl2AirSim安装教程基本环境安装WSL2安装PX4 编译环境配置好默认的工具链下载编译PX4 安装AirSim环境安装虚幻引擎下载AirSimLandscapeMountains下载
  • Linux开发板ping通WSL2并且能够通过无线网连接外网(虚拟机同样适用)

    Linux开发板ping通WSL2并且能够通过无线网连接外网 虚拟机同样适用 前言 安装Hyper V 创建虚拟网卡 将WSL的网络桥接 共享WIFI 修改共享网段的IP VMWare虚拟机 参考 前言 由于笔者入手了一块linux开发板
  • 安装 WSL2 后,Android Studio 模拟器无法在 Windows 11 上运行

    Setup Windows 11 家庭版 21H2 22000 132 AMD 锐龙 5900X WSL2 Android studio 最新版本 也尝试了最新的测试版 问题 一旦我安装 WSL2 模拟器就会停止工作 它给出以下错误消息 C
  • 无法让 PhpStorm 连接到在 WSL 2 中运行的 Xdebug

    我在使用以下设置让 PhpStorm 2020 2 与 xdebug 一起使用时遇到问题 WSL2 运行 Ubuntu 20 安装了 PHP 和 php xdebug 每当我在启用调试的情况下运行测试时 它都会显示 未建立连接 这是 Xde
  • 通过本地网络连接到 WSL2 服务器 [关闭]

    Closed 这个问题是与编程或软件开发无关 目前不接受答案 我正在我的 Windows 10 机器上使用 WSL2 Ubuntu 开发一个 Rails 应用程序 这太棒了 问题是我无法从同一网络中的另一台计算机连接到我的服务器 为了进一步
  • VS 代码:NoPermissions(文件系统错误):错误:EACCES:权限被拒绝

    我正在尝试将名为 app js 的文件保存在名为 js 的文件夹中 vs Code 弹出这个 无法保存 app js 无法写入文件 vscode remote wsl ubuntu 18 04 js app js NoPermissions
  • 在适用于 Linux 的 Windows 子系统上运行 JavaFX 15 应用程序时出现内部错误

    当我尝试在适用于 Linux WSL2 Ubuntu 20 04 的 Windows 子系统上运行 JavaFX 15 应用程序时 我遇到了困难 需要有关后续尝试步骤的建议 到目前为止 我已经能够在 WSL 内运行我通常在 Windows
  • WSL2 Docker Linux 卷权限问题

    我正在使用 Docker 构建 Jekyll 网站 我正在使用 Windows 10 和 WSL2 以及 Debian 如果我在 Windows 环境中从 Powershell 运行以下命令 docker run rm label jeky
  • VSCode,如何获取setup.bash等环境变量文件?

    所以我正在使用 WSL ROS 和 VSCode 在 Ubuntu 上工作时 我只需在运行 VsCode 之前获取 opt ros ros distro setup bash 来获取环境变量 使用 WSL 时 我需要一种从已打开的 VSCo
  • Ubuntu 错误“在此 WSL 2 发行版中找不到命令‘docker’。”

    我在 Ubuntu 上运行 WSL 2 在计算机上启动和运行 docker 时遇到一些问题 我安装了 Docker Desktop 并在后台运行 并且还启用了与 Ubuntu 的 WSL 集成 当我尝试运行简单的 docker 命令时 例如
  • WSL 发行版对 VSCode 或 IntelliJ IDE 不可见

    几周来我遇到了这个非常奇怪的问题并且无法解决 我通常在 WSL2 上编码 它曾经在这台机器和用户上运行良好 但现在 每当我尝试在 Visual Studio Code 中打开远程资源管理器或尝试在 IntelliJ IDE 中打开 现有文件
  • Docker镜像删除后占用空间

    我提交了一个现有的 Docker 容器来创建新镜像 但提交的镜像太大了 原始镜像为 3 GB 并且在容器中安装了一些其他内容 提交的镜像为 8 GB 我的空间不足 所以我决定删除提交的映像 但即使删除提交的映像后 我的磁盘空间也没有增加 然
  • 我无法在 WSL2 ON(ubuntu 终端)的 Windows 10 上使用 npm 命令

    我试图让 npm 命令起作用 但它不想这样做 正如我在标题中所说 我使用的是 Windows WSL2 我很久以前就已经用 Git Bash 安装了 Nodejs 但现在我需要它在我的 ubuntu 终端上工作 我该如何解决这个问题 我的U

随机推荐

  • linux 命令行报bash command not found的解决办法

    命令行报bash command not found的解决办法 xff08 几乎所有命令 xff09 命令行输入命令执行后报 bash command not found 这是由于 系统PATH设置问题 xff0c PATH没有设置对 xf
  • cprintf函数调用到屏幕(cga)输出流程分析

    本文所有代码均为JOS内核源代码 xff0c 可以从MIT 6 828课程网站下载 概述 xff1a 所有向屏幕输出的过程 xff0c 一定是经过参数处理 xff0c 最后组织成一个字符数组 BUFFER xff0c 这个数组 xff08
  • laravel API 接受PUT请求Content-Type:application/x-www-form-urlencoded

    微信小程序 xff1a wx request url https m sybmfw cn api ys user 43 openid method put data that data formdata header content typ
  • 咕咕东的奇妙序列

    题意 xff1a 咕咕东 正在上可怕的复变函数 xff0c 但对于稳拿A Plus的 咕咕东 来说 xff0c 她早已不再听课 xff0c 此时她在睡梦中 突然想到了一个奇怪的无限序列 xff1a 112123123412345 这个序列由
  • w15作业--ZJM 与霍格沃兹(必做)

    题意 xff1a ZJM 为了准备霍格沃兹的期末考试 xff0c 决心背魔咒词典 xff0c 一举拿下咒语翻译题 题库格式 xff1a 魔咒 对应功能 背完题库后 xff0c ZJM 开始刷题 xff0c 现共有 N 道题 xff0c 每道
  • 实现WSL2固定IP效果+开机启动

    重启wsl2的发行版后 xff0c 系统分配给发行版的ip每次都不同 想要远程ssh过来或者运行其他需要外部访问的任务时 xff0c windows不知道要把端口转发给哪个ip 解决思路 启动wsl2后 xff0c 运行一个脚本 xff0c
  • Windows连接不上linux虚拟机的问题排查

    Windows连接不上虚拟机的问题排查 今天使用windows连接VMware上安装的linux虚拟机 xff0c 一直连接不上 xff0c 最后花了两个小时才解决了问题 xff0c 这里记录一下 xff0c 供日后参考 说明一下 xff0
  • UE4编写H5遇到的问题

    UE4自从4 16之后 xff0c 就采用emscripten技术进行h5编译 xff0c 游戏H5运行的过程中 xff0c 遇到这么一个问题 xff0c 记录一下 xff1a 数据服务器是一个独立的网站 xff0c 地址为 xff1a h
  • UE4开发HTML5遇到的问题

    最近要做一个基于UE4的HTML5仿真项目 xff0c 没真正做过HTML5的小白 xff0c 表示很无所畏惧 首先 xff0c 找一篇UE4下H5的教程 xff0c 简单学习一遍 xff1a 安装 xff0c 环境 xff0c 项目配置
  • redis windows版本编译

    1 redis for windows 下载地址 xff1a https github com tporadowski redis 2 下载后解压 xff0c 用vs2019打开 redis version msvs RedisServer
  • Ubuntu子系统VcXsrv黑屏compiz (core)

    在windows10上安装图形化ubuntu桌面的步骤 xff1a 1 安装 windows 子系统 ubuntu 1 xff09 在启用或关闭Linux 的 Windows子系统 2 xff09 在Microsoft Store中搜索ub
  • 虚幻引擎5.1版本新增功能

    虚幻引擎5 1版本新增功能 虚幻引擎5 1现已发布 xff01 2022年11月15日 其他应用 功能 广播与实况活动 建筑 影视 模拟 汽车与运输 游戏 虚幻引擎5 1 虚拟制片 我们很高兴地宣布 xff0c 虚幻引擎5 1现已推出 在这
  • vc与dev-c++混合编程 动态链接库c函数调用

    上回书说道 xff0c 如何在vc中使用dev c 43 43 中的类 xff0c 这次说一个更简单的问题 xff0c 如何实现vc调用dev c 43 43 的函数 1 打开dev c 43 43 新建工程 xff0c 选择dll xff
  • 【译】你可能不知道的iOS性能优化建议(来自前Apple工程师)

    作者丨凉介 来源丨掘金 链接 xff1a https juejin im post 5e4cfa4f6fb9a07cce74dba7 今天在推特上看到一篇关于性能优化不错的文章 xff0c 是前苹果开发人员写的 xff0c 翻译了一下与大家
  • c++20 concept

    Visual Studio 2019今天发布了16 3版本更新 xff0c 加入了C 43 43 20的concept支持 xff0c 在此记录一下concept的用法 xff1a concept示例 1 限制只能打印int类型 span
  • 解决STM32程序一烧录进去断电或复位即丢失问题

    分享一下个人错误经验 xff0c 之前焊接了一块STM32F103RCT6芯片 xff0c 配了ISP自动下载电路 xff0c 焊接好后上电烧写发现可以烧录进去 xff0c 但是怎么一断电或者一复位怎么程序就没了 xff0c 连一个简单的L
  • 阿里云ECS Windows服务器MySQL无法启动排查的解决方法

    问题现象 Windows主机 xff0c 部署MySQL程序后 xff0c 重启开机无法自动启动 xff0c 同版本在其他服务器运行正常 问题原因 排查Windows系统日志 xff0c 发现有如下报警记录 xff1a Microsoft
  • C规范编辑笔记(三)

    往期文章 xff1a C规范编辑笔记 一 C规范编辑笔记 二 正文 xff1a 继上篇我们的C规范编辑笔记 二 后 xff0c 我们今天开始分享第三篇笔记 xff0c 话不多说 xff0c 我们开始 1 一个 tab 键盘等于四个空格键 我
  • linux免费证书申请教程

    linux免费证书申请教程 直接去阿里云 菜单有个证书服务 进去有个购买证书菜单 选择免费的 然后会提示写个人资料 然后系统生成csr 然后提交审核 查看原文 xff1a http newmiracle cn p 61 963
  • wsl2迁移镜像虚拟磁盘

    wsl2备份 迁移 ubuntu 虚拟磁盘镜像 Author once day Date 2022年11月13日 1 引言 默认的wsl2会把Linux子系统虚拟磁盘文件放在C盘下 xff0c 如果在wsl2里面安装了太多的程序 xff0c