在 Ubuntu 里直接挂载 VirtualBox/VMware 分区(vdi/vmdk) 文件

转载自:好记性不如烂笔头─Ubuntu Note, 不同的是我mount的是vmware的vmdk文件, 当然virtualbox也支持这个格式。

  • sudo apt-get install virtualbox-fuse
  • mkdir -p ~/vmdisk
  • sudo vdfuse -t VMDK -f ~/VirtualBox\ VMs/ubuntu/work.vmdk ~/vmdisk/

进入~/vmdisk/,发现只有一个EntireDisk,

根据下面说的,然后对EntireDisk进行mount:

  • mkdir -p vmdisk-1/
  • mount ~/vmdisk/EntireDisk  vmdisk-1/

至此OK,进入 vmdisk-1/即可看到所有mdisk上的东西了。


原文如下:

Via:《How to mount VirtualBox drive image (vdi) in Ubuntu 12.10/12.04》

From Ubuntu Geek

翻译得比较匆忙,有点不太像中国话。本文最后有操作实例。


想在 Ubuntu 12.04/12.10 挂载 VirtualBox 的 VDI 分区文件? 用 vdfuse 就可以了。这个用户空间文件系统(FUSE)模块通过 VirtualBox 访问库开启 VirtualBox 支持的虚拟盘镜像文件,并且把它作为一个FUSE文件系统挂载。挂载点里是一个平面文件目录,包括整盘、分区1、分区2........。一直到最后一个分区。      (注,没看懂的直接看最后的实例。)


在 12.10/12.04 中安装 vdfuse 

打开终端,输入:

sudo apt-get install virtualbox-fuse

 

vdfuse 的使用:

vdfuse 命令的语法规则:

vdfuse [options] -f image-file mountpoint

 

    -h 帮助

-r 只读

-t 类型 (VDI, VMDK, VHD, or raw; default: auto)

-f 镜像文件

-a 允许所有用户读取

-w 允许所有用户都写

-g 前台运行

-v 输出反馈

-d debug模式

注意:必须编辑一下 /etc/fuse.confand ,去掉 "user_allow_other" 前面的注释符号,否则不能正确运行。

示例:

使用如下如下语句挂载 .vdi 文件

sudo vdfuse -f /path/to/file.vdi /path/to/mountpoint

/path/to/mountpoint 应该包含如下文件 ‘EntireDisk', ‘Partition1′, 等。 如果只有一个文件,你可能需要这样挂载:

mount /path/to/mountpoint/Partition1 /path/to/someother/mountpoint

文件系统就挂载到 /path/to/someother/mountpoint 了。 

 

【译文 over】


 如果你使用低版本,比如我的工作机用的Ubuntu 10.04。那么这样安装:

 

$ sudo add-apt-repository ppa:debfx/virtualbox

$ sudo apt-get update

$ sudo apt-get install virtualbox-fuse

 

 然后: sudo gedit  /etc/fuse.confand 。去掉 user_allow_other 前面的 #。

然后:

 

$cd /media

$sudo mkdir vdisk

$sudo vdfuse -f /home/ray/VirtualBox\ VMs/HardDisks/E-Port.vdi /media/vdisk -w

 

打开文件夹,里面俩文件,如图:


然后:

 

$cd /media

$sudo mkdir Partition1

$sudo mount /media/vdisk/Partition1 /media/Partition1

 

运行结果如下


我是个懒人,要是有个图形化的工具就好了。

你可能感兴趣的:(小技巧)