Win2003域控制器诊断方法

Windows2003 域控制器诊断方法Dcdiag.exe 是域控制器诊断工具,在讲解这个工具之前,必须先进行若干概念的诠释. 1.域:简单地说,网络就是由域所组成的,是数据安全集中管理的单位,具有

Windows2003 域控制器诊断方法

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(选择完全测试)的时候才能用这个来配合 ,并且注意在命令行中不能出现互相矛盾的选择项。

/test:Test

只运行单一测试, 但连通测试不可跳过, 并且在命令行中注意不能出现互相矛盾的选择. 不论指定进行哪些测试,或要指定跳过哪些测试,都必须使用以下的名字:

Connectivity 连通性

测试域控制器是否在DNS (域名解析服务系统)已经登记注册、或通过Ping 测试,并已经具备LDAP/RPC的连用性..

Replications 复制

检查域控制器之间的复制.

Topology 拓补

检查全部域控制器的所有链结的拓补(结构)

CutoffServers

检查服务器因对方服务器关闭而还没有接受到的复制

NCSecDesc

以名子为关联信息检查安全描述符

NetLogons

检查登陆权限是否适当,如果适当则允许复制继续进行

LocatorGetDc

检查每个域控制器是否有可以关闭的广告.

Intersite

检查临时位际的复制

RolesHeld

检查已知的全局"任务占有者(role-holders )"、可能的位置及其响应.

RidManager

检测RID 是否可访问以及相关信息的正确性.

MachineAccount

检查计算机账号信息.

,

Services

检测域控制器服务的运行

OutboundSecureChannels

从所指定的域中检查安全通道

ObjectsReplicated

检查计算机账号和DSA 对象的复制

{/h | /?} 显示帮助信息.

三. 验证及发现的问题

这个工具只能运行于在命令行中.仿照以前介绍的命令行窗口的打开方法,打开该窗口后,在提示符后面键入:dcdiag /?或dcdiag/h ,可以显示帮助信息.大概是这个工具的项目太多吧!显示出来的帮助信息很长,对工具中的每个测试项目的使用方法,都有很详细的介绍.如果想仔细研究,建议把这些信息保存到一个文件中,便于以后仔细研究.要保存这些帮助信息,可以在命令行窗口中显示出完整的帮助信息后,鼠标移动至屏幕下面"托

盘"中命令行窗口的图标上后,点击右键,会出现一个菜单,其中有"编辑"一项,再将鼠标移动至"编辑",自动会显示出下一层菜单,先点击"全选"、后点击"复制",就可以将其粘贴到记事本等窗口中保存起来.

从显示的信息看,其内容与上面(第二部分)介绍的有不少出入.同是一个工具,其专门的帮助文档和用/?得出的帮助信息不一样,在Support Tools中已经不是第一次遇到,其中原因我始终没有搞清楚.经对照发现,以下项目就是帮助文档中没有的:

/fix: 安全修复

frssysvol - 这个测试用来检查文件(以及系统卷)复制系统是否准备就绪. kccevent - 这个测试用来检查外部Com 端口的兼容(或冲突)方面的问题

systemlog - 这个测试用来检查系统运行的外部错误

标签: