friendlessstar 发表于 2015-5-10 14:09:23

体验windows 7 vhd native boot

  最近把系统换成win 7 x64,突然想起n久之前曾经看过的,可以直接用vhd启动系统,特地找出文章来,照着体验了一把。
  主要参考了以下文章:
   
[*]http://blogs.technet.com/b/fyu/archive/tags/vhd+boot/   
[*]http://veware.wordpress.com/2010/09/08/%E6%B5%85%E6%9E%90win7%E7%9A%84%E8%99%9A%E6%8B%9F%E7%A1%AC%E7%9B%98%E5%90%AF%E5%8A%A8native-vhd-boot/ (有墙)   
[*]http://goxia.maytide.net 里面关于native boot的
  注:native boot的系统(装在vhd中的系统)只支持windows 7 professional以上版本、server 2008 r2,主系统windows 2000以上应该都可以(只测试过xp、2003pe,7)
  

安装系统到vhd
  这里只安装windows 7,主要分成以下步骤:
   
[*]在磁盘管理里面创建虚拟磁盘(即vhd文件)   
[*]在管理界面选中虚拟磁盘并右键选择初始化它   
[*]在虚拟磁盘的未分配处右键创建简单卷,格式化成ntfs,分配盘符如V:   
[*]把windows 7的镜像或光盘中的souces目录下的install.wim提取出来   
[*]下载GImageX(http://www.autoitscript.com/gimagex/),打开它并切换到Apply标签,souce点Browse选择提取出来的install.wim,destinaton点Browse选择刚刚挂载的虚拟磁盘V:\,Image点Select选择windows 7的版本   
[*]点击Apply注入到vhd,直到完成   
[*]在磁盘管理里卸载分离虚拟磁盘
  到这里系统就安装完成了,假如不需要再定制一些软件的话就可以直接使用了。
  
加入启动菜单
   
[*]下载EasyBCD(http://neosmart.net/dl.php?id=1),当前版本为2.0.2   
[*]切换到Add New Entry标签,在右侧下方切换到Virtual Disk,输入Name即开机启动时显示的名称如Win7VHD,Path选择刚才创建的vhd文件   
[*]点Add Entry加入到启动菜单   
[*]切换到Advanced Settings标签,在出现的界面中Select an OS下拉框中选择刚才添加的Win7VHD,然后在下方Basic标签中设置好Locale即启动的语言   
[*]Save Settings完成
  完成以上步骤以后就可以直接重启。
  
  在重启后,选择刚才创建的启动项Win7VHD,会进入系统的首次安装配置,中间会重启2次,等这些完成后进入vhd系统,可以直接使用了。
  
定制系统
  如果要直接使用这个vhd系统,就不需要以下操作。
  对系统进行一些软件的安装等操作(不要安装驱动),定制完成之后,打开命令提示符:
   
[*]切换到sysprep目录:cd/d \windows\system32\sysprep   
[*]输入运行sysprep.exe   
[*]在出现的对话框中选中OOBE,勾上Generalize以清除硬件信息   
[*]完成
  完成以上操作之后,重启
  
在2003PE做为主系统的环境中native boot windows 7 vhd
  我另外一台机器只装了一个2003PE做为主系统,把刚才定制的vhd系统复制到2003PE这台机器上,由于不能在PE上运行EasyBCD,试过用bcdedit编辑没成功,所以修改启动项还是要花费一番手脚的。
   
[*]把windows 7 镜像或光盘中的bootmgr,boot目录复制到C盘根目录   
[*]在C盘创建sources文件夹,并把windows 7 镜像或光盘sources目录中的boot.wim复制到c:\sources   
[*]打开命令提示符,输入c:\boot\bootsect /nt60 c:   
[*]重启,选择windows 7安装,出现安装界面,等到出现语言选择的时候,按shift+f10打开命令提示符   
[*]这一步操作可以省略,主要用于删除windows7安装的启动项         rd /s /q boot            #删除boot目录      
rd /s /q source         #删除source目录      
del bootmgr            #删除文件      
bootsect /nt52 c:   #还原原系统的启动项
   
   
[*]输入运行diskpart   
[*]选择vhd文件:select vdisk file="d:\win7.vhd",这里文件位置为d:\win7.vhd   
[*]附加vhd文件为虚拟磁盘:attach vdisk   
[*]选中主分区:select partition 1   
[*]激活分区:active   
[*]分配盘符:assign letter=V   
[*]输入exit退出diskpart   
[*]输入cd/d x:\windows\system32   
[*]输入bcdboot V:\windows /s C: 用于把刚刚附加的虚拟磁盘V:加入启动项   
[*]输入bootsect /nt60 SYS   
[*]结束
  执行完以上步骤之后,就成功把vhd系统加入到pe为主系统的启动项中了。
  如果主系统为xp的话,可以直接使用EasyBCD,或者运行以下命令用于还原xp启动项:
     bcdedit /store bcd /create {ntldr} /d "Windows XP"
  bcdedit /store bcd /set {ntldr} device partition=C:
  bcdedit /store bcd /set {ntldr} path \NTLDR
  bcdedit /store bcd /bootsequence {default} {ntldr}
  bcdedit /store bcd /displayorder {default} {ntldr}
  bcdedit /store bcd /timeout 30
  
结束
  在进入虚拟系统之后,主系统的盘符有台机器是删掉了,有一台是没有删掉的,删掉貌似为了隐藏主系统。而且盘符跟主系统中变的不一样,所以又得手动把盘符调成跟主系统一样,要不然某些软件用起来很麻烦~~
  经试验证明,使用多核且支持虚拟化的CPU比单核且不支持虚拟化的CPU要快非常多。
  另外,vhd系统一开机网络初始化那个慢啊,而且因为用的是虚拟磁盘,所以不能使用windows 7评分……
  over
页: [1]
查看完整版本: 体验windows 7 vhd native boot