我一直在探索在与 Windows 的双启动设置中直接从 Ubuntu 访问 WSL2 文件系统的想法。该概念涉及从 Ubuntu 安装 WSL2 虚拟硬盘 (VHD) 以与存储在 WSL2 环境中的文件进行交互。此过程可能会简化跨两个操作系统的工作流程。ChatGPT 告诉我,这是有风险的,但不会提供来源,而且我在网上找不到太多信息。它认为只读是一个好主意,但这会让它变得有点无用。
它是这样推荐的:
sudo apt install libguestfs-tools
sudo guestmount -a /path/to/your/WSL2-distro.vhdx -m /dev/sda --ro /mnt/wsl2
--ro .. read-only
有人试过吗?欢迎分享成功案例或警示故事。寻求安全执行此操作的建议或见解。
谢谢!
答案1
使用原始磁盘映像(.img
和.iso
文件),您可以以简单的方式安装它。对于其他格式,例如此处提到的 VHDX 格式,事情会更加复杂。
您可以使用 将各种 VM 磁盘格式的内容公开为 Unix 块设备qemu-nbd
。从这里您可以继续执行常规磁盘管理程序。NBD 设备的分区编号为/dev/nbdXpY
,类似于 NVME 分区的命名方式。
# modprobe nbd
# qemu-nbd -c /dev/nbd0 -f vhdx /path/to/your/WSL2-distro.vhdx
# mount /dev/nbd0p1 /mnt
qemu-nbd
是该包的一部分qemu-utils
:
# apt-get install qemu-utils
ChatGPT 的“风险”可能来自于它对来宾挂载的手册页,其中有一个关于虚拟机主动使用的卷安装的严重警告,这是竞争条件的主要来源。由于在任何给定时间只能在裸机上运行一个操作系统,因此不存在竞争条件风险,您可以安全地以读写方式安装它。我不建议使用它;使用 FUSE 会使它比内核文件系统驱动程序慢。