禁用windows自动更新

2024-03-12 11:28:10 浏览数 (2)

禁用系统更新的原因

1.电脑经常自动重启更新windows,每次更新转圈圈要等好久(有一次等了1-2小时都没反应)。

2.如果电脑上安装了很多插件,还要担心系统更新后环境是否不稳定等,这会造成很大困扰(如果可以我愿永远停留在win7)。

3.系统更新意味着在原有的代码上增加新的代码,会使操作系统变得更加臃肿。

4.更新的很多功能用不上,不实用。

常规禁用系统更新的方法原理

1.通过系统组策略将自动更新禁止(但家庭版系统没有组策略编辑器)。

2.通过禁用windows 相关更新服务将更新禁止。

注:实际测试过程中发现以上方式配置后短时间内系统不会更新了,但使用一段时间后发现系统自动更新服务又偷偷被启用了,且每次关机/重启都会强制要求进行更新,电脑又恢复了一如往常的强制要求自动更新的情况。

彻底禁用系统更新的方法原理

1.使用批处理的方式自动执行禁用系统更新服务,删除更新日志及偷偷下载的更新安装包,修改注册表禁止系统自动更新。

2.如果系统没有组策略编辑器,使用批处理代码向系统添加组策略编辑器。

3.通过将批处理设置为开机自启动,每次电脑开机后自动运行一次从而解决系统频繁自启动自动更新相关问题。

注:因此批处理为自用,已在我的电脑上使用了2-3年了,所以可放心使用,不会对系统产生任何影响。

彻底禁用系统更新的具体实现步骤

一、创建禁用系统更新批处理

在电脑新建扩展名为.bat的文件,选中该文件右键以记事本方式打开,将以下源代码复制粘贴至该文件保存:

代码语言:javascript复制
@echo off 
title 操作系统自动更新停止程序
@echo 提升管理员权限
%1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c %~s0 ::","","runas",1)(window.close)&&exit
@echo 执行chcp 65001,将解码方式设置成UTF-8
chcp 65001
@echo 停止系统更新相关服务
@net stop wscsvc
@net stop wuauserv
@net stop SDRSVC
@net stop WpnService
@net stop Sense
@net stop WdNisSvc
@net stop WinDefend
@net stop UsoSvc
@net stop dosvc
@echo 禁用系统更新相关服务
@sc config wscsvc start=DISABLED
@sc config wuauserv start=DISABLED
@sc config SDRSVC start=DISABLED
@sc config WpnService start=DISABLED
@sc config Sense start=DISABLED
@sc config WdNisSvc start=DISABLED
@sc config WinDefend start=DISABLED
@sc config UsoSvc start=DISABLED
@sc config dosvc start=DISABLED
@echo 禁用防火墙相关服务
@netsh firewall set opmode mode=disable profile=ALL
@netsh firewall set opmode mode=disable
@echo 定期删除windows更新日志,以及windows偷偷下载的更新安装包(del命令 rd命令,先刪除文件,再进入temp文件夹删除目录)
del /s /Q C:WindowsSoftwareDistributionDownload
cd C:WindowsSoftwareDistributionDownload
rd /s /q C:WindowsSoftwareDistributionDownload
@echo 将在Windows 10家庭版上启用组策略编辑器
pushd “%~dp0”
dir /b %SystemRoot%servicingPackagesMicrosoft-Windows-GroupPolicy-ClientExtensions-Package~3*.mum >List.txt
dir /b %SystemRoot%servicingPackagesMicrosoft-Windows-GroupPolicy-ClientTools-Package~3*.mum >>List.txt
for /f %%i in (‘findstr /i . List.txt 2^>nul’) do dism /online /norestart /add-package:“%SystemRoot%servicingPackages%%i”
@echo 准备修改注册表自动更新设置...
REG ADD HKLMSOFTWAREPoliciesMicrosoftWindowsWindowsUpdateAU /v AUOptions /t REG_DWORD /d 2 /f 
REG ADD HKLMSOFTWAREMicrosoftWindowsCurrentVersionPoliciesExplorer /v NoWindowsUpdate /t REG_DWORD /d 1  /f
@echo 需要手动修改本地组策略的两个设置。打开本地组策略成功后执行以下步骤: 计算机配置-管理模板-Windows组件-Windosw Update(更新),在右侧将“配置自动更新”和“允许自动更新立即安装”的状态改为“已禁用”
gpedit.msc
echo.
echo.
echo.
echo.*****本次自动更新禁用完成,但windows仍会强制更新,故需将本程序加入开启自启动,使本程序每次开机自运行,请按键盘任意键关闭!*****
echo.
echo.
echo.
pause

注:可根据需要自行删减代码。例如不想禁用防火墙,则将以下防火墙相关代码删除即可。

代码语言:javascript复制
@echo 禁用防火墙相关服务
@netsh firewall set opmode mode=disable profile=ALL
@netsh firewall set opmode mode=disable

二、初次执行禁用系统更新批处理

1.运行新建的.bat批处理。

2.初次运行批处理会自动打开组策略编辑器,按命令行提示在组策略编辑器下找到”计算机配置----->管理模板----->Windows组件----->Windosw Update(更新)“,打开其中的“配置自动更新”和“允许自动更新立即安装”,将状态全部改为”已禁用“。

三、设置禁用系统更新批处理

1.编辑.bat批处理文件,删除以下代码以实现批处理在今后运行时不再自动打开组策略编辑器,且运行后自动关闭批处理:

代码语言:javascript复制
@echo 准备修改注册表自动更新设置...
REG ADD HKLMSOFTWAREPoliciesMicrosoftWindowsWindowsUpdateAU /v AUOptions /t REG_DWORD /d 2 /f 
REG ADD HKLMSOFTWAREMicrosoftWindowsCurrentVersionPoliciesExplorer /v NoWindowsUpdate /t REG_DWORD /d 1  /f
@echo 需要手动修改本地组策略的两个设置。打开本地组策略成功后执行以下步骤: 计算机配置-管理模板-Windows组件-Windosw Update(更新),在右侧将“配置自动更新”和“允许自动更新立即安装”的状态改为“已禁用”
gpedit.msc
pause

2.将编辑后的.bat批处理放在你认为合适的路径,并将.bat批处理设置为开机自启动即可。

0 人点赞