Win2000域控制器诊断

一.功能介绍
Dcdiag.exe是域控制器诊断工具 , 在讲解这个工具之前 , 必须先进行若干概念的诠释. 1.域:简单地说 , 网络就是由域所组成的 , 是数据安全集中管理的单位 , 具有唯一的名字 , 域可在活动目录中定义安全边界 。域原是在Windows NT中出现的 , 到CW2KP仍被继承下来. 2.目录林(有些资料上干脆称为森林):看名字就知道 , 这是许多目录的集合体.确切含义请参考有关资料.
如所周知 , Windows2000对网络功能进行了很多加强 , 本诊断工具仅在网络环境下才能使用 , 单机环境不可能遇到的域控制器.也就遑论对域控制器进行诊断了.Dcdiag可以分析目录林或"组织"中的域控制器状态 , 并生成一个报告 , 报告将所有通过诊断测试得到的问题汇集在自身中 , 当管理人员或技术支持人员分析问题和排除故障时候 , 依此作为判断的参考资料. DcDiag本身可以向终端用户报告问题 , 在程序中 , 已经封装有详细的、关于如何识别系统不正常状态的功能和相关知识 。
如果将DcDiag理解为一个框架的话 , 那么 , 这个框架就是由(对系统的)一系列测试和校验构成的.当然 , 既然是测试 , 这些测试就必须以一定的顺序进行.程序依照用户的选择来进行域控制器的诊断测试 , 从范围上说 , 测试可以是针对组织单位、站点或者是单一服务器的某些项 , 也可以针对所有项目进行完整的测试.从执行方法上说 , 测试既可以指定某一项目 , 也可以跳过某些无必要的项目.通常应有下列项目:
 · 连通性
 · 复制
 · 拓补完整性
 · 检查 NC Head 安全描述符
 · 检查登录权
 · 取得域控制器位置
 · 安全边界
 · 检查任务或脚色.
 · 信任关系的验证.
在以前介绍的NetDiag连通测试工具中也有关于信任关系验证的项目.(可以参考本人上一篇"连通测试工具中的介绍")
二.使用语法:
dcdiag /s:DomainController [/n:NamingContext] [/u:DomainUsername /p:{* | PassWord | ""}] [{/a | /e}] [{/q | /v}] [/i] [/f:LogFile] [/ferr:ErrLog] [/c [/skip:Test]] [/test:Test] [{/h | /?}]
参数含义及说明:
/s:DomainController
域控制器使用的主服务器 , 这是一个必须的参数 , 不可省去 。
/n:NamingContext
指定测试的时候关联的系统 , 域可以指定NetBIOS、DNS或别的系统 。
/u:DomainUsername /p:{* | Password | ""}
使用”域/用户名”所附的信任凭证时的提示符号 , 其实就是密码的显示符号 , 例如 , 我们在键入密码时 , 通常显示的并不是密码本身 , 而是*****符号.也有使用....作为显示符号的.
/a
测试网站的所有的服务器 。
/e
在整个规划中测试所有的服务器 , 并忽略选项/a
/q
在空闲的时间内打印错误信息报告 。
/v
打印详细的信息报告.
/i
忽略多余的错误信息 。
/f:LogFile
将所有的信息报告改为输出到由LogFile命名的登记文件中 , 也就是不再将信息报告输出到系统默认的登记文件 。
/ferr:ErrLog
将致命的错误信息改为输出到由ErrLog.命名的、单独的登记文件中 , 与上一条类似.
/c
运行所有测试项目 , 包括非默认的测试.当然如果已经确定某些项目无需测试 , 可以使用/skip 开关来指定哪些测试可以跳过 。所谓非默认的测试是指下列几项:
拓补
对方服务器是否关闭服务器
安全通道输出范围.
skip:Test
用skip开关指出要跳过不测的项目 , 必须在使用/c(选择完全测试)的时候才能用这个来配合 , 并且注意在命令行中不能出现互相矛盾的选择项 。

推荐阅读