我已安装 Windows Server 2012r2 2012的完整 GUI,并为服务器管理器安装了 DFS 管理插件。我想使用Powershell 的 DFSR 模块监视 DFS 复制。但是,此模块及其相关命令在 Powershell 中不可用:
PS C:\Windows\system32> Import-Module DFSR
Import-Module : The specified module 'DFSR' was not loaded because no valid module file was found in any module directory.
以下是 Powershell 命令输出的两个片段,Get-WindowsFeature
显示已安装的 DFS 功能。
[X] File And Storage Services FileAndStorage-Services Installed
[X] File and iSCSI Services File-Services Installed
[X] File Server FS-FileServer Installed
[ ] BranchCache for Network Files FS-BranchCache Available
[ ] Data Deduplication FS-Data-Deduplication Available
[ ] DFS Namespaces FS-DFS-Namespace Available
[X] DFS Replication FS-DFS-Replication Installed
[ ] File Server Resource Manager FS-Resource-Manager Available
[ ] File Server VSS Agent Service FS-VSS-Agent Available
[ ] iSCSI Target Server FS-iSCSITarget-Server Available
[ ] iSCSI Target Storage Provider (VDS and V... iSCSITarget-VSS-VDS Available
[ ] Server for NFS FS-NFS-Service Available
[X] Storage Services Storage-Services Installed
...
[X] File Services Tools RSAT-File-Services Installed
[X] DFS Management Tools RSAT-DFS-Mgmt-Con Installed
[ ] File Server Resource Manager Tools RSAT-FSRM-Mgmt Available
[ ] Services for Network File System Man... RSAT-NFS-Admin Available
[ ] Share and Storage Management Tool RSAT-CoreFile-Mgmt Available
如何在 Powershell 中安装和访问 DFSR 模块?
编辑:我刚刚发现服务器实际上运行的是 Windows Server 2012,而不是 2012r2。这就是内置 DFSR 模块不可用的原因。更新到 WMF/Powershell 5.1 不会使新的 DFSR 模块可用。我已相应地更新了此帖子的标题、问题和标签。一种解决方法是安装第三方 DFSR 模块。
答案1
似乎无法加载 DLL 类型。您可以尝试验证 DLL 文件是否位于 Dfsr 文件夹中,如果是,请打开 PowerShell 并运行以下命令:
Add-Type -Path C:\Windows\system32\WindowsPowerShell\v1.0\Modules\dfsr\DfsrTypes.dll
如果出现错误,请尝试右键单击 DLL 文件并转到属性,查看是否有“解除阻止”按钮 - 如果有,请尝试解除阻止。
如果仍然不起作用,请告诉我。它在 Windows 8/2012 上对我有效,因此可能是配置不同。我会尝试一些方法,看看是否可以重现该错误。
经过麦克·沃克 从画廊 Technet
答案2
来自 powershell echo $env:psmodulePath
这将为您提供模块文件夹路径
DFSr 模块可在此处获得: https://gallery.technet.microsoft.com/scriptcenter/PowerShell-DFS-Replication-e1c8d772
该链接中列出了说明。