(WMI),中文名称是Windows Management Instrumentation。从Windows 2000开始,WMI(Windows Management Instrumentation)内置于操作系统中,成为Windows系统管理的重要组成部分。 WMI不仅可以获取所需的计算机数据,还可以用于远程控制。近期,不少勒索病毒都是通过wmi服务进行入侵的。这时候就需要wmi服务了。那么,wmi服务常见的问题有哪些呢?接下来小编就给大家分享一下wmi服务的常见问题及解决办法。
WMI 是什么服务?
(WMI),中文名称是Windows Management Instrumentation。从Windows 2000开始,WMI(Windows Management Instrumentation)内置于操作系统中,成为Windows系统管理的重要组成部分。所以大家很容易就能看到,因为我们至少应该是Windows 2000的用户。下面我将详细介绍它的每一个细节,让你在喜欢之前不知道。
WMI 可以做什么?
WMI不仅可以获取所需的计算机数据,还可以用于远程控制。远程控制计算机是每个人都喜欢的事情。许多远程监控软件的常见做法是在远程计算机上运行服务器端后台程序,在本地计算机上运行客户端控制程序。通过这两个程序的串通实现对计算机的远程控制。这种方法的缺点是非常明显的。当服务器程序关闭时,由于没有内部线路,无法实现这种远程监控。 WMI实现的远程监控不需要安装任何额外的服务器。系统默认开启WMI服务。具体来说,WMI的能力如下:
1.获取本地和远程计算机的硬件和软件信息。
2.监控本地和远程计算机上软件和服务的运行状态。
3. 控制本地和远程计算机上的软件和服务的运行。
4.高级应用。
一。常见问题及解决方案
1、通过WMI添加服务器、Microsoft .NET、Exchange服务器时,提示“身份验证失败,请确认用户名和密码”。
解决方案: 请以域名用户名格式输入用户名
注意:OpManger 中的本地WMI 认证不需要输入用户名和密码。
2、WMI模式监控Windows服务器时,内存利用率数据显示不正确。
解决方案:
在WMI中,我们使用Win32_OperatingSystem来获取Windows2003服务器的内存数据。当系统内存超过4GB时,无法上报准确信息。这是Windows 2003 SP1 的问题。有关详细信息和安装修补程序,请参阅http://support.microsoft.com/kb/906868/。
3. 如何重建WMI类?
解决方案:
MOF(托管对象格式)文件是一种机制,有关WMI 类的信息通过该机制进入WMI 存储库。存储库中的类定义可能已损坏,在这种情况下,请重新编译MOF 文件,用最初安装操作系统时的类定义覆盖并替换它。
在命令提示符下执行以下命令:
Windows 2003/XP
* c:windowssystem32wbemMofcomp.exe c:windowssystem32wbemcimwin32.mof
* c:windowssystem32wbemMofcomp.exe c:windowssystem32wbemcimwin32.mfl
视窗2000
* c:winntsystem32wbemMofcomp.exe c:winntsystem32wbemcimwin32.mof
* c:winntsystem32wbemMofcomp.exe c:winntsystem32wbemcimwin32.mfl
如果提示找不到路径,请使用%windir%(Windows目录名)替换windows(如果系统是Windows 2003/XP)或winnt(如果系统是Windows 2000)。
请参阅下面的链接了解更多信息
http://www.microsoft.com/technet/scriptcenter/topics/help/wmi.mspx#ECIAC
4. 通过WMI模式监控Windows机器时,远程Windows计算机上应该运行哪些服务?
以下服务应在远程Windows 计算机上运行:
1)Remote procedure Call(RPC)远程过程调用——端口: 135
2) Windows Management Instrumentation (WMI) Windows Management Instrumentation--端口: 445
如果启用了防火墙,则应在防火墙中打开这些端口。
5、尝试通过WMI方式添加服务器监视器时,提示“身份验证失败或访问被拒绝”。
1)域名和IP地址问题
使用域名作为用户名
如:ADVENTNETadmin
如果用户名不是域名帐户,请尝试使用主机名用户名。
如:adminadmin
如果您不知道域名或用户名,请通过控制面板--用户帐户进行确认。您可以查看系统上的用户以及用户所属的域和工作组。
- 使用wbemtest 查找连接到远程系统时出现的错误消息
点击开始--运行--wbemtest
打开Windows Management Instrumentation 测试器。单击“连接”按钮。在第一个文本框中(rootdefault)输入hostnamerootcimv2,输入用户名和密码。单击“连接”按钮。如果出现错误消息,请在主机名字段中输入IP 地址。
ip地址rootcimv2
如果正常的话只能通过IP地址访问机器。可能是因为C:Windowssystem32driversethosts 文件中的主机文件中有错误条目。删除文件中的错误条目并尝试使用主机名进行访问。
2)DCOM设置
在远程计算机上:
检查远程计算机上是否启用了DCOM
点击开始——运行——输入dcomcnfg,打开组件服务控制台。
单击组件服务- 选择计算机- 单击我的电脑(右键单击并选择属性)。
单击“默认属性”页签,检查属性是否配置如下:
a) 选择“在此计算机上启用分布式COM”
b)默认认证级别为connect
c) 默认模拟级别为模拟或身份
如果以上属性发生变化,请按照上述配置,然后检查是否可以在Applications Manager中添加。
然后确保也在注册表中进行更改。
开始-- 运行-- 键入regedit 打开注册表编辑器控制台。
单击我的电脑-HKey_Local_Machine-软件-Microsoft-OLE-EnableDCOM,设置为“Y”。
3)检查COM安全性
点击开始--运行--输入dcomcnfg,打开组件服务控制台。
单击组件服务- 选择计算机- 单击我的电脑(右键单击并选择属性)。
单击“COM安全”选项卡,检查属性是否配置如下:
单击访问权限中的编辑默认值。然后检查SELF和SYSTEM以查看是否启用了远程访问。
然后单击“我的电脑”,单击“DCOM 配置”,然后选择“Windows Management Instrumentation”。然后右键单击并选择属性并检查身份验证级别是否设置为默认。
4)WMI安全
在远程计算机上:
检查指定用户是否有足够的权限从远程计算机访问WMI。
单击开始-运行-输入wmimgmt.msc,打开Windows管理架构控制台。
右键单击WMI 控件并选择“属性”-“安全性”-“安全设置”。
然后检查用户所属的组是否具有完全权限,例如远程启用。如果没有,请选择允许复选框并保存更改。
然后尝试在应用程序管理器中添加服务器。
如果您不想更改组的权限,请创建具有来宾角色的用户。
进入控制面板--用户帐户
添加具有来宾角色的用户。然后进入Windows管理控制台并单击添加按钮。在Windows 2000 中,将列出最近添加的用户。您可以选择、添加和授予完全权限。
在Windows XP 中,在“输入要选择的对象名称”文本框中输入用户名machinenameusername。点击确定,将添加用户并授予权限,保存。
尝试再次添加服务器。
5) 验证用户权限
在远程计算机上
点击开始——运行——输入gpedit.msc。打开组策略控制台。
单击本地计算机策略-- 计算机配置-- Windows 设置-- 安全设置-- 本地策略-- 用户权限分配-- 身份验证后模拟客户端。
添加用户后,尝试再次添加服务器。在WMI 模式下添加Windows 监视器需要用户具有管理员权限。
[!--empirenews.page--]
6) 本地安全设置
如果远程计算机是Windows XP 计算机,请确保远程登录不会强制使用GUEST 帐户。点击开始——运行——输入secpol.msc,打开本地安全设置控制台。单击“本地策略”-“安全选项”-“网络访问:本地帐户的共享和安全模式”,如果设置为“仅限来宾”,则右键单击“属性”,更改为“经典”,然后重新启动计算机。
7) 对于Windows XP SP2 计算机,配置防火墙以允许远程控制。方法:打开命令提示符,输入netshfirewallsetserviceRemoteAdmin。
8) 必要的Windows服务
在远程计算机上
确保所有远程访问和WMI 相关服务均已启用并正在运行。在Windows XP 中,以下服务应运行或允许使用该命令启动。
COM+事件系统
远程访问自动连接管理器
远程访问连接管理器
远程过程调用(RPC)
远程过程调用(RPC) 定位器
远程注册
服务器
Windows 管理工具
Windows Management Instrumentation 驱动程序扩展
WMI 性能适配器
工作站
9)点击开始——运行——输入wmimgmt.msc,打开Windows管理架构控制台。右键单击“属性”-“日志记录”。在远程计算机上启用“详细”。
6.当我为服务器配置服务器监视器时,提示以下错误:“错误#RPC服务器正忙,操作无法完成”
请参考以下链接解决RPC服务器问题。
http://support.microsoft.com/kb/177446
http://support.microsoft.com/kb/905700
7、通过WMI方式添加服务器监视器时,提示“RPC服务器不可用”错误。
1)尝试使用域/用户名和用户名添加服务器
2) 检查是否可以从Applications Manager 计算机对远程Windows 计算机执行ping 操作。尝试使用主机名和IP 地址进行ping 操作。
3) 检查运行Applications Manager 的计算机与远程Windows 计算机之间是否存在防火墙。
如果有防火墙,请打开防火墙中的端口进行监听。端口为135 (RPC) 和445 (WMI)。
然后再次尝试添加监视器。
如果打开端口,仍然会出现同样的错误。远程计算机中的WMI 可能会使用随机端口来回复WMI 请求(即您从应用程序管理计算机向远程服务器发出的请求)。但您可以限制它仅使用特定范围的端口。因此,这些端口必须打开。
有关如何限制端口范围分配的更多信息,请参阅下面的链接。
http://support.microsoft.com/kb/300083
上述配置应在要监控的远程计算机上完成。
4) 检查远程计算机上是否正在运行RPC和WMI服务。
在远程计算机上,单击开始--运行--输入services.msc。
检查远程过程调用和Windows Management Instrumentation 服务是否正在运行。
如果它没有运行,请启动这两个服务并尝试在应用程序管理器中添加监视器。
5) 使用wbemtest查找连接远程系统时出现的错误消息。
点击开始--运行--wbemtest
打开Windows Management Instrumentation Tester,单击“连接”按钮,然后在第一个文本框(rootdefault) 中输入主机名rootcimv2。
输入您的用户名和密码,然后单击“连接”按钮。如果提示错误,尝试在主机名处输入IP地址,即ipaddressrootcimv2
如果没问题的话就只能通过IP地址访问机器了。可能是因为C:Windowssystem32driversethosts 文件中的主机文件中有错误条目。删除文件中的错误条目并尝试使用主机名进行访问。
8. OpManager WMI 监视器未运行。总是显示“错误#访问被拒绝”。
原因
登录验证不正确。
解决方案
按着这些次序:
1. 验证您是否提供了域管理员用户名和密码以按照上面的提示连接到设备。如果设备位于域中,则用户名应类似于“域管理员名称”。
2. 如果步骤1 中指定的登录凭据正确,请使用资源监视器- 添加监视器- 基于WMI 的监视器- 可用/已用磁盘空间(以MB/GB 为单位)尝试添加基于WMI 的监视器(最好使用与Exchange Server 关联的可用/已用空间图(以MB/GB 为单位)。您应该获得该设备的可用驱动程序列表。
3.如果步骤2失败,请尝试在Windows系统上启用WMI、RPC服务,然后重试。
4. 如果DCOM 设置配置不正确,也可能会出现此问题。
您可以从命令提示符运行它
cmd cd [OpManagerHome]confapplicationscripts
cmd cscript cpu.vbs [机器名] [域名][用户名] [密码]
通过检查运行vbs 脚本时的确切错误消息来找出这一点。
5. 您还可以按如下方式配置dcom 设置:
在Windows 2000 服务器的运行提示符下,键入“dcomcnfg”并展开“组件服务- 计算机”下的树。从图标栏中单击“我的电脑”,然后选择“默认属性”。检查以下内容:
在此计算机上启用分布式COM。
在此计算机上启用COM Internet 服务。
选择默认模拟级别“模拟”。
如果需要,您还可以编辑COM 安全设置。
6. 如果上述4 个步骤都无法解决问题,请尝试按如下方式更改服务登录详细信息。
转到Windows 服务UI。
打开“ManageEngineOpManager”服务的“属性”对话框。
转到“登录”选项卡。
在“登录身份”选项中选择“此帐户”,然后输入有权访问WMI 数据的域用户名和密码。
保存并重启OpManager。
注意:此操作将使托盘图标和启动图像消失。
二。 Wbemtest测试工具的使用
1.使用wbemtest工具进行测试。
1、在监控主机上运行wbemtest,点击连接
2. 在命名空间中输入监控的iprootcimv2。
3. 输入用户名和密码
4.检查是否连接成功
2. 常见错误及解决办法(ELA)
拒绝访问代码原因解决方案
0x80070005 提供的工作站登录名和密码不正确。检查输入的登录名和密码是否正确。
远程工作站的远程DCOM功能被禁用。检查远程DCOM是否启用。如果启用,请使用以下方法打开它:选择开始运行
1、在输入框中输入dcomcnfg,点击确定
2. 选择默认属性选项卡
3. 选择为此计算机打开分布式COM 复选框
4. 单击“确定”
在Windows XP主机上打开DCOM:
1. 选择开始运行
2、在输入框中输入dcomcnfg,点击确定
3. 单击组件服务计算机我的电脑
4. 右键单击并选择属性
5. 选择默认属性选项卡
6. 选择为此计算机打开分布式COM 复选框
7. 单击“确定”
远程主机的用户帐户无效。打开命令行窗口并执行以下命令检查用户帐户是否有效:
net use RemoteComputerNameC$ /u:DomainNameUserName '密码'
net use RemoteComputerNameADMIN$ /u:DomainNameUserName '密码'
如果这些命令显示任何错误,则为目标主机提供的用户帐户必定无效。
0x80041003 提供的用户名没有足够的权限来执行扫描操作。用户可能没有进入该主机的管理员组。将用户移至工作站的管理员组或使用管理员(最好是域管理员)帐户扫描计算机。
0x800706ba 远程主机配置了防火墙。这种情况主要发生在Windows XP(SP 2)的默认防火墙打开时。 1. 关闭Windows XP 计算机上的默认防火墙:
1. 选择开始运行
2.输入Firewall.cpl并单击确定
3. 在“正常”选项卡中,单击“关闭”
4. 单击“确定”
2、如果防火墙无法打开,则执行以下命令在远程主机上启用i远程管理:
netsh 防火墙设置服务RemoteAdmin
扫描完成后,可以使用以下命令关闭远程管理:
netsh 防火墙设置服务RemoteAdmin 禁用
0x80040154 1. 远程主机上的WMI 无效。这种情况发生在Windows NT 上。如果WMI 组件未正确注册,这些错误可能会出现在更高版本的Windows 上。
2. WMI组件未注册。 1. 在远程主机上安装WMI。可以从Microsoft 网站下载它。
2. 执行以下命令注册WMI DLL文件:
winmgmt/注册服务器
0x80080005 这可能是运行WMI 服务(winmgmt.exe) 的主机上的内部错误。主机上的上次WMI 存储库更新失败。重新启动远程主机上的WMI 服务:
1. 选择开始运行
2、输入Services.msc,点击确定
3. 在打开的服务窗口中,选择Windows Management Instrumentation 服务
4.右键单击并选择重新启动
更多错误代码请参考MSDN知识库
3.常见错误及解决办法(OpManager)
• 80070005 - 访问被拒绝
• 80041064 - 无法使用用户凭据进行本地连接
• 800706BA - RPC 服务器不可用
• 80041010 - 无效类
• 80041003 - 访问被拒绝
• 80040154 - 未注册WMI 组件
• 80080005 - WMI 服务中的内部执行失败
• 8004106C - WMI 消耗过多内存
• 8004100E - 无效命名空间
• 80041017 - 无效查询
错误代码及解决方法解释如下:
80070005 - 访问被拒绝
原因
当配置的登录凭据不正确时,会出现此错误。
解决方案
• 如果设备在域中,请确保配置了正确的域名、用户名和密码。如果设备在工作组中,只需配置用户名和密码即可。例如,如果域名是BigDom,用户名是admin,则在用户名字段中输入BigDomadmin。
• 对于具有安装OpManager 的计算机的访问权限的设备,无需指定用户名和密码。
• 如果使用正确的凭据后仍然遇到问题,请使用以下步骤进一步排除故障:
o 通过打开命令提示符并执行以下命令来检查用户帐户在目标计算机中是否有效:
net use 受监控设备名称ADMIN$ /u:'域名用户名' '密码'
如果此命令引发错误,则说明提供的用户帐户在目标计算机上无效。
o 检查受监控工作站上是否启用了“远程DCOM”。如果未启用,请按如下方式启用:
1. 选择开始运行
2. 在文本框中输入dcomcnfg,然后单击“确定”
3. 选择默认属性选项卡
4. 选中“在此计算机上启用分布式COM”复选框
5. 单击“确定”
[!--empirenews.page--]
在Windows XP 主机上启用DCOM 的步骤:
1. 选择开始运行
2. 在文本框中输入dcomcnfg,然后单击“确定”
3. 单击组件服务计算机我的电脑
4. 右键单击并选择属性
5. 选择默认属性选项卡
6. 选中“在此计算机上启用分布式COM”复选框
7. 单击“确定”
如果上述步骤不起作用,请尝试按以下方式更改服务登录详细信息:
• 转至Windows 服务UI。
• 打开“ManageEngineOpManager”服务的“属性”对话框。
• 转至登录选项卡。
• 在“登录身份”选项中选择“此帐户”。
• 在此配置有权访问远程计算机的帐户的用户名和密码。保存并重启OpManager。
• 再次尝试上述3 个步骤。
注意:进行这些更改后,将找不到托盘图标和启动图像。
80041064 - 无法对本地连接使用用户身份验证
原因
指定用于监控运行OpManager 的计算机的用户名和密码时遇到此错误。
解决方案
不要指定本地主机用户名和密码。要解决此问题,请从设备快照页面的密码链接中删除配置的用户名和密码。
800706BA - RPC 服务器不可用
原因
当RPC 和WMI 服务未运行且无法ping 通设备时,会遇到此错误。
解决方案
• 检查设备是否已启动、正在运行并且可执行ping 操作。
• 检查远程过程调用(RPC) 和Windows Management Instrumentation (WMI) 服务是否正在运行。
1. 选择开始运行。
2. 在文本框中键入“services.msc”,然后单击“确定”。
3. 在列出的服务中,检查RPC 和WMI 服务的状态是否显示为“已启动”。
4. 如果未启动,请启动这些服务。
• 远程计算机上可能配置了防火墙。当启用默认Windows 防火墙时,这种类型的异常很可能发生在Windows XP(带有SP 2)中。以下是禁用Windows XP 计算机上的默认防火墙的步骤:
1. 选择开始运行。
2. 输入Firewall.cpl 并单击“确定”。
3. 在“常规”选项卡中,单击“关闭”。
4. 单击“确定”。
• 如果无法禁用防火墙,请通过在远程计算机上执行以下命令来启用远程管理(对于管理员):“netshfirewallsetserviceRemoteAdmin”
• 防火墙可能会阻止WMI 流量。要访问防火墙中的WMI 流量,您需要在防火墙中打开端口445、135。
80041010 - 无效的类
原因
当所需的WMI 类未注册时,会出现此错误。
解决方案
• 检查是否安装了所需的应用程序。
• 为已安装的应用程序注册所有WMI 类的步骤。运行以下命令:
o 代表风
ows 2000,从所监视设备运行“winmgmt /resyncperf”命令。 o 对于 Windows XP 和 2003,从所监视设备运行“wmiadap /f”命令。 80041003 - 访问被拒绝 原因 当提供的用户名不具备执行操作的足够访问权限时会发生此错误。 解决方案 1. 可能此用户不属于此主机计算机的管理员组。 2. 尝试将用户移动到工作站的管理员组。 3. 试用管理员(最好是域管理员)帐户。 80040154 - 没有注册 WMI 组件 原因 当远程 Windows 工作站中的 WMI 不可用时会遇到此错误。此问题在 Windows NT 中发生。如果 WMI 组件注册不正确,这类错误代码在较高版本的 Windows 中也可能发生。 解决方案 • 在远程工作站安装 WMI 核心。WMI 核心可从 Microsoft 网站下载。 • 通过在命令提示符执行以下命令注册 WMI DLL 文件: winmgmt /RegServer • 通过下载以下 exe 为 Windows NT 安装 WMI: http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=C174CFB1-EF67-471D-9277- 4C2B1014A31E 80080005 - WMI 服务中的内部执行故障 原因 在主机计算机中运行的 WMI 服务 (winmgmt.exe) 中存在某些内部执行故障时会发生此错误。该工作站中 WMI 储存库的最后更新可能失败。 解决方案 重新启动远程工作站中的 WMI 服务: 1. 选择开始 > 运行。 2. 键入 Services.msc 并点击确定。 3. 在打开的服务窗口中,选择 Windows Management Instrumentation 服务。 4. 右键点击并选择重新启动 8004106C - WMI 占用内存过多 原因 在 WMI 占用过多内存时会发生此错误。这可能由内存可用性低或 WMI 使用内存过多引起。 解决方案 • WMI 占用内存过多。 • 这可能由内存可用性低或 WMI 使用内存过多引起。 • 尝试重新启动或重新安装 wmi 服务。 8004100E - 无效命名空间 原因 命名空间编译器无效不是正常错误。可能没有正确安装使用命名空间的相关应用程序。 解决方案 • 尝试单独重新安装应用程序或 WMI 服务。 • 利用日志与 http://support.opmanager.com 联系。 80041017 - 无效查询 原因 “Query was not syntactically valid”不是正常错误。可能没有正确安装使用命名空间的相关应用程序。 解决方案 • 尝试单独重新安装应用程序或 WMI 服务。 • 利用日志与支持人员联系。