在 VirtualBox 上与 Linux VM 共享硬盘分区

Den*_*679 4 linux virtual-machine windows external-hdd

我就画个图大家就明白了。

我的主机操作系统是 Windows 10。我在我的 Windows 操作系统上安装了 VirtualBox,在 VirtualBox 中我有一个 Kali 发行版正在运行。此 VM 及其文件位于我的外部硬盘驱动器上。

我的外部硬盘上有一个分区,我想通过我的 Kali Linux VM 访问它。

将外部 HDD 作为 USB 设备添加到虚拟机是不可能的,因为它会与我的主机 Windows 操作系统完全断开连接,当然 VirtualBox 将无法再访问这台机器。

共享文件夹是不可能的,因为我实际上无法从我的 Windows 主机操作系统中找到这个分区。

当我在 Kali Linux 中时,是否有可能访问此分区的解决方法,这不涉及将 VM 文件夹复制到另一个 HDD?

外置硬盘分区布局是这样的:

--- D:/   (Here resides a backup of my Windows host OS)
--- E:/   (Partition where I keep the VirtualBox hard?disk file of Kali Linux)
---- HIDDEN ---- (This is the hidden encrypted partition formatted EXT3)
--- F:/   (Partition with games)
Run Code Online (Sandbox Code Playgroud)

jll*_*gre 5

假设您对设备有足够的访问权限,您应该能够通过创建一个vmdk将原始分区映射到虚拟设备的特殊文件从 VM 访问隐藏分区。

您需要首先使用以下内容识别所需的分区:

C:\Program Files\Oracle\VirtualBox> VBoxManage internalcommands listpartitions -rawdisk \\.\physicaldriveX
Run Code Online (Sandbox Code Playgroud)

替换X为磁盘标识符(0 是第一个内部标识符)。

这将显示一个包含磁盘所有分区的表,第一列显示分区号。

然后,假设您要访问#3磁盘上的分区#2,您可以vmdk使用以下命令创建文件:

C:\Program Files\Oracle\VirtualBox> VBoxManage internalcommands createrawvmdk -filename "C:\Users\Dennis\VirtualBox VMs\kali\part3.vmdk" -rawdisk \\.\PhysicalDrive2 -partitions 3
Run Code Online (Sandbox Code Playgroud)

part3.vmdk然后,该文件可能会作为新设备添加到您的 VM。

与处理原始磁盘访问的任何命令一样,我强烈建议在尝试之前对磁盘上存在的任何有价值的东西进行适当的备份,因为任何错误都可能破坏您的数据/文件系统。特别是,多个操作系统同时挂载相同的文件系统会很快破坏它。

参考: