u盘windows 7操作系统.doc_第1页
u盘windows 7操作系统.doc_第2页
u盘windows 7操作系统.doc_第3页
u盘windows 7操作系统.doc_第4页
u盘windows 7操作系统.doc_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

WIN7USB攻略:把Windows 7旗舰版装到移动硬盘/U盘(VHD版)2009-11-28 18:51真正的移动版WIN7,在移动硬盘/U盘上运行的WIN7为什么要用VHD而不是直接用真实硬盘呢?因为方便,用VHD的话,只要硬盘空间足够,就可以放进10个20个系统而不必考虑分区的问题,每个系统只不过是一个VHD文件罢了。卸载也非常方便,直接把相应的VHD删除,然后再删掉相应的bcd引导项就完事。制作另一个新的移动系统更是简单,把VHD复制到另一个移动硬盘,然后重建引导,就一切OK。我在前一个贴里讲了如何把WIN7安装到VHD里,然后用这个VHD启动计算机并且运行WIN7。现在我会继续这个攻略,把这个装了WIN7的VHD移植到移动硬盘,然后用移动硬盘启动计算机,并且运行VHD中的WIN7。(U盘也可以!只要它够大!)制作好的移动版WIN7兼容性非常好,比我以前做的移动XP要更好!我用这个移动版WIN7启动了两台笔记本,联想Y450和Dell的D630,完全没有任何问题。唯一的麻烦是第一次启动新计算机时,要重新安装驱动。移动版win7的性能比本地的要略低,一是USB2.0的速度限制,二是VHD的读写驱动会稍微拖慢硬盘读写速度,但是不会低太多,这个贴的最后,我会发本地win7和移动win7的性能对比图。下面攻略开始:工具准备 - 联想Y450本本,已安装Windows 7旗舰版(或者WINPE3.0版),用来给移动WIN7做引导 - Win7.vhd,15G, 位于Y450 D:盘 - 移动硬盘,80G分为两个分区,分区一是移动XP的系统分区,分区二是数据盘。步骤 1. 启动Y450进入Win7,打开win7磁盘管理工具,附加vhd文件,把D:/win7.vhd附加到系统。成功后可以在计算机里看到一个新分区,我给它分配的盘符是V:,所以V:盘里就是已经预先安装好的完整的win7系统文件。 2. 因为USB驱动的关系,这个VHD上的win7从移动硬盘上启动时会蓝屏报错:007B!所以下面要修改VHD win7的USB驱动。 2.1 进入 V:windowsinf 文件夹,找到如下文件,依次双击打开,找到对应的部分,修改内容如下(黄色背景红色字符为增加的内容),然后保存覆盖原文件:usb.inf;SignatureAttributes;usbccgp.sys=SignatureAttributes.DRM;usbhub.sys=SignatureAttributes.DRMStandardHub.AddServiceDisplayName = %StandardHub.SvcDesc%ServiceType = 1 ; SERVICE_KERNEL_DRIVER;StartType = 3 ; SERVICE_DEMAND_STARTStartType = 0 ; SERVICE_BOOT_STARTErrorControl = 1 ; SERVICE_ERROR_NORMALServiceBinary = %12%usbhub.sys;LoadOrderGroup = BaseLoadOrderGroup = System Bus ExtenderCommonClassParent.AddServiceDisplayName = %GenericParent.SvcDesc%ServiceType = 1 ; SERVICE_KERNEL_DRIVER;StartType = 3 ; SERVICE_DEMAND_STARTStartType = 0 ; SERVICE_DEMAND_STARTErrorControl = 1 ; SERVICE_ERROR_NORMALServiceBinary = %12%usbccgp.sys;LoadOrderGroup = BaseLoadOrderGroup = Boot Bus Extenderusbport.infControlFlags;BasicDriverOk = *;ExcludeFromSelect = *;SignatureAttributes;usbehci.sys=SignatureAttributes.DRM;usbhub.sys=SignatureAttributes.DRM;usbohci.sys=SignatureAttributes.DRM;usbport.sys=SignatureAttributes.DRM;usbuhci.sys=SignatureAttributes.DRM;SignatureAttributes.DRM;DRMLevel=1300EHCI.AddReg.NTHKR,EnumPropPages32,usbui.dll,USBControllerPropPageProviderHKR,Controller,1,01;HKLM,SystemCurrentControlSetServicesusbehci,BootFlags,0x00010003,4EHCI.AddServiceDisplayName = %EHCIMP.SvcDesc%ServiceType = 1 ; SERVICE_KERNEL_DRIVER;StartType = 3 ; SERVICE_DEMAND_STARTStartType = 0 ; SERVICE_BOOT_STARTErrorControl = 1 ; SERVICE_ERROR_NORMALServiceBinary = %12%usbehci.sys;LoadOrderGroup = BaseLoadOrderGroup = Boot Bus ExtenderOHCI.AddReg.NTHKR,EnumPropPages32,usbui.dll,USBControllerPropPageProviderHKR,Controller,1,01;HKLM,SystemCurrentControlSetServicesusbohci,BootFlags,0x00010003,4OHCI.AddServiceDisplayName = %OHCIMP.SvcDesc%ServiceType = 1 ; SERVICE_KERNEL_DRIVER;StartType = 3 ; SERVICE_DEMAND_STARTStartType = 0 ; SERVICE_BOOT_STARTErrorControl = 1 ; SERVICE_ERROR_NORMALServiceBinary = %12%usbohci.sys;LoadOrderGroup = BaseLoadOrderGroup = Boot Bus ExtenderUHCI.AddReg.NTHKR,EnumPropPages32,usbui.dll,USBControllerPropPageProviderHKR,Controller,1,01;HKLM,SystemCurrentControlSetServicesusbuhci,BootFlags,0x00010003,4UHCI.AddServiceDisplayName = %UHCIMP.SvcDesc%ServiceType = 1 ; SERVICE_KERNEL_DRIVER;StartType = 3 ; SERVICE_DEMAND_STARTStartType = 0 ; SERVICE_BOOT_STARTErrorControl = 1 ; SERVICE_ERROR_NORMALServiceBinary = %12%usbuhci.sys;LoadOrderGroup = BaseLoadOrderGroup = Boot Bus ExtenderROOTHUB.AddReg.NTHKR,EnumPropPages32,usbui.dll,USBHubPropPageProvider;HKLM,SystemCurrentControlSetServicesusbhub,BootFlags,0x00010003,4ROOTHUB.AddServiceDisplayName = %ROOTHUB.SvcDesc%ServiceType = 1 ; SERVICE_KERNEL_DRIVER;StartType = 3 ; SERVICE_DEMAND_STARTStartType = 0 ; SERVICE_BOOT_STARTErrorControl = 1 ; SERVICE_ERROR_NORMALServiceBinary = %12%usbhub.sys;LoadOrderGroup = BaseLoadOrderGroup = System Bus Extenderusbstor.infUSBSTOR.AddServiceDisplayName = %USBSTOR.SvcDesc%ServiceType = 1;StartType = 3StartType = 0ErrorControl = 1ServiceBinary = %12%USBSTOR.SYSLoadOrderGroup = System Bus Extender 2.2 进入 v:WindowsSystem32DriverStoreFileRepository,找到名为usb.inf_的文件夹,然后把刚才改好的usb.inf文件复制到此处覆盖原文件;然后继续找名为usbport.inf_的文件夹,用改好的usbport.inf文件覆盖此处的原文件;继续找名为usbstor.inf_的文件夹,用改好的usbstor.inf覆盖此处的原文件。(注意:这个位置的文件夹和文件所有权属于TrustedInstaller,直接改是不行的,首先要修改所有权为登录用户,并且赋予完全权限,才可以修改。修改步骤请自己网上搜。) 2.3 文件改好了,接下来要改注册表 V:windows 的注册表。修改注册表有很多方法,我下面用的是最简单的一种 2.3.1 打开写字板,把如下代码复制到写字板中,保存为usb1.reg(注意不是usb1.reg.txt!)REGEDIT4HKEY_LOCAL_MACHINESYSTEMCurrentControlSetservicesUsbBootWatcherServiceType=dword:00000010Start=dword:00000002ErrorControl=dword:00000000ImagePath=hex(2):25,53,79,73,74,65,6d,52,6f,6f,74,25,5c,73,79,73,74,65,6d,33,32,5c,55,73,62,42,6f,6f,74,57,61,74,63,68,65,72,2e,65,78,65,00DisplayName=Usb Boot Watcher ServiceObjectName=LocalSystemHKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSafeBootMinimalUsbBootWatcherServiceHKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSafeBootNetworkUsbBootWatcherServiceHKEY_LOCAL_MACHINESYSTEMCurrentControlSetservicespciideStart=dword:00000000HKEY_LOCAL_MACHINESYSTEMCurrentControlSetservicesintelideStart=dword:00000000 2.3.2 打开写字板,把如下代码复制到写字板中,保存为usb2.regWindows Registry Editor Version 5.00HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesusbccgpGroup=Boot Bus ExtenderStart=dword:00000000HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesusbehciGroup=Boot Bus ExtenderStart=dword:00000000HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesusbhubGroup=Boot Bus ExtenderStart=dword:00000000HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesusbohciGroup=Boot Bus ExtenderStart=dword:00000000HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesUSBSTORStart=dword:00000000Group=Boot Bus ExtenderHKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesusbuhciGroup=Boot Bus ExtenderStart=dword:00000000 2.4 关机重启进入V:盘的Win7,即本地的VHD Win7。找到2.3中创建的usb1.reg和usb2.reg文件,分别双击运行,文件中的内容即被写入VHD Win7的注册表。 2.5 重启,进入本地Windows7。 3 在步骤2中,USB驱动已经改好了,现在win7.vhd中的系统已经可以在移动硬盘中运行了。插上移动硬盘,把D:win7.vhd文件复制到G: (移动硬盘数据盘,事先准备好大于15G的空闲空间) 4 不要急着用移动硬盘去启动计算机,因为引导还没有建立!下面我们来手动给G:win7.vhd建立引导。 4.1 把本地Windows7的系统盘中boot文件夹和bootmgr文件完整复制到移动硬盘 F: (这相当于移动硬盘的C盘)根目录下 4.2 进入 c:windowssystem32 文件夹,把如下三个文件复制到 F:boot 文件夹下: bootsect.exe 用来给移动硬盘MBR写引导信息 bcdedit.exe 用来建立、修改bcd引导项 bcdboot.exe 用来复制bcd引导项 4.3 运行cmd进入命令行,依次运行如下命令: bcdboot c:windows /s f: 把本地Windows7的引导项复制到F:盘(即移动硬盘) bootsect /nt60 f: /mbr 这个命令将把nt60版的引导信息写入移动硬盘的mbr!因此一定要小心别搞错了盘符! bcdedit /store f:bootbcd /copy default /d Windows 7 VHD USB 回车后返回这种格式的GUID, xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx,后续命令中我用GUID代替 bcdedit /store f:bootbcd /set GUID device vhd=g:win7.vhd bcdedit /store f:bootbcd /set GUID osdevice vhd=g:win7.vhd bcdedit /store f:bootbcd /set GUID detecthal on 打开detecthal参数,对移动win7的兼容性非常重要,作用是启动时强制检测hal(即俗称的电源管理模式,做过系统封装的都知道这东西的重要性)。xp就没有这个功能 bcdedit /store f:bootbcd /displayorder GUID /addlast bcdedit /store f:bootbcd /timeout 5 改这改那,终于都改好了。OK,现在一切就绪。 5 关机,用移动硬盘启动Y450吧 6

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论