彻底禁用win10更新功能及其powershell代码
Posted EbowTang
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了彻底禁用win10更新功能及其powershell代码相关的知识,希望对你有一定的参考价值。
以下禁用步骤实际上是微软提供的方法,亲测有效:
一,禁用windows Update的更新,参考步骤如下:
1. 在windows logo右键输入:gpedit.msc打开本地组策略
2,路径:计算机配置-管理模板-Windows组件-Windows 更新
策略名称:指定internal Microsoft更新服务日志
设置 :Enabled (只需要配置错误的URL,例如“ ..”)
3,路径:计算机配置-管理模板-Windows组件-Windows 更新
策略名称:删除使用所有 Windows 更新功能的访问权限
设置: Enabled
4,路径:计算机配置-管理模板-Windows组件-Windows 更新
策略名称:配置自动更新
设置: Disable
5,路径:计算机配置-管理模板-Windows组件-Windows 更新
策略名称:不允许更新延迟策略对 Windows 更新执行扫描
设置: Enabled
6,路径:计算机配置-管理模板-系统
策略名称:指定可选组件安装和组件修复的设置
设置: Enabled
7,设置完成过后,以管理员权限打开CMD.,执行gpupdate /force 命令。
二,将上面的操作利用powershell化,代码如下:
我将其写成了powershell函数,
#系统自动更新禁用
Function DisableWindowsUpdate
Write-Output "start to disable windows update"
Stop-Service -Name "Windows Update"
#net stop wuauserv
#sc config wuauserv start=disable
#net stop trustedinstaller
#sc config trustedinstaller start=disable
#组策略1:启用指定internal Microsoft更新服务位置
If (!(Test-Path "HKLM:\\SOFTWARE\\Policies\\Microsoft\\Windows\\WindowsUpdate\\AU"))
New-Item -Path "HKLM:\\SOFTWARE\\Policies\\Microsoft\\Windows\\WindowsUpdate\\AU" -Force | Out-Null
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Policies\\Microsoft\\Windows\\WindowsUpdate\\AU" -Name "UseWUServer" -Type DWord -Value 1
#组策略2:禁用配置自动更新
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Policies\\Microsoft\\Windows\\WindowsUpdate\\AU" -Name "NoAutoUpdate" -Type DWord -Value 1
#组策略3:删除使用所有 Windows 更新功能的访问权限
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Policies\\Microsoft\\Windows\\WindowsUpdate\\AU" -Name "SetDisableUXWUAccess" -Type DWord -Value 1
#组策略1:故意执行错误配置
If (!(Test-Path "HKLM:\\SOFTWARE\\Policies\\Microsoft\\Windows\\WindowsUpdate"))
New-Item -Path "HKLM:\\SOFTWARE\\Policies\\Microsoft\\Windows\\WindowsUpdate" -Force | Out-Null
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Policies\\Microsoft\\Windows\\WindowsUpdate" -Name "WUServer" -Type String -Value "..."
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Policies\\Microsoft\\Windows\\WindowsUpdate" -Name "WUStatusServer" -Type String -Value "..."
#组策略4:不允许更新延迟策略对 Windows 更新执行扫描
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Policies\\Microsoft\\Windows\\WindowsUpdate" -Name "DisableDualScan" -Type DWord -Value 1
#组策略5:策略名称:指定可选组件安装和组件修复的设置
If (!(Test-Path "HKLM:\\Software\\Microsoft\\Windows\\CurrentVersion\\Policies\\Servicing"))
New-Item -Path "HKLM:\\Software\\Microsoft\\Windows\\CurrentVersion\\Policies\\Servicing" -Force | Out-Null
Set-ItemProperty -Path "HKLM:\\Software\\Microsoft\\Windows\\CurrentVersion\\Policies\\Servicing" -Name "RepairContentServerSource" -Type DWord -Value 2
Set-ItemProperty -Path "HKLM:\\Software\\Microsoft\\Windows\\CurrentVersion\\Policies\\Servicing" -Name "UseWindowsUpdate" -Type DWord -Value 2
Write-Output "disable windows update successful"
#系统自动更新禁用的反向操作
Function EnableWindowsUpdate
Write-Output "start to enable windows update"
Start-Service -Name "Windows Update"
#组策略1:禁用指定internal Microsoft更新服务位置
If (!(Test-Path "HKLM:\\SOFTWARE\\Policies\\Microsoft\\Windows\\WindowsUpdate\\AU"))
New-Item -Path "HKLM:\\SOFTWARE\\Policies\\Microsoft\\Windows\\WindowsUpdate\\AU" -Force | Out-Null
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Policies\\Microsoft\\Windows\\WindowsUpdate\\AU" -Name "UseWUServer" -Type DWord -Value 0
#组策略2:启动配置自动更新
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Policies\\Microsoft\\Windows\\WindowsUpdate\\AU" -Name "NoAutoUpdate" -Type DWord -Value 0
#组策略3:不删除使用所有 Windows 更新功能的访问权限
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Policies\\Microsoft\\Windows\\WindowsUpdate\\AU" -Name "SetDisableUXWUAccess" -Type DWord -Value 0
#组策略1:恢复错误配置
If (!(Test-Path "HKLM:\\SOFTWARE\\Policies\\Microsoft\\Windows\\WindowsUpdate"))
New-Item -Path "HKLM:\\SOFTWARE\\Policies\\Microsoft\\Windows\\WindowsUpdate" -Force | Out-Null
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Policies\\Microsoft\\Windows\\WindowsUpdate" -Name "WUServer" -Type String -Value ""
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Policies\\Microsoft\\Windows\\WindowsUpdate" -Name "WUStatusServer" -Type String -Value ""
#组策略4:允许更新延迟策略对 Windows 更新执行扫描
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Policies\\Microsoft\\Windows\\WindowsUpdate" -Name "DisableDualScan" -Type DWord -Value 0
#组策略5:策略名称:指定可选组件安装和组件修复的设置
If (!(Test-Path "HKLM:\\Software\\Microsoft\\Windows\\CurrentVersion\\Policies\\Servicing"))
New-Item -Path "HKLM:\\Software\\Microsoft\\Windows\\CurrentVersion\\Policies\\Servicing" -Force | Out-Null
Remove-ItemProperty -Path "HKLM:\\Software\\Microsoft\\Windows\\CurrentVersion\\Policies\\Servicing" -Name "RepairContentServerSource"
Remove-ItemProperty -Path "HKLM:\\Software\\Microsoft\\Windows\\CurrentVersion\\Policies\\Servicing" -Name "UseWindowsUpdate"
Write-Output "enable windows update successful"
三,制作成工具
注意:必须在windows未检测到补丁的情况下执行本功能项,如果已经检测到补丁需要下载,请先将其完成更新。
禁用后表现为如下现象,将永远无法找到补丁源:
如果你需要重新开启自动更新功能,可以使用该工具解除禁用
解除禁用后重启即可恢复下载补丁
四,工具的下载链接和源代码如下:
阿里云盘链接(有源码):https://www.aliyundrive.com/s/fTSZMmQc4WM
百度网盘链接:https://pan.baidu.com/s/1QnoYc4BKsLswKhbij_Do8g
提取码:r8lv
以上是关于彻底禁用win10更新功能及其powershell代码的主要内容,如果未能解决你的问题,请参考以下文章