HDD GPT磁盘上的WIN7无损迁移到SSD MBR磁盘
- 为了方便,本教程中的部分图片是在虚拟机中截取的,只做示意,仅供参考,但是本教程的方法是可行实用的,在我的华硕A53SV上已经成功实践。
- 对于本教程所造成的数据损失等一切后果,本人概不负责。
- 迁移系统前,请做好数据备份,以防万一。
- 100MB fat32分区,是引导分区,存放win7的引导文件,并且将该分区标记为活动分区,按微软的说法,MBR磁盘上的活动分区,称为系统分区。
PS:如果不喜欢将win7的引导放在单独的分区,方法如下:
#不要建立100MB分区
#将win7分区(SSD上win7系统所在的分区)标记为活动分区,此时该分区就是系统分区
#其它步骤相同 - 40.92GB的ntfs分区,为SSD上系统所在的分区,教程中我称它为win7分区
PS:不能称为系统分区,因为在微软的概念中,对于MBR磁盘,系统分区就是活动分区 - 70.77GB的ntfs分区,用来安装一些程序,称为程序分区
因为我们是迁移系统,所以该分区中的数据,是从原HDD系统中,安装程序的分区复制过来的数据。
- 100MB的分区为EFI分区
- 50.10GB的ntfs为安装win7的分区,本教程称为win7分区
- 195.31GB的ntfs U:盘,这是安装第三方程序的分区(包括游戏),称为程序分区
PS:这里的数据将为迁移到SSD的程序分区 - 195.91GB的ntfs E:盘,这里存放一些电影,歌曲等数据,该分区不会迁移到SSD
- 24.22GB无格式的分区,这是MAC LION系统的分区,这个与该教程无关,不处理该分区
- 在基于 BIOS 的系统上,系统分区是使用主引导记录 (MBR) 磁盘格式的磁盘上的活动分区。BCDboot 会在系统分区上创建 \Boot 目录,并将所有需要的引导环境文件都复制到此目录中。
- 在基于统一可扩展固件接口 (UEFI) 的系统上,EFI 系统分区是使用 GUID 分区表 (GPT) 磁盘格式的磁盘上的系统分区(我的注释:其实就是EFI分区,从diskpart的create partition的帮助中可以看出来)。BCDboot 会创建 \Efi\Microsoft\Boot 目录,并将所有需要的引导环境文件都复制到此目录中。
- 打开GHOST工具,
依次选择菜单:”Local-Partition-To Partition”
意思是,从分区到分区的克隆,如图: - 克隆过程
#选择克隆的源磁盘,本教程就是HDD磁盘,可根据大小判断#选择源磁盘上的源分区,本教程就是HDD上的win7分区
#选择ghost的目标磁盘,本教程就是SSD磁盘
#选择克隆的目标磁盘的目标分区,这里就是SSD上的win7分区
#确认执行克隆操作,请点击Yes
PS:确认对话框中提示:目标分区将会被重写。
- 参数 /nt60 将系统引导切换为bootmgr,也就是win vista ,win 7的引导
- 参数 sys 更新系统分区的主引导代码
对于MBR磁盘,系统分区就是激活的分区,
因此不管你是单独分区存放引导文件,还是在安装win7的分区存放引导文件,都没有关系,只要激活单独的分区,或者激活安装win7的分区,就可以了。
- 参数 /mbr 将更新 sys 参数指定的分区所在磁盘的的mbr为符合win7引导的mbr
- bootsect /help 可以查看bootsect的帮助,虽然是英文,不过不难懂
- bootsect命令,对于GPT磁盘无效,其实GPT磁盘的引导修改是很简单的,直接使用bcdboot重建BCD数据,bios就会自动找到win7 引导所用的efi文件。
-
修复SSD上win7的引导后,MBR磁盘只是具有了引导WIN7的功能,但是SSD上的win7还是无法启动的,因为,还没有引导文件以及引导数据(bcd数据)。
-
克隆到SSD上的win7没有引导文件及bcd数据的原因是:HDD上的win7是基于GPT磁盘efi引导的,引导文件以及bcd数据都是存放在efi分区的,我们迁移到MBR磁盘后,需要重建引导文件
-
参数 x:\windows x代表ssd上的win7分区的盘符
-
参数 /l 指定引导菜单所用的语言,zh-cn代表简体中文,不指定的话,可能会是英文,如果是英文的话,后续可以通过bcdedit命令修改
-
该工具,如果不指定bcd数据存放位置的话,会默认放置到系统分区
-
使用diskpart命令查看某个分区的盘符:
select disk 0——————–选择磁盘,请选择你要查看的分区所在的磁盘,可根据磁盘容量确定
select partition 1—————-选择分区,请选择你要查看的分区,可根据分区容量确定
detail partition——————显示分区信息,其中包括分配到的盘符,图中LTR字段,就是盘符
assign letter=x——————分配盘符x给所选择的分区
PS:
此时两块硬盘上有2个系统,原来HDD系统会占用C盘符,SDD上的系统所在分区会变成其他盘符(我的是Q)
这就导致一个问题,如果你把HDD上的C盘符删掉(或者格式化了HDD的win7分区),将会导致SDD上的系统,无法进入桌面,因为SDD上的系统是HDD上的克隆,它会去找C盘(在HDD磁盘上)的一些数据 经过前面的步骤,现在已经可以启动SSD上的win7系统了 启动SSD的win7系统:
°HDD的系统是基于EFI引导的,因此,在bios的引导菜单上显示的是windows boot manager
°在计算机启动的时候,按某个键(主板不一样,这个按键是不一样的,请查看你的主板说明),调出bios引导菜单,选择你的SSD磁盘的名字,即可从SSD启动,引导至SSD的win7系统