在活动目录的对象删除过程的基本概念:
活动目录对象如果被删除,并不直接消失,而是放入一个不可见的CN,名字叫deleted object,里面存放60天(默认),在这60天内,可以进行恢复,在域控制器上,每24小时执行一次名叫“垃圾收集”的进程,将超过60天的被删除记录真正的删除。那只能通过备份加以恢复了。在这里讨论的是在60天之内的情况。
手动恢复活动目录对象
1. 首先安装Windows 2003自带的support tools工具,该工具所在的目录:X:\SUPPORT\TOOLS\Suptools.msi
2. 安装结束后,在命令行中输入LDP,启动活动目录的LDP工具
3. 在菜单中,选择connection,输入要连接的域控制器。我们可以发现LDAP协议所用的端口为389号端口。
4. 在菜单bind中,选择输入连接操作者的身份凭据。在输入后,我们可以见到显示出authendicated user=“administrator”
5. 选择菜单当中的options,选择菜单项controls,在其中,选择return deleted object
注意,在Active controls窗口中,显示出1.2.840.113556.1.4.417,该号码是管理信息库所识别的一个ID,代表着被删除对象
6. 在view菜单中,选择tree,
在弹出的窗口中,输入域的DN,在左侧窗口中,就会出现一个域的树状结构
7. 在左侧树状结构上双击,在子目录下,选择cn=deleted object容器,在其中找到被删除的对象
8. 在删除的对象上右击,在弹出的快捷菜单中选择modify,打开编辑窗口界面
9.在编辑的窗口,首先输入,attribute 值为 isdeleted ,在operation中选择delete, 点击Enter将其添加到entry list中
10. 再在attribute中输入另一个属性distinguishedName,在Values中,输入准备恢复对象存放的位置DN,在operation中,选择replace,点击enter,将其添加到entry list中。
11. 选择勾选Synchronous和Extended,然后点击Run按钮。被删除的对象,就得以恢复了
导致不显示被删除对象的原因:
1. 在《Viewing deleted objects in Active Directory》这篇KB中(编号258310)中,提到了这种情况:
节选如下:
Set "Size Limit:" to a sufficiently large value such that all the deleted objects in the directory can be returned by the query. LDP will return up to the number of objects specified in "Size Limit:", and if there are more objects that cannot be returned, it will log an error. The error returned in the right-hand pane is:
Error: Search: Size Limit Exceeded. <4>
If you experience this error, set the "Size Limit:" higher and execute the Search again.
If necessary, modify the timeout value from zero to 60000 milliseconds.
可见,如果活动目录对象过多,而在Size Limit的工具中没有加以设置的话,就有可能会出现错误,解决方法是在options中手工加以调节。