娟斌心 发表于 2015-5-16 09:56:25

HDD GPT磁盘上的WIN7无损迁移到SSD MBR磁盘

迁移计划:

说明:

[*]为了方便,本教程中的部分图片是在虚拟机中截取的,只做示意,仅供参考,但是本教程的方法是可行实用的,在我的华硕A53SV上已经成功实践。
[*]对于本教程所造成的数据损失等一切后果,本人概不负责。
[*]迁移系统前,请做好数据备份,以防万一。


迁移步骤

一、.分区
1.将SSD插入到系统内置硬盘的位置,系统原来的硬盘HDD,挂接到光驱位硬盘架上
2.开机启动到HDD的系统
3.打开磁盘管理工具,会提示“初始化磁盘”,将其初始化为MBR格式的磁盘
4.手动给SSD分区,情况如下:



[*]100MB fat32分区,是引导分区,存放win7的引导文件,并且将该分区标记为活动分区,按微软的说法,MBR磁盘上的活动分区,称为系统分区。
PS:如果不喜欢将win7的引导放在单独的分区,方法如下:
#不要建立100MB分区
#将win7分区(SSD上win7系统所在的分区)标记为活动分区,此时该分区就是系统分区
#其它步骤相同
[*]40.92GB的ntfs分区,为SSD上系统所在的分区,教程中我称它为win7分区
PS:不能称为系统分区,因为在微软的概念中,对于MBR磁盘,系统分区就是活动分区
[*]70.77GB的ntfs分区,用来安装一些程序,称为程序分区
因为我们是迁移系统,所以该分区中的数据,是从原HDD系统中,安装程序的分区复制过来的数据。

5.介绍一下我原来HDD的系统中的分区情况:
   

HDD上的win7是基于GPT磁盘EFI引导的。

[*]100MB的分区为EFI分区
[*]50.10GB的ntfs为安装win7的分区,本教程称为win7分区
[*]195.31GB的ntfs U:盘,这是安装第三方程序的分区(包括游戏),称为程序分区
PS:这里的数据将为迁移到SSD的程序分区
[*]195.91GB的ntfs E:盘,这里存放一些电影,歌曲等数据,该分区不会迁移到SSD
[*]24.22GB无格式的分区,这是MAC LION系统的分区,这个与该教程无关,不处理该分区

关于系统分区的解释(引用自微软官方对于bcdboot的帮助文档):



[*]在基于 BIOS 的系统上,系统分区是使用主引导记录 (MBR) 磁盘格式的磁盘上的活动分区。BCDboot 会在系统分区上创建 \Boot 目录,并将所有需要的引导环境文件都复制到此目录中。
[*]在基于统一可扩展固件接口 (UEFI) 的系统上,EFI 系统分区是使用 GUID 分区表 (GPT)   磁盘格式的磁盘上的系统分区(我的注释:其实就是EFI分区,从diskpart的create   partition的帮助中可以看出来)。BCDboot 会创建 \Efi\Microsoft\Boot   目录,并将所有需要的引导环境文件都复制到此目录中。



二、.将HDD上的系统所在分区Ghost 到SSD上的win7分区
直接把windows分区的所有文件复制到SSD分区
    应该需要在PE,或者windows RE环境下复制

    为了容易识别SSD上的C分区,win7上,在该分区建立一个文本文件:SSD-C.txt
   

RE下使用xcopy    直接复制文件的方法,有部分文件没有复制过去
不推荐该方法

3.制作USB TOOL


大概是说无法使用bootsect.exe
原因:目前的系统是在GPT磁盘上基于EFI引导,bootsect不可用

放弃使用USB TOOL

改用PE

用urtalISO直接将win7 镜像写到U盘(唉,还是用了第三方工具了),无法修复启动错误:缺少nls数据
用系统备份的镜像恢复的话,就会把磁盘恢复成GPT

改用PE+Ghost吧


2012年7月7日 13:31:05
ghost成功

1.制作一个可启动的PEU盘
    具体步骤,查阅你所用的PE的帮助文档
2.将HDD上的win7分区克隆到SSD上的win7分区(几乎所有的第三方PE,都会包含该工具)
    PS:这里我们使用手动GHOST工具,而不用一键GHOST工具。


[*]    打开GHOST工具,
依次选择菜单:"Local-Partition-To   Partition"
意思是,从分区到分区的克隆,如图:


[*]克隆过程
#选择克隆的源磁盘,本教程就是HDD磁盘,可根据大小判断


#选择源磁盘上的源分区,本教程就是HDD上的win7分区

#选择ghost的目标磁盘,本教程就是SSD磁盘

#选择克隆的目标磁盘的目标分区,这里就是SSD上的win7分区


#确认执行克隆操作,请点击Yes
    PS:确认对话框中提示:目标分区将会被重写。




三、.修复克隆到SSD上的系统的引导




2012年7月7日 14:42:44
1.ghost成功后,需要修复引导

2.此时两块硬盘上有2个系统,原来HDD系统会占用C盘符,SDD上的系统所有分区会变成其他盘符(我的是Q)
这就导致一个问题,如果你把HDD上的C盘符删掉,将会导致SDD上的系统,无法进入桌面,因为SDD上的系统是HDD上的Ghost

这时,就要修改注册表
todo:等待有网络了,从手机的为知上同步过来需要修改的地方

#用ultra iso将win7镜像写入到U盘

#用U盘启动电脑,出现选择语言界面的时候,按shift+f10调出命令提示符

#修复SSD上的win7引导
    bootsect /nt60 sys /mbr
    说明:

[*]参数 /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文件。


#重建bcd数据
   PS:

[*]
修复SSD上win7的引导后,MBR磁盘只是具有了引导WIN7的功能,但是SSD上的win7还是无法启动的,因为,还没有引导文件以及引导数据(bcd数据)。
[*]
克隆到SSD上的win7没有引导文件及bcd数据的原因是:HDD上的win7是基于GPT磁盘efi引导的,引导文件以及bcd数据都是存放在efi分区的,我们迁移到MBR磁盘后,需要重建引导文件

   
    bcdboot x:\windows /l zh-cn
   说明:

[*]
参数 x:\windowsx代表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系统

   启动SSD的win7系统后,打开注册表,定位到
      HKEY_LOCAL_MACHINE\SYSTEM\MountedDevices
    在右边的最下面可以看到
      \DosDevices\Q:
    我的SSD的win7分区,现在是Q盘符,需要修改为C盘符
      在\DosDevices\Q:单击右键,选择重命名,修改为:
      \DosDevices\C:
    如果已经有了\DosDevices\C:,请先将\DosDevices\C:重命名为
         \DosDevices\X:                     这里的X代表其它盘符,请自行选择不在使用中的

   


四、重启计算机
    1.重启电脑, 设置bios,将第一引导设备调整为你的SSD磁盘,重启电脑

    2.删除HDD上win7分区的盘符,重启电脑,查看是否正确

    3.使用bcdedit命令查看一下bcd数据
      如图:
      {current}项中的
      device partition=C:
      path \windows\system32\winload.exe
      
      如果是这样,基本就没有问题了。      

      

   4.如果没有问题,可以删掉HDD上的系统win7分区,做为他用了



  


通过 为知笔记 发布  
页: [1]
查看完整版本: HDD GPT磁盘上的WIN7无损迁移到SSD MBR磁盘