你可以选择几种方式:
如评论中所提到的,
这个问题涵盖了如何在Ubuntu上直接挂载VirtualBox磁盘映像。虽然我没有尝试过,但我认为在WSL2上应该也可以工作(但在WSL1上不行)。
需要注意的一点是大小和性能。我假设目前
.vdi
文件位于Windows驱动器上,所以您需要使用
/mnt/c/path/to/vdi
(或
/mnt/d
等)来访问它。在WSL2下访问Windows驱动器上的文件性能会有所降低,但通常只在处理大量较小文件时才会成为问题。我不确定,但我认为对于单个大型
.vdi
文件,性能应该还可以。无论如何,这只是一个“一次性”的操作,所以我相信性能下降不会完全阻碍进展。
另外,如果您选择在挂载之前将
.vdi
文件复制到WSL中,请注意这将增加WSL虚拟磁盘的大小,并且当您删除
.vdi
文件(或将其移回WSL2之外)时,所占用的空间将不会被回收。如果您遇到这种情况,请参考我在Super User上的答案
这里,了解如何回收空间的详细信息。
另外,您也可以选择使用网络共享/从VirtualBox复制到WSL。关键在于确保网络可访问,但我认为当尝试从WSL2联系VirtualBox虚拟机时,这不会成为问题。如果连接有问题,请告诉我,我们可以解决这个部分。
假设您已经在现有的虚拟机中设置了
ssh
,您始终可以使用
sftp
或
scp
手动将文件复制到WSL。
或者,如果您在虚拟机中安装了
Samba,您可以直接从WSL2内部挂载CIFS共享。请参考Stack Overflow上的
这个答案(虽然与编程无关,但有些问题会被漏掉),以及该问题的其他答案,了解有关挂载Samba共享的详细信息。