挂载vhd是win7 一个很特殊的功能,xp不能支持,一些服务器版的系统 像2008、2008R2这些可能也是支持的,只是没有测试过。
提前的准备:
Win7 wim 镜像文件
Imagex.exe
Bcdedit.exe
说明:
wim镜像一般可以再ISO镜像文件的source目录下,名为:install.wim
bcdedit win7系统自带
imagex 可以针对系统版本自行下载
步骤:
1、首先我们要在win7的磁盘管理界面中,创建vhd文件,选择好vhd文件的保存路径后,磁盘管理界面中会多出一个磁盘,这是一个虚拟磁盘,其中也可以存放文件,但存放的文件实际上是被存放到了那个空白的vhd文件中了。
说明:一定要首先选中磁盘,创建vhd项才能使用。
选择vhd文件的存储位置和大小,此文件就是存放系统文件的地方。
挂在后会出现一块未初始化的磁盘,需要进行初始化一下
2、使用imagex工具来将wim文件释放到那个虚拟磁盘中,释放前一定要初始化虚拟磁盘,释放指令如下:
imagex /apply h:\win7.wim 5 g:\ #g盘是vhd文件挂在出来的那块磁盘
3、用bcdedit给这个模拟出来的新系统添加启动项:
Bcdedit /copy {current} /d “win7_of_vhd”
当我们安装玩win7系统后会有一个表示此系统的唯一标识符,可是使用bcdedit /enum 或者是bcdedit 来查看,我安装的是xp和win7的双os 因此win7系统的表示符是{current},也有可能是一连串的字母和数字组合,看情况而定。“win7_of_vhd”是对新建启动项的描述,也就是在系统启动时我们看到的文字表述。当我们运行玩此命令后,会产生一个此启动项的唯一标示,我们将其复制,假设为{asdf23aasdf89asdf89a}
Bcdedit /set {asdf23aasdf89asdf89a} device vhd=[h:]\win7.vhd
Bcdedit /set {asdf23aasdf89asdf89a} osdevice vhd=[h:]\win7.vhd
H盘是vhd的存放位置,此二命令是给启动项添加路径
Bcdedit /set {asdf23aasdf89asdf89a} detecthal on
Detecthal是挂载vhd时才使用的参数,将其打开。
以上命令我们只能在win7中实现,虽然bcdedit工具也可以在xp中运行,但有些参数是不能使用的 例如 vhd路径的制定参数 vhd: 和 detecthal 等因此 无论是创建虚拟擦盘还是创建启动项只能在win7中运行了…
这样我们重启后就可以进入vhd系统了