当前位置: 首页 > 知识库问答 >
问题:

哪个WSL发行版正在使用AppData\Local\Docker\WSL\data\ext4。导出并注销docker桌面数据后的vhdx

姜杜吟
2023-03-14

由于WSL空间消耗的增加,我被迫将我的WSL发行版移动到另一个磁盘
Ubuntu
docker桌面
docker桌面数据

我使用了这些命令
wsl-关闭
wsl-导出(在所有三个发行版上)
wsl-导入(已在另一个磁盘上)

现在我的环境运行正常,但AppData\local\Docker\wsl\data中的ext4.vhdx仍然存在,我无法删除它,因为它仍在使用。

该系统仍在使用它,这说明不了什么。

如果我运行WSL--shutdown磁盘E:上的所有虚拟磁盘都将丢失其句柄,而磁盘C:上的虚拟磁盘仍在使用。

你知道如何找出WSL的哪一部分,或者它是否是WSL正在使用的吗?由于关闭WSL不会删除该句柄,它可能被其他东西使用。它不是docker桌面,一个人使用不同的磁盘。

谢谢你的建议。

共有3个答案

钱浩荡
2023-03-14

您可以从接口中清理数据。故障排除-

黄隐水
2023-03-14

从WSL1升级到WSL2使它有点混乱,但将docker desktop重置为其默认设置,然后从WSL清除数据(使用docker desktop疑难解答)为我清除了它。

公西俊才
2023-03-14

Docker Desktop for Windows使用WSL2,将所有映像和容器文件存储在单独的虚拟卷(vhdx)中。此虚拟硬盘文件在需要更多空间(达到一定限制)时可以自动增长。不幸的是,如果您回收一些空间,即通过删除未使用的映像,vhdx不会自动收缩。幸运的是,您可以通过在PowerShell中调用此命令(以管理员身份)手动减小其大小:

Optimize-VHD -Path $Env:LOCALAPPDATA\Docker\wsl\data\ext4.vhdx -Mode Full

如果以上命令失败

The system failed to compact 'C:\Users\Maxx\AppData\Local\Docker\wsl\data\ext4.vhdx':
The process cannot access the file because it is being used by another process. (0x80070020).

退出Docker Desktop表单或停止使用该文件的服务和任务:

net stop com.docker.service
taskkill /IM "docker.exe" /F
taskkill /IM "Docker Desktop.exe" /F
wsl --shutdown

我回收了40Gb中的15Gb。

解决方案的起源。

 类似资料:
  • 使用Hyper-V在Windows上运行docker desktop时,我有一个名为DockerDesktopVM的虚拟机,其中运行的Linux虚拟机中有它的容器。 然而,当我用WSL引擎运行docker desktop时,我看到它创建了2个WSL发行版。 docker桌面 我可以像其他发行版一样进入docker桌面发行版。 但是,试图对docker桌面数据做同样的操作只会让我大吃一惊。 所以我的

  • 试图围绕Docker、WSL2、发行版、图像和容器进行思考。WSL发行版和Docker映像有什么区别?查看以下两个快照,看起来这些是不同的东西: WSL中已安装的发行版列表: Docker Desktop中的图像列表: Alpine和Ubuntu列在附加发行版列表中,但没有出现在图像列表中。 我应该如何将一个已安装的WSL发行版(Alpine或Ubuntu)作为容器运行并到达它的终端?最后,我可以

  • 有没有人有同样的困难,但解决了这个问题? 提前谢谢!

  • 我运行Windows子系统Linux(WSL)与Ubuntu作为Windows 10下的客户端操作系统。现在,我在Windows主机上安装了Docker Desktop,并在Docker设置中启用了WSL集成。到目前为止工作正常,我可以从我的WSL Ubuntu客户端访问运行在视窗主机上的Docker守护程序。 现在我想知道所有Docker卷和其他数据在这个设置中存储在哪里。通常这些都在下,但在使

  • 我有: VSCode v1.46.0 远程wsl扩展v0.44.3 Windows 10操作系统内部版本号19041.329 Docker 桌面版 v2.3.0.3 我试图在docker桌面wsl中打开VSCode,每次都会出现以下错误。我已经转到列出的目录,看到了节点文件,我不知道该怎么办?

  • 我在 Ubuntu 上运行 WSL 2,在计算机上启动并运行 Docker 时遇到了一些问题。我已经在后台安装并运行了 Docker 桌面,并且我还与 Ubuntu 启用了 WSL 集成。 当我尝试运行简单的docker命令时,例如<code>docker--version 在此 WSL 2 发行版中找不到命令“docker”。我们建议在 Docker 桌面设置中激活 WSL 集成。 有关将Doc