PowerShell Hide-WUUpdate隐藏特定的KB更新

时间:2017-09-07 16:49:37

标签: powershell

尝试使用Hide-WUUpdate隐藏特定的KB更新以下是我正在尝试的内容

Hide-WUUpdate –KBArticleID “KB4034664” -ComputerName PCNAME –Confirm:$false

我得到以下输出

WARNING: You haven't privileges to make this. Try start an eleated Windows PowerShell console

我尝试过使用#34; Elevated Powershell"有什么想法吗?

按建议运行后

Hide-WUUpdate –KBArticleID “KB4034664” -ComputerName PCNAME –Confirm:$false -Debuger

我得到了以下输出。

DEBUG: STAGE 0: Prepare environment 
DEBUG: Check if ComputerName in set
DEBUG: STAGE 1: Get updates list
DEBUG: Create Microsoft.Update.Session object for PCNAME
DEBUG: Create Microsoft.Update.Session.Searcher object for PCNAME
DEBUG: Set source of updates to default (for PCNAME) Windows Update
DEBUG: Set pre search criteria: IsInstalled = 0
DEBUG: Search criteria is: IsInstalled = 0
DEBUG: Set post search criteria: Dell Inc. - Bus Controllers and Ports, Display - Dell 1907FP(Analog)
DEBUG: Set post search criteria: KBArticleIDs = 'KB4034664'
DEBUG: UpdateAccess: false
DEBUG: Set post search criteria: LSI - Storage - Dell SAS 6/iR Integrated Workstation Controller
DEBUG: Set post search criteria: KBArticleIDs = 'KB4034664'
DEBUG: UpdateAccess: false
DEBUG: Set post search criteria: Update for Windows 7 for x64-based Systems (KB2574819)
DEBUG: Set post search criteria: KBArticleIDs = 'KB4034664'
DEBUG: UpdateAccess: false
DEBUG: Set post search criteria: Update for Windows 7 for x64-based Systems (KB2592687)
DEBUG: Set post search criteria: KBArticleIDs = 'KB4034664'
DEBUG: UpdateAccess: false
DEBUG: Set post search criteria: Update for Windows 7 for x64-based Systems (KB2830477)
DEBUG: Set post search criteria: KBArticleIDs = 'KB4034664'
DEBUG: UpdateAccess: false
DEBUG: Set post search criteria: Update for Windows 7 for x64-based Systems (KB3080079)
DEBUG: Set post search criteria: KBArticleIDs = 'KB4034664'
DEBUG: UpdateAccess: false
DEBUG: Set post search criteria: Update for Windows 7 for x64-based Systems (KB3102429)
DEBUG: Set post search criteria: KBArticleIDs = 'KB4034664'
DEBUG: UpdateAccess: false
DEBUG: Set post search criteria: 2017-08 Security Monthly Quality Rollup for Windows 7 for x64-based System
s (KB4034664)
DEBUG: Set post search criteria: KBArticleIDs = 'KB4034664'
DEBUG: Convert size
DEBUG: Convert KBArticleIDs
WARNING: You haven't privileges to make this. Try start an eleated Windows PowerShell console.
DEBUG: Set post search criteria: August, 2017 Preview of Quality Rollup for .NET Framework 3.5.1, 4.5.2, 4.
6, 4.6.1, 4.6.2, 4.7 on Windows 7 and Server 2008 R2 for x64 (KB4035036)
DEBUG: Set post search criteria: KBArticleIDs = 'KB4034664'
DEBUG: UpdateAccess: false
DEBUG: Set post search criteria: 2017-08 Preview of Monthly Quality Rollup for Windows 7 for x64-based Syst
ems (KB4034670)
DEBUG: Set post search criteria: KBArticleIDs = 'KB4034664'
DEBUG: UpdateAccess: false'

远程计算机上启用了Powershell远程IS。

2 个答案:

答案 0 :(得分:2)

假设this是您正在使用的脚本,看起来错误消息来自第550行。该警告消息来自隐藏实际错误的错误陷阱。我建议将代码更改为以下内容:

If ($pscmdlet.ShouldProcess($Computer, "$StatusName $($Update.Title)?")) {
    Try {
        $Update.IsHidden = $HideStatus
    }
    Catch {
        Write-Warning "You haven't privileges to make this. Try start an eleated Windows PowerShell console."
        throw ($_)
    }

} #$pscmdlet.ShouldProcess($Computer,"Hide $($Update.Title)?")

现在您应该能够看到实际的错误消息,而不是脚本作者决定应该获得的友好,无信息的警告。

答案 1 :(得分:0)

在分析了所有信息后,我相信您没有所需的权限/访问权限来远程执行此操作。

您的脚本是第三方脚本。调试信息不​​是特别提供信息。所有可以说的是脚本在更新时设置隐藏属性失败。

您最好的选择是启用Powershell Remoting 以确保您具有运行此功能所需的远程访问权限。然而,由于某些Microsoft安全限制,它仍有可能无法正常工作。在这种情况下,我建议您安装和配置 Microsoft Windows Server Update Services ,这样您就可以执行此任务。