如何在 ubuntu 13.10 中挂载 vdi 文件?

mar*_*int 12 virtualbox vdi

我正在尝试在 ubuntu 13.10 中挂载一个 vdi 文件。我试过了

sudo apt-get install virtualbox-fuse
Run Code Online (Sandbox Code Playgroud)

但它抱怨找不到包裹。

将它转换为 raw 对我来说并不是一个真正的选择,我没有足够的可用空间。

Dav*_*cum 8

使用 Virtualbox 4.3.10 运行 Ubuntu 14.04 我通过强制 dpkg 安装了该软件包。

sudo dpkg -i --force-depends virtualbox-fuse_4.1.18-dfsg-1ubuntu1_amd64.deb
Run Code Online (Sandbox Code Playgroud)

之后一切都很好。

当您挂载 vdi 文件时,它只会让您访问分区,但您需要将分区挂载到某处。例如:

mkdir ~/vdisk
mkdir ~/part1
sudo vdfuse -f Machine.vdi ~/vdisk
sudo mount ~/vdisk/Partition1 ~/part1
Run Code Online (Sandbox Code Playgroud)


lal*_*ins 6

基于@gavenkoa 的回答,但用于安装现有图像而不是创建新图像:

$ sudo apt-get install qemu-utils
$ sudo modprobe nbd max_part=16
$ sudo qemu-nbd -c /dev/nbd0 ~/path/to/my.vdi
$ sudo partprobe /dev/nbd0
$ sudo mount /dev/nbd0p1 /mount-target
Run Code Online (Sandbox Code Playgroud)

如果您有多个分区,则可以按编号访问它们 — nbd0p1 是分区 1,nbd0p2 是分区 2,依此类推。

完成调查后,您应该从网络设备卸载 VDI 映像。

$ sudo qemu-nbd -d /dev/nbd0
Run Code Online (Sandbox Code Playgroud)


Mit*_*tch 5

virtualbox-fuse 已从 apt 存储库中删除。您可以从Launchpad下载并安装它。下载后,只需按键盘上的Ctrl+ Alt+T即可打开终端。当它打开时,导航到下载文件的位置,然后运行以下命令:

sudo dpkg -i <package_name>.deb
Run Code Online (Sandbox Code Playgroud)

安装后,您可以通过键入来挂载 vdi

sudo vdfuse -f /home/user/file.vdi /home/user/mountpoint
Run Code Online (Sandbox Code Playgroud)

注意:virtualbox-fuse 依赖于 virtualbox 4.1.18,不适用于 4.2。感谢马吕斯。

  • 这是正确的答案,但是应该指出,virtualbox 4.2 没有 virtualbox-fuse。对于那些使用 4.2 的人,如果你想使用这个软件,你应该降级 (2认同)