当前位置: 首页 > news >正文

在WSUS中删除更新

WSUS中更新的管理逻辑

如果你探索过WSUS控制台界面,就会发现WSUS只给你提供了批准(Approve)和拒绝(Decline)更新的选项,并无办法删除更新。
在这里插入图片描述
如果你去WSUS服务器清理导向(WSUS Server Cleanup Wizard)中,也会发现只有删除已被拒绝三十天以上更新的选项。
在这里插入图片描述

那如果你想立刻删除一个更新,或者不小心同步(Synchronise)了不必要微软产品的更新,又该怎么做?

绕过控制台删除更新

好在,微软仍然给我们留下了一些空间来绕过这个愚蠢的强制设计。我们可以通过Powershell命令强行删除更新。

第1步:拒绝不必要的更新

首先,你需要在控制台中选中所有你不想要的更新,并通过右键拒绝他们。该控制台的设计非常老旧,并无直接的多选按钮。
要想连续多选,点击起始项,按住Shift键,再点击末尾项。
要想在不取消选择其它项的情况下单选,按住Ctrl键,单击所有你要勾选的项。
在这里插入图片描述

第2步:删除更新元数据

这将删除更新,使它们不会在控制台里显示,但不会删除关于他们的更新安装包本身(如果你曾下载过它们;它们将被储存在WSUS内容文件夹内)。不过不需要担心,这些安装包也可以被删除。
将下面的代码保存为一个后缀为.ps1的文本文件 然后在Windows Powershell ISE中执行。你将能够列出当前所有的被拒更新。

[reflection.assembly]::LoadWithPartialName("Microsoft.UpdateServices.Administration")
$wsus = [Microsoft.UpdateServices.Administration.AdminProxy]::GetUpdateServer();
$declined=$wsus.GetUpdates() | Where {$_.IsDeclined -eq $true}
$declined.Count

在这里插入图片描述
如果该脚本无误地列出了你期望看到的被拒更新,那么接下来就是时候删除它们了。使用下面是Powershell脚本删除更新。

[reflection.assembly]::LoadWithPartialName("Microsoft.UpdateServices.Administration")
$wsus = [Microsoft.UpdateServices.Administration.AdminProxy]::GetUpdateServer();
$loopcontrol=$wsus.GetUpdates() | Where {$_.IsDeclined -eq $true}
$control=$loopcontrol.Count
DO{
Write-Host "$control left to go"
$declined=$wsus.GetUpdates() | Where {$_.IsDeclined -eq $true}| Select-Object -First 1000
$declined| ForEach-Object {$wsus.DeleteUpdate($_.Id.UpdateId.ToString()); Write-Host $_.Title removed}
$control=$control-1000
} Until ($control -lt 0)

第3步:删除更新安装包(WSUS Content)

到目前为止,我们只删除了更新在WSUS数据库中的元数据,因此它们不再在WSUS控制台中显示。然而,它们对应的更新安装包,如果你下载了的话,仍保留在WSUS内容文件夹中没有删除。
要想删除安装包,打开WSUS服务器清理导向,勾选删除不被任何更新或下游服务器需要的更新文件。这将清理那些在数据库中找不到对应元数据的更新安装包。
在这里插入图片描述

如果你选择同步了非必要微软产品的更新…

你可以日后很轻松地在产品和分类中作出更改。
在这里插入图片描述

参考资料

必须注明的是,本文中的Powershell脚本并非我所创,而是由这篇帖子里的用户kevinhughes2所编写。

http://www.lryc.cn/news/490093.html

相关文章:

  • 5分钟轻松搭建Immich图片管理软件并实现公网远程传输照片
  • 数据集-目标检测系列- 昙花(昙花一现) 检测数据集 epiphyllum >> DataBall
  • 开源POC库推荐
  • vue3项目部署在阿里云轻量应用服务器上
  • javascrip页面交互
  • 【U盘车载音乐】某宝198的3068首车载专用音乐合集【高音质】24G
  • 【论文阅读】WGSR
  • 打造智能化在线教育平台详解:教培网校APP的架构设计与实现
  • 使用同一个链接,如何实现PC打开是web应用,手机打开是一个H5应用
  • STM32-- 调试 -日志输出
  • Python爬虫案例八:抓取597招聘网信息并用xlutils进行excel数据的保存
  • 小试牛刀-Anchor安装和基础测试
  • 51单片机基础01 单片机最小系统
  • RocketMQ文件刷盘机制深度解析与Java模拟实现
  • python语言基础-5 进阶语法-5.3 流式编程
  • JVM性能分析工具JProfiler的使用
  • 面试题: Spring中的事务是如何实现的?
  • vue2-代理服务器插槽
  • (python)unittest框架
  • 网安基础知识|IDS入侵检测系统|IPS入侵防御系统|堡垒机|VPN|EDR|CC防御|云安全-VDC/VPC|安全服务
  • 面试小结(一)
  • 笔试-笔记2
  • html5复习二
  • 大模型呼入机器人系统如何建设?
  • docker 部署 kvm 图形化管理工具 WebVirtMgr
  • 【Unity How】Unity中如何实现物体的匀速往返移动
  • Block Successive Upper Bound Minimization Method(BSUM)算法
  • 力扣2388. 将表中的空值更改为前一个值
  • 【从零开始的LeetCode-算法】3233. 统计不是特殊数字的数字数量
  • Redis配置主从架构、集群架构模式 redis主从架构配置 redis主从配置 redis主从架构 redis集群配置