如题,美好的周五美滋滋去实习,坐到工位上打开电脑结果Docker天崩
报错
deploying WSL2 distributions
ensuring main distro is deployed: deploying "docker-desktop": importing WSL distro "无法将磁盘“C:\\Program Files\\WSL\\system.vhd”附加到 WSL2: 系统找不到指定的文件。 \r\n错误代码: Wsl/Service/RegisterDistro/CreateVm/MountVhd/HCS/ERROR_FILE_NOT_FOUND\r\n" output="docker-desktop": exit code: 4294967295: running WSL command wsl.exe C:\Windows\System32\wsl.exe --import docker-desktop <HOME>\AppData\Local\Docker\wsl\main C:\Program Files\Docker\Docker\resources\wsl\wsl-bootstrap.tar --version 2: 无法将磁盘“C:\Program Files\WSL\system.vhd”附加到 WSL2: 系统找不到指定的文件。
错误代码: Wsl/Service/RegisterDistro/CreateVm/MountVhd/HCS/ERROR_FILE_NOT_FOUND
: exit status 0xffffffff
checking if isocache exists: CreateFile \\wsl$\docker-desktop-data\isocache\: The network name cannot be found.
网上教程说再找一个有system.vhd的电脑,把文件复制过来就行,但我没有多的电脑,就重装了。
但是重装之后存有镜像和容器的docker_data.vhdx还在旧目录移不过去,而我又没有提前备份tar文件(参考:https://zhuanlan.zhihu.com/p/690833211),没有办法通关tar进行备份。
而且正如评论区所说,系统坏了怎么办?或者像我这样没备份过的?只有vhdx文件啊。
直接复制粘贴会提示wsl文件夹被System占用,不要慌,先去新建文件夹,然后在Docker的设置里重新选这个文件夹作为新的目录,点击Apply,新文件夹里面出现了新的vhdx文件。
的第三步,直接把旧vhdx复制到新目录就可以了。
copy [旧文件绝对路径] [新文件绝对路径]
注意看清楚提示是否覆盖新文件夹里的vhdx,这要是换反了就神作了。
再去Docker看看,容器和镜像是不是都回来了呢?