说到活动目录迁移就要用到迁移工具,但Windows本身却并没有自带个工具,我建议大家到微软的官方网站上去下载,因为可以下到最新版,安装盘里那个版本太低了。这个工具的全称叫Active Directory Migration Tool,我们以下简称ADMT,最新版本是3.0,这个新版本较上次的版本我想表扬一下微软,总算有中文版了,虽然这个工具的使用还是比较简单的,所以上面的英文也不是很难,但有中文版了也算是微软的用心之处嘛,不过表扬完了,顺便再批判一下,你说你一个迁移工具,怎么会和SQL勾搭上了呢?真不知道微软又想干什么?是技术需要吗?我没什么感觉。是商业需要吗?问比尔。反正我不管了,只要好用就行了。
  
  我先来介绍一下实验的环境:
  
  目标域:
  
  域名:demo.com
  
  域控制器:server
  
  操作系统:Windows Server 2003
  
  IP:192.168.5.1
  
  子网掩码:255.255.255.0
  
  DNS:192.168.5.1
  
  源域:
  
  域名:ms.com
  
  域控制器:win200ser(本来是打算用win2000ser的,一时大意,少打了一个“0”,将错就错了,反正也没有什么关系)
  
  操作系统:Windows 2000 Advanced Server
  
  IP:192.168.5.10
  
  子网掩码:255.255.255.0
  
  DNS:192.168.5.10
  
  实验目的:要把ms.com上的一个叫“Tom”的用户和一台名叫“Test2000”的计算机帐号迁移到Demo.com。
  
  在执行正式的操作以前呢,我们先要来做三个准备工作:
  
  1、 把目标域,在这里也就是demo.com的功能级别提升为纯模式。
  
  点击“开始-设置-控制面板-管理工具-Active Directory用户和计算机”:
  
 

  在“demo.com”上击右键:
  
 

  选择上面选中的“提升域功能级别”:
  
 

  请注意,当前的域功能级别是Windows 2000 混合模式,然后开始提升操作:
  
 

  点击上图中的“提升按钮”,注意这种操作是不可逆的,提升完成后,就会出现如下画面:
  
 

  这就表示提升成功了,如果有多台域控制的话,请注意复制时间,以确定这一修改被复制到整个域的所有域控制器上。
  
  2、 对两个域做一个双向信任关系。
  
  应该说这是一个关于域的基本操作,但是很遗憾的是很多朋友都在这一步上栽了一个大跟斗,他们都来信告诉我无法建立信任关系,当他们给我看了下面的截图:
  
 

  以及听取了他们的整个操作过程以后,我基本上断定是因为他们没有正确配置DNS的原因,我想他们肯定是用本域的DNS服务器去解析信任域的域名,由于本地的DNS服务器里是没有对方域的纪录,所以才会造成无法解析,从而导致信任关系无法建议。在这里我向大家推荐一种方法,就是建议DNS的辅助区域来解决这个问题:
  
 

  先到demo.com域,点击“开始-设置-控制面板-管理工具-DNS”:
  
 

  展开“SERVER”,定位到“正向查找区域”,并在上面击“右键”:
  
 

  选择“新建区域”:
  
 

  点击“下一步”:
  
 

  在这里,我们要选择“辅助区域”,然后再点“下一步”:
  
 

  这里输入和信任域相同的名称,我这里输入的是“ms.com”,然后再点击“下一步”:
  
 

  这里要输入信任域DNS服务器的IP地址,试验环境中是“192.168.5.10”,继续“下一步”:
  
 

  最后点击“完成”。
  
 

  出现上图就表示辅助区域已经建立成功了,然后到源域上再操作一次。
  
  说到这儿呢,我顺便还想再和大家提一下转发器的问题,有些朋友喜欢使用转发器来解决上面的问题,从理论上来讲,好像也没有什么讲不通的地方,但是用转发器的时候,很多人都会在上面出现一个严重的错误操作,以我的实验环境为例,这个错误操作就是在demo.com的DNS上设置转发器,转发到ms.com上面的DNS服务器;然后再到ms.com的DNS服务器上设置转发器,转发到demo.com上的DNS服务器。当然我知道大家这么设置的理由是什么,就是当demo.com上的机器需要访问ms.com上的资源的时候,而本地的DNS服务器无法解析,这时可以根据DNS服务器上设置的转发器,转到ms.com上的DNS服务器来进行解析,从而获得正确的IP地址;同理,当ms.com上的机器要访问demo.com上的资源时,也可以利用本地的DNS服务器上的转发器转到demo.com上的DNS服务器上来。以此来解决两个域之间的DNS解析问题。从表面上看,好像还是挺有道理的。但实际上你会为这样的操作付出代价的,什么原因?来分析一下,当一个客户端发出一个请求,是两台DNS服务器上有的纪录,那么是不会有什么问题的,因为当服务器本身能解析请求时,转发器是不起作用的。但是,当下面的客户机发出一个错误的请求,比如输错了一个字母,也就是说发出的请求在两台DNS服务器上都没有纪录的时候,那么这时就会根据转上器上的地址来进行转发,而你又是在两台DNS服务器上设置相互转发,那么这条请求就会从这台服务器到那台服务器,再从那中服务器到这台服务器?????……,并且周而复始,这样就会进入一个死循环,会大大的加重你的服务器的负担,甚至引起死机的可能性也不是没有。所以DNS服务器之间是不能设置相互转发的,这一点请大家切记切记!
  
  OK,那我们继续,建立完DNS辅助区域以后,再始建立域的信任关系。
  
  先到目标域上,也就是demo.com上,点击“开始-设置-控制面板-管理工具-Active Directory域和信任关系”:
  
 

  选“属性”:
  
 

  点击“信任”:
  
 

  点击上面的“新建信任”:
  
 

  点“下一步”:
  
 

  输入对方域的DNS名称,这里是“ms.com”,再点“下一步”:
  
 

  可以选择信任方向,这里我们选“双向”:
  
 

  点“下一步”:
  
 

  再点“下一步”:
  
 

  这里要输入的是信任密码,不要以为是让你输入管理员密码哟,这可是两回事,设置好以后点“下一点”:
  
 

  确认一下,要是没有问题就点“下一步”:
  
 

  点“下一步”:
  
 

  选“否”,点击“下一步”:
  
 

  还是选“否”,以上两步请确认另一方被创建后选“是”,由于这里对方域还没有被创建所以这里选“否”,点击“下一步”:
  
 

  最后点击完成。
  
  接下来就到源域上面也去进行同样的设置。不过Windows 2000域创建信任关系要比Windows 2003域来得简单,这里我就不写了。
  
  信任关系被创建后,接下来就是相互把对方域的管理员帐号添加到本域的Bulitin容器下的Administrators组。这个操作就不说了。
  
  前期的准备工作就到此为止了,开始进行正式的迁移操作了:
  
  首先当然是安装迁移工具,这里我安装的是ADMT3.0,安装过程很简单,只要狂点下一步就可以完成了。但要注意的是,ADMT工具一定要装在目标域上。安装完成后,我们可以点击“开始-设置-控制面板-管理工具-Active Directory迁移工具”:
  
 

  乍一看,就会吓一跳,什么都没有,怎么迁移?别急,在“Active Directory迁移工具”上击“右键”:
  
  都看到了吧,功能众多吧?这里本人仅仅向大家演示一上用户迁移和计算机迁移,所以我先点击“用户帐号迁移向导”:
  
 

  点“下一步”:
  
 

  这里要正确的填写“源域”和“目标域”,千万别倒过来哟。然后再点“下一步”:
  
 

  在这里选择“从域中选择用户”:
  
 

  点击“添加”:
  
 

  找到我们要迁移的用户,这里是“tom”,然后点“确定”:
  
 

  点击“下一步”:
  
 

  这里要选择的是目标OU,也是把用户迁移到哪,如果你不知道上图中所示的这种书写形式的话,可以点击“浏览”进行选择OU,选择完成后,系统会自动转换。再点“下一步”:
  
 

  这里需要提醒一下大家,要选择“生成复杂密码”,暂时还不能选择“迁移密码”,而且大家还要注意密码文件的存储位置,以迁移完成后去寻找那个密码。如果选择了“迁移密码”,那么会出现下面的出错提示:
  
 

  要迁移密码呢,在ADMT的帮助信息里有详细的介绍,这里我就不重复了。我们还是暂时不迁移密码,点“下一步”:
  
 

  这里可以设置被迁移帐号迁移成功后,是禁用还是启用,几天后过期等信息,我这里选择和源相同,注意的是建议大家把“将用户SID迁移至目标域”前的勾打上。这样就可以把源帐号的SID复制到与新帐号相关联的历史标记中,同时还会触发SID审核,可能会引起源域的域控制器的重启,这时请等待重启完成:
  
 

  输入源域的管理员帐号和密码,点“下一步”:
 

  如果用到了“漫游用户配置文件”的话,可以选上第一项,其它的可以保持默认,然后点击“下一步”:
  
 

  这里可以把一些用户属性进行排除,被排除的将不会进行迁移,建议大家还是保存默认的好。除非有些属性到了目标域后会引起问题。点“下一步”:
  
 

  大家可以根据自己的需要进行对上图的选择,就是当目标域中存在同名帐号之类的冲突现象时,所采取的动作,是迁移还是不迁移,或者怎么迁移的情况。选定后,请点击“下一步”:
  
 

  请大家确认上面的信息,如果没有问题,点击“完成”:
  

  上面是一个进度表和一个简单的日志记录,上图表示迁移成功!然后再到目标域的“Active Directory用户和计算机”里去看一下有没有“tom”这个用户:
  
 

  看到了吧,已经成功迁移过来了。
  
  再来看一个如何迁移计算机帐号的,上面我们选择的是“用户帐号迁移向导”,现在我们要选择的是“计算机迁移向导”:
  
 

  点“下一步”,下面的图和上例中差不多,我就只截出和上面不一样的图:
  
  第六步:
  
 

  这里我全部选上了:
  
 

  这里我选择的是“添加”:
  
 

  迁移成功后,计算机多少时间后重启在上图中指定,剩下的和上面的迁移用户基本一至,完成后可以到目标域的“Active Directory用户和计算机”里去看一下有没有“test2000”这台计算机:
  
 

  也迁移过来了吧?
  
  现在你可以到客户端上去把test2000这台计算机重新加入到demo.com,然后再用“tom”这个用户登陆,你会发现设置和以前一样保持不变的