询问者
Windows Server 2012 R2 服务器管理里提示数据检索失败和Powershell部分命令执行报错

问题
-
大家好!
我最近在使用Server 2012 R2 时遇到两个问题:
1、系统启动后在服务器管理器的通知栏提示“联机-数据检索失败”,在事件查看器 Microsoft-Windows-ServerManager-ManagementProvider/Operational下能看到如下报错
无法查询 bpa xpath (Microsoft/Windows/FileServices:$reports$\*\Result.xml:/ResultDatabase/Result) 的结果。错误: 连到系统上的设备没有发挥作用。,上一个错误: 系统找不到指定的路径。。2、还有个问题就是我现在在用Powershell的时执行Get-Disk会提示如下提示
Get-Disk : 无法连接到 CIM 服务器。找不到
所在位置 行:1 字符: 1
+ Get-Disk
+ ~~~~~~~~
+ CategoryInfo : ResourceUnavailable: (MSFT_Disk:String) [Get-Disk], CimJobE
xception
+ FullyQualifiedErrorId : CimJob_BrokenCimSession,Get-Disk请问这两个问题有必然联系没,还有就是这两个问有什么解决方法;谢谢!!
全部回复
-
你好,
谢谢你的提问。
1. 请问你的windows server2012r2是否是最近升级的。根据论坛上之前出现的相同问题,都是由于从低版本服务器系统更新到windows 2012r2引起的。
你可以尝试使用以下方式进行解决:
找到注册表:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WINEVT\Channels\Microsoft-Windows-DxpTaskRingtone/Analytic]
将:Microsoft-Windows-DxpTaskRingtone/Analytic目录项进行备份,然后删除它。重启或刷新服务器管理器,问题解决。仪表板中的角色和服务器组都变成绿色。可参考以下链接:
https://www.itread01.com/content/1534394294.html
2. 请问你是否尝试使用管理员身份打开powershell运行这个命令。
get-disk是完整的命令输入吗?如果不是的话请尝试贴上完整的命令。
最好的祝福,
Just do it.
-
你好,
1、不是低版本升级过上来的,第一次安装时就是 windows server 2012 R2 这个版本;(倒是每月补丁有按时更新)另外注册表下我只找到这个目录项:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WINEVT\Channels\Microsoft- Windows-DxpTaskSyncProvider/Analytic
2、用过一样的结果,也不是所有命名都不能用;
PS C:\Windows\system32> $PSDrive[1]
Name Used (GB) Free (GB) Provider Root C
n
---- --------- --------- -------- ---- -
C FileSystem C:\ 2
PS C:\Windows\system32> Get-Disk
Get-Disk : 无法连接到 CIM 服务器。找不到
所在位置 行:1 字符: 1
+ Get-Disk
+ ~~~~~~~~
+ CategoryInfo : ResourceUnavailable: (MSFT_Disk:String) [Get-Disk], CimJobE
xception
+ FullyQualifiedErrorId : CimJob_BrokenCimSession,Get-Disk
PS C:\Windows\system32>
-
Lee 你好
感谢你的回复,$psdrive 这个变量是自己定义的,其次使用你提供命令会提示找不到;结果如下:
PS C:\Windows\system32> Get-WmiObject -Class Win32_logicaldisk
Get-WmiObject : 找不到
所在位置 行:1 字符: 1
+ Get-WmiObject -Class Win32_logicaldisk
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (:) [Get-WmiObject],ManagementException
+ FullyQualifiedErrorId : GetWMIManagementException,Microsoft.PowerShell.Commands.GetWmiObjectCommand
PS C:\Windows\system32> $PSVersionTable
Name Value
---- -----
PSVersion 4.0
WSManStackVersion 3.0
SerializationVersion 1.1.0.1
CLRVersion 4.0.30319.42000
BuildVersion 6.3.9600.19170
PSCompatibleVersions {1.0, 2.0, 3.0, 4.0}
PSRemotingProtocolVersion 2.2我远程到另一台Win Server 2012 R2 的机器上就可以运行
PS C:\Windows\system32> Enter-PSSession -ComputerName 192.168.3.251 -Credential yl
[192.168.3.251]: PS C:\Users\yl\Documents> Get-WmiObject -Class Win32_logicaldisk
DeviceID : C:
DriveType : 3
ProviderName :
FreeSpace : 112176312320
Size : 209347145728
VolumeName :
DeviceID : D:
DriveType : 3
ProviderName :
FreeSpace : 240033611776
Size : 374935121920
VolumeName :
DeviceID : F:
DriveType : 5
ProviderName :
FreeSpace :
Size :
VolumeName :
[192.168.3.251]: PS C:\Users\yl\Documents> $Drive = Get-PSDrive
[192.168.3.251]: PS C:\Users\yl\Documents> $Drive[1]
Name Used (GB) Free (GB) Provider Root CurrentLocation
---- --------- --------- -------- ---- ---------------
C 90.50 104.47 FileSystem C:\ Users\yl\Documents
[192.168.3.251]: PS C:\Users\yl\Documents> $PSVersionTable
Name Value
---- -----
PSVersion 4.0
WSManStackVersion 3.0
SerializationVersion 1.1.0.1
CLRVersion 4.0.30319.42000
BuildVersion 6.3.9600.19170
PSCompatibleVersions {1.0, 2.0, 3.0, 4.0}
PSRemotingProtocolVersion 2.2 -
你好,
谢谢你的提问。
以前是解决get-wmiobject命令返回找不到错误的解决方案。
1. 首先尝试运行以下命令。
winmgmt /verifyrepository
2. 如果仍然不起作用的话,需要停止Wmi管理服务。
net stop winmgmt
3. 然后重命名现有的WMI存储库目录。
%windir%\System32\Wbem\Repository
4.最后,启动wmi服务
net start winmgmt
5. 除此之外您可以尝试重新注册Wbem目录中的所有DLL和可执行文件。
截图如下:
最好的祝福,
Lee
Just do it.
- 已建议为答案 LeeSeenLiMicrosoft contingent staff 2019年7月31日 7:42
-
你好,
你那个命令试过了,提示如下:
PS C:\Windows\system32> winmgmt /verifyrepository
WMI 存储库验证失败
错误代码: 0x80041002
设备: WMI
描述: 找不到因为这台还跑着业务(SQL),按2的处理方法“重建存储库”是否对现在跑着的业务(SQL)有影响;
重建存储库。
WMI Repository 是 WMI 提供者创建的类定义的集中存储位置,它位于 %systemDrive%\%windir%\system32\wbem\Repository 文件夹。如果感觉存储库已经损坏,您应该重建它。注意:这么做可能会导致存储库中的 WMI 信息丢失。您可能需要手工恢复这些信息,方法是运行可以将信息放入存储库的特定应用程序。要重建存储库,请按以下步骤操作:
1. 停止 WMI 服务。
2. 在命令行键入以下命令:
cd /d %windir%\system32\wbem
rename Repository Rep_bak
3. 这个命令将会重命名包含 WMI Repository 的文件。重命名文件之后,操作系统将无法找到存储库。在这种情况下,Windows 会在用户下次访问 WMI 的时候尝试重建存储库。如果 AutoRecover(自动恢复)机制失败,您可以尝试手工重建存储库。
通过 WMI AutoRecover 机制重建存储库:
• 建立一个到 Root\Default 的 WMI 连接;可以通过运行一段脚本或者类似 Wbemtest.exe 的基于 WMI 的工具做到这一点。如果连接成功,存储库就会被重建。如果连接失败,请尝试手工重建存储库。
是按上面的方法处理吗?