解决u盘安装原版win7:无法创建新分区、缺少所需的CD/DVD的问题前言:本文中解决用ULTRAISO写入原版镜像U盘启动安装出现提示“无法创建新分区、也无法定位当前系统分区”的方法只针对传统bios模式(legacy模式)+mbr磁盘。(因为efi+gpt的比较简单,出现这个的几率很小,并且只需要创建好efi和msr分区,主分区,基本就不会出现这个问题,且efi下软激活比较麻烦,小白采用的少,故本教程不做叙述。)(上图问题很明显,因为计算机没有找到磁盘0,直接是磁盘1,所以即使有类型为“系统”的分区照样报错)还有这样的,磁盘0依然报错这一图虽然是磁盘0,但没有活动主分区,也没有空余的空间,依然报错。解决方法:1、如果图中的“类型”一列,磁盘没有标记为“系统”的分区,那就用diskpart激活第一主分区:操作:在当前界面按下shift+f10组合键,出现命令提示符,依次输入下列命令diskpartlistdiskseldisk0selpar1activeexit关闭黑框,刷新,一般就可以下一步了。配图:2、如果1的方法不好使,分区列表中已经有“系统”分区,还点不了下一步,尝试以下步骤:(1)拔掉u盘,刷新,选中要安装的分区,看下一步是否能点,如果能点,就继续(2)点完下一步后再插入u盘,应该就可以了。3、如果还不行,尝试下列步骤(1).重启进入BIOS,将本地硬盘的启动顺序提升至第一;(2).了解好你的电脑的启动热键(一般是F12/F8/F9/ESC等),通过热键选择u盘来启动;(3).问题应该就解决了。4、终极办法,同时解决无法“缺少所需的CD/DVD的问题...(1)确保你的U盘已被识别(可以通过shift+f10,diskpart,listdisk或者listvol命令来查看是否已为u盘分配盘符)(很多电脑,shift+f10后是可以看到u盘的,但依旧提示“缺少所需的CD/DVD...)(2)如果u盘不识别,换个口,最好换到usb2.0的口。(3)识别u盘后,将安装文件复制到硬盘0的活动主分区上,拔掉u盘,直接重启即可。这一步操作比较复杂,但好在大部分都是图形化的。a.关掉当前的分区选择点不了下一步的界面,会自动返回到这个界面,点”修复计算机“b.点修复计算机后,直接点加载驱动程序,再点确定c.弹出浏览的窗口,这个窗口就是工作台了,可以将u盘文件复制到活动主分区(C盘)根目录(请提前在之前卡住无法下一步的界面格式化一遍C盘以确保系统纯净!)不过不支持ctrl多选,所以每次只能复制一个,还好,我们只要复制3个,分别是bootmgr文件、boot文件夹、sources文件夹。复制、粘贴操作如下(真是贴心啊。我要被自己打动了。。。。),重复搞3个先进入到你的u盘(我虚拟机用的虚拟iso光驱。。。),找到boot目录,复制,再点”计算机“,找到c盘粘贴。。。。重复上述操作2次,直到c盘具备了bootmgr文件、boot目录、source目录即可拔掉U盘,重启自动从硬盘启动安装,就不会出现上述问题了。。。。当然,还有两步备用操作,一般是用不到的一步是重写硬盘的主引导记录,一步是重写c盘的分区引导记录。硬盘的主引导记录,大部分人的电脑就已经是windowsnt6.0或者5.2之类的,该两款引导记录功能相同,都是从活动主分区的分区引导记录继续启动。活动主分区(c盘)分区引导记录,在无法下一步的那个分区选择界面,格式化时,会自动生成bootmgr的分区引导记录,配合我们拷贝过去的bootmgr文件来启动boot目录的boot.sdi调用sources目录的boot.wim来从硬盘上进入安装环境。所以这两步备用操作在一般人电脑上都已具备,没有写出来,可用bootsect命令自行查询。本教程只针对msdn原版ultraiso写入u盘的操作,不借助任何第三方软件,仅在微软官方原版pe环境操作。如果能使用第三方软件(可以直接放在u盘中用shift+f10,用命令行切换到u盘来调用),那就非常简单了。例如可用的第三方软件cgi、bootice等工具,都不需要将文件拷贝到硬盘,直接强制展开wim文件到c盘,bcbtoot修复引导(cgi也会自动修复引导)即可,都是图形化的,非常方便。另外关于U盘、USB鼠标、USB键盘,在进入安装界面后失效的问题(无论是否插在3.0都会失效),其根本原因是intelXHCI控制器的问题,intel的xhci控制器提供了一个smartauto功能,俗称“聪明”,但聪明过头了,通常,当我们进入win8pe,或者从win8返回到win7系统时,当win7系统还没安装usb3.0驱动,发现所有usb设备不可用,想装驱动吧,键盘鼠标动不了。。。。解决方法:进入bios设置,找到XHCI设置,将其中的SMARTAUTO改成AUTO。(auto会自动识别插入的设备,如果是2.0则用echi,如果是3.0则xhci,建议设置auto),如果还有问题,建议彻底关闭电源(指移除市电220v接入10秒钟,后再接通电源开机)。再更新一下UEFI+GPT/MBR的情况不适合小白,不提供图片教程。UEFI+GPT是推荐的组合,UEFI+MBR除非有特殊用途,否则不建议,后面会简单介绍,有的硬件会蓝屏。win8的32、64位都支持efi+gpt,但个人计算机大多是64位efi固件,只能启动64位efi程序,所以efi启动一般安装win8的64或者win7的64。部分win8.1平板电脑,采用了32位efibios,以efi+gpt的方式安装了32位win8,并通过wimboot实现节省空间,所以299的1G+16G寨板依然很流畅、空间也够用。只有64位win7才可以efi+gpt另外win7efi启动,必须bios开启CSM支持,关闭securityboot!其他就没啥说的了,非常简单,百度一堆。u盘efi启动的安装方式:1.准备一个FAT32格式的u盘(如果u盘做了ud隐藏分区的pe(例如x菜、x桃、x师、x店等都是ud隐藏分区的方式),则很有可能失败,因为有的bios阶段是无法识别u盘第二分区的。这种情况需要进PE,手动展开wim,创建uefi引导即可。2.单分区的FAT32格式u盘,直接将msdn原版ISO解压到U盘,并复制一个文件bootx64.efi到u盘efi\boot目录下即可!bootx64.efi如果获取?(1)从原版的角度来说,就用解压后的u盘\sources\install.wim中获取,用7zip等工具可以直接打开这个wim,然后找到分卷1\WINDOWS\BOOT\EFI\BOOTMGFW.EFI解压出来,改名为bootx64.efi放到u盘efi\boot即可!(2)也可以直接win8x64原版iso中\efi\boot\bootx64.efi直接复制使用即可。(3)从已经安装好的(包括legacy启动的)的win7x64系统\windows\boot\efi\bootmgfw.efi复制改名直接使用。这就完毕了,既然你之前就是GPT分区表格式,则EFI分区/msr分区都不用创建,直接用这个U盘,选EFI启动,就ok。UEFI+MBR需要以LEGACY+MBR安装win7x64系统(win8可以直接uefi+mbr引导安装),建议提前划分一个FAT32主分区,并激活,该主分区会被作为引导分区。系统装好后,将该分区同时被用作EFI分区,通过BCDBOOTX:\WINDOWS/fALL/SY:的方式将LEGACY以及UEFI引导文件同时创建在Y盘(y就是刚才说的FAT32分区),实现LEGAY/EFI+MBR的双重引导。uefi+gpt转移安装文件到硬盘,从硬盘efi启动安装若UEFI+GPT仍然出现“无法创建新的系统分区、也无法定位现有系统分区”的情况,检查你的EFI分区/MSR分区是否都具备,如果都具备还出现这个提示(这还真没遇到过,应该不会出现吧),依然可以将u盘的安装文件全部复制到光盘,不过为了避免修改BCD,建议直接将efi分区划分到3.5G左右,fat32格式,然后直接将U盘的EFI目录,sources目录、boot目录三个文件夹全部复制到EFI分区即可。efi分区容量调整既然要新装系统,则efi/msr/第一主分区一般是连续的分别删除efi/msr以及第一主分区,其中efi、msr删除需要添加override参数再创建3500M容量的efi分区,命令creatparefisize=3500创建128M的MSR分区怒creatparmsrsize=128创建主分区creatparpri并且需要手动为efi分区添加盘符,例如mountvols:/s或者diskpart中用ass命令。用UltraISO怎么能进入PE原理:目前的U盘启动都是USB-HDD模式,在bios启动阶段,这个设备被识别为hd0,而进入原版安装环境,进入到32、64位的pe环境中后,usb设备识别为移动磁盘,不再是hd0,本地硬盘变成hd0,大部分bios能纠正这个问题,一般机器都能安装,但有的机器无论怎么弄都不行。如果采用第三方软件就很好解决了。例如几乎所有pe都会带的bootice工具,该工具可以在原版pe环境中运行(原版64的pe不带32位支持,也就是只能运行64位程序,所以u盘上备两个,booticex86和booticex64),再在u盘上备一个grub4dos的主程序grldr,再备一个menu.lst默认启动u盘根目录的/bootmgr来启动到安装环境就行了。操作:shift+f10,通过dir命令来查找到u盘,或者用diskpart的listvol来看u盘盘符,然后运行u盘上的booticex86或x64(32位原版系统用x86、64位用x64),选中本地硬盘,选择更新朱引导记录,选择grub4dos的mbr,安装,确定即可。重启,直接从本地硬盘启动,会自动启动u盘上的安装程序,就ok了。从硬盘启动后,由于硬盘的mbr是grub4dos的,就会从所有设备分区根目录搜索grldr来继续启动,用hd0,x(硬盘的所有分区),一直搜索到hd1,0(u盘)有grldr文件,grldr启动到grub4dos环境,自动加载menu.lst,menu.lst是我们自己编辑的,会自动启动/bootmgr文件--读取boot\bcd文件--boot.sdi和boot.wim进入安装环境,由于全过程hd0,hd1无论是bios阶段,还是进入pe阶段,都没有交换过,所以就解决了这个无法定位的问题了。预装win8改win7的注意事项。预装win8.1的电脑,为了实现开机快速启动,都采用”纯UEFI模式启动“+GPT的磁盘分区,进行启动。纯UEFI启动模式:姑且叫关闭兼容模块的的UEFI启动模式,目前只有win8及以上的windows系统支持。开启兼容模块CSM的UEFI启动模式:指在开启UEFI启动模式下,另外单独打开CSM模式,这个CSM是EFI系统中的一个特殊的模块,它将为不具备EFI引导能力的操作系统提供类似于传统BIOS的系统服务。win7如果要efi启动,必须开启CSM这个。BIOS中设置为EFI启动模式时,一般都提供这个选项,通常叫LanuchCSM,CSM等含有CSM(CompatibilitysupportModule)的选项,将其启用。SECURITYBOOT:预装Windows8的机器,默认SecureBoot启动,如果UEFIBIOS中只预载了微软OEM和微软密钥,将无法以任何通用的Linux开机。建议安装win7的时候也关掉secrutiyboot这个。简单的说下两者启动win7(包括启动msdn原版安装程序)的流程1.efi+gpt:(1)启动操作系统列取bios中存储的EFI启动项,并从默认第一项windowsbootmanager启动---该efi启动项指向efi分区\efi\microsoft\boot\bootmgfw.efi---该efi文件读取efi分区\efi\microsoft\boo