ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

一键禁用Windows自动更新与Defender的批处理方案

一键禁用Windows自动更新与Defender的批处理方案 1. 为什么那么多人想一口气关掉这两个顽固分子先说个真实经历。前阵子接手一台老本子4GB内存机械硬盘原本只是拿来给家里老人看看网页、用用Office。结果每次开机硬盘狂转半小时风扇呼呼响一看进程Windows Update和Antimalware Service Executable轮流霸占CPU和磁盘IO。更糟的是Windows Defender还有一个通病——对国内常见的绿色软件、破解工具、注册机特别敏感动不动就给你隔离这边正用着CAD、Matlab那边文件就没了。最后实在受不了我直接写了个批处理加注册表方案把自动更新和安全中心全部摁死机器瞬间活过来。这期把这套方案完整拆开讲。既有最傻瓜的一键批处理也有手动修改的思路适合所有被自动更新折腾过、被Defender误杀过文件的朋友参考。你不需要多高深的计算机知识照着抄就行但我会把每一步背后的原理讲清楚免得你哪天想恢复的时候找不到门。先说清楚这玩意儿不是什么黑客技巧就是Windows给系统管理员留的后门——组策略、服务管理、注册表都属于正经系统配置手段。家用电脑、单位电脑、虚拟机、老旧笔记本都适用。唯一的前提是你确实想关而且知道关掉之后该怎么手动做事。2. 先搞清楚你对抗的是什么2.1 自动更新为什么这么讨厌Windows Update本身并不坏它负责推送安全补丁、驱动更新和功能升级。问题是它有几个惹人烦的特性第一驱动更新从不问用户意见。显卡驱动、声卡驱动、网卡驱动说换就换更新完经常出现兼容性问题比如老显卡装上新驱动直接黑屏、声卡驱动导致杂音、打印驱动更新后打印机罢工。85%以上的驱动问题都出在强制推送更新的驱动上。第二更新过程不可控。我遇到过更新装到一半卡在配置Windows更新 35%一个半小时不动也遇到过正急着用电脑做演示系统提示你将在15分钟后自动重启。真等它重启完演示早结束了。第三对低配机器极不友好。老电脑机械硬盘本来就读写慢Windows Update一扫描一大片元数据磁盘占用直接飙到100%日常操作卡成PPT。Windows 10的更新策略比Win7激进得多原因也很简单微软把系统更新当成了产品服务的一部分不再是可以选择关闭的附属功能。对我们技术用户来说这就是一场系统主动权争夺战。2.2 Windows Defender安全中心的真面目Windows Defender在Win10里变成了集成式的Windows安全中心防护模块包括病毒和威胁防护Defender杀毒、防火墙、应用和浏览器控制、设备安全性等。它的问题不在于防御能力而在于误报行为。默认情况下Defender会扫描所有运行进程、下载文件和脚本它对签名不熟的程序判定非常激进。特别是下面的场景运行破解版、绿色版、学习版软件比如CATIA、Matlab等专业软件的激活工具下载自解压exe压缩包使用注册机、补丁、内存修改工具调试自己写的C#/Python脚本有些编译器生成的临时文件也会被拦Defender把这些一律当潜在不受欢迎应用处理一键隔离还不能从隔离区恢复或者恢复了马上又被清掉。这时候你只能去关闭实时保护、篡改防护甚至注册表干预。而Win10安全中心又有个机制它会定期把实时保护悄悄重新打开。3. 一键禁用方案的完整设计3.1 禁用思路怎么做到一键自动更新和Defender是两个独立体系但都受同一个核心机制控制Windows Management InstrumentationWMI和系统服务。所以要一键关掉光改一个地方是不够的得组合拳。这套方案要做的是四件事停掉相关底层服务包括Windows Update服务wuauserv、Windows Defender服务WinDefend、安全中心服务SecurityCenter等修改服务启动类型为禁用或手动防止系统重新拉起通过注册表禁用Defender的实时保护和篡改防护通过组策略或注册表设置更新策略阻止系统自动下载和安装更新把四步打包成一个批处理文件双击执行就能一次全部搞定这就叫一键。3.2 为什么优先选批处理而不是第三方工具网上有一堆Windows更新一键禁用工具比如Windows Update Blocker、Disable Win Update等。这类工具本质上也是修改服务状态和注册表但有几个问题部分工具内置广告或捆绑推广个别工具需要常驻后台才能维持效果本身就占资源第三方工具的恢复功能未必完整卸载有的干脆不提供不了解来源的工具本身就有安全风险在Win10更新后某些工具可能失效得等作者更新自己写批处理最大的好处是可控。你想禁哪些、保留哪些、什么时候恢复自己说了算。而且代码就几十行逻辑清晰出了问题自己也能排查。这也是本篇文章的出发点——授人以渔。3.3 方案的适用边界与恢复承诺需要提前说明这套方案适合个人用户在自己电脑上操作。如果机器是公司统一配发的最好先问一下IT管理员如果你是在虚拟机里测试可以放心折腾。做完之后你失去了什么必须心里有数系统不会自动打安全补丁意味着新漏洞无法及时被修复Defender不再实时监控病毒只能靠你手动查杀。但这不意味着你的电脑会裸奔——你可以装第三方杀毒软件火绒、360国际版、卡巴免费版都是选择或者养成定期手动更新系统的习惯比如一个月开一次更新。恢复的办法我会在文章最后给出一键恢复脚本也一并写好。4. 核心细节解析与实操要点4.1 服务禁用哪些服务可以安全停掉先列清单这是整篇文章的干货核心。以下服务的注册表项都在这个路径下HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\也就是服务管理面板services.msc里能看到的那批。服务名称服务显示名作用能否禁用禁用后的影响wuauservWindows Update系统更新主服务可以无法检查和安装更新UsoSvcUpdate Orchestrator Service更新编排Win10更新流程的核心可以阻止自动更新调度WaaSMedicSvcWindows Update Medic Service更新医生修复损坏的更新组件可以需要特殊手段防止更新服务被自动修复bitsBackground Intelligent Transfer Service后台传输更新和文件可以不影响正常网络但系统更新无法后台下载dosvcDelivery Optimization更新分发优化P2P分发可以减少局域网和P2P更新流量WinDefendMicrosoft Defender Antivirus 服务杀毒核心引擎可以需配合注册表杀毒功能失效SecurityHealthServiceWindows 安全中心服务安全中心面板可以安全中心显示异常/无法打开wscsvcSecurity Center旧版安全中心服务可以安全中心服务无法启动有几个细节必须讲清楚否则你禁用了等于白禁。关于WaaSMedicSvc更新医生这是Win10里最恶心的服务。当WaaSMedicSvc运行时如果发现Windows Update服务被禁用、损坏或配置异常它会自动修复把服务状态改回来。也就是说你前面禁用了wuauserv过几个小时它可能又复活了。禁用它不能直接用services.msc因为它的启动类型默认是手动触发器启动你改成禁用后系统会自动改回来。正确做法是用注册表把Start值改成4同时修改FailureActions数据让系统在服务启动失败时不重启它。关于UsoSvc这是Win10特别是1803以后版本新增的更新编排服务。Windows Update服务本身是干活的UsoSvc是安排谁去干活的。只停wuauserv系统检查更新时会连带启动UsoSvc然后UsoSvc又会把wuauserv带起来。所以两个必须一起禁才会真的消停。4.2 注册表禁用Defender的完整手段Win10提供了一系列组策略选项来控制Windows Defender但实际生效的还是注册表。核心键值位于HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows Defender具体要建好这几个键和值关闭实时保护DisableRealtimeMonitoring (DWORD) 1对应组策略关闭实时保护。键路径为HKLM\SOFTWARE\Policies\Microsoft\Windows Defender\Real-Time Protection。关闭行为监视DisableBehaviorMonitoring (DWORD) 1这个默认开启它扫描程序行为特征。在低配机器上它是CPU占用大户。关闭云交保护DisableAntiSpyware (DWORD) 1注意这个值在Win10较新版本1903后中已经被微软限制了单设这一个值不再生效必须配合禁用服务。关闭篡改防护 篡改防护Tamper Protection是Win10中最顽固的一道锁。即使你把DisableRealtimeMonitoring设为1篡改防护也会在几分钟内尝试改回0。要在注册表禁用它需要在下面位置HKLM\SOFTWARE\Microsoft\Windows Defender\Features TAMPER_PROTECTION (DWORD) 3TAMPER_PROTECTION的值0是关闭3是开启。但Win10 2004后版本这个值也会被安全中心自动改回3。更可靠的方式是先在设置→隐私和安全→Windows安全中心→病毒和威胁防护→管理设置里手动关闭篡改防护开关然后再用批处理修改注册表双管齐下。4.3 组策略封锁自动更新的狠招对于Windows 10专业版、企业版、教育版组策略编辑器gpedit.msc是最正规的管控方式。路径计算机配置→管理模板→Windows组件→Windows更新关键策略有4条策略名配置值作用配置自动更新已禁用直接关掉自动更新行为指定Intranet Microsoft更新服务位置已启用填写无效地址如http://127.0.0.1让系统无法连接微软更新服务器自动更新检测频率已启用设为0降到最低检测频率对于已登录的用户的计划自动更新安装不执行重新启动已启用即使有更新也不自动重启其中指定Intranet Microsoft更新服务位置是效果最显著的。把更新源指向一个不存在的本地路径系统检测更新时会直接失败表现为无法连接到更新服务也就不会去下载任何东西。但家庭版Home没有gpedit.msc所以还得会注册表改法对应键位于HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU设置NoAutoUpdate 1关闭自动更新设置AUOptions 2仅通知不自动下载4.4 网络层的补充手段如果要双重保险可以通过防火墙规则屏蔽Windows更新服务的外连地址。Windows Update使用的域名主要是*.update.microsoft.com、*.download.windowsupdate.com、*.delivery.mp.microsoft.com。在高级安全Windows Defender防火墙中新建出站规则阻止这些域名。注意Windows防火墙并不能直接按域名过滤它只能按IP或程序路径。但wuauserv服务所对应的svchost.exe路径并不固定按程序过滤容易误伤系统其他svchost网络请求。所以这招只适合进阶用户优先级排在服务和注册表方案之后。5. 实操过程与核心环节实现5.1 先准备一个纯净的批处理脚本下面是我实际使用的完整脚本保留了全部注释方便你看懂每一行在干什么。脚本我命名为禁用更新和安全中心.bat右键以管理员身份运行。注意下面的脚本要求管理员权限执行否则服务修改会失败。echo off title Win10一键禁用自动更新与Defender安全中心 echo 正在执行请以管理员身份运行本脚本... echo. REM 第1步禁用Windows更新相关服务 echo [1/6] 禁用Windows更新服务... sc config wuauserv start disabled sc stop wuauserv sc config UsoSvc start disabled sc stop UsoSvc sc config bits start disabled sc stop bits sc config dosvc start disabled sc stop dosvc REM 第2步禁用更新医生服务特殊处理 echo [2/6] 禁用Windows更新医生服务... sc config WaaSMedicSvc start disabled sc stop WaaSMedicSvc reg add HKLM\SYSTEM\CurrentControlSet\Services\WaaSMedicSvc /v Start /t REG_DWORD /d 4 /f REM 第3步禁用Defender和SecurityCenter服务 echo [3/6] 禁用Defender和安全中心服务... reg add HKLM\SYSTEM\CurrentControlSet\Services\WinDefend /v Start /t REG_DWORD /d 4 /f sc config WinDefend start disabled sc stop WinDefend reg add HKLM\SYSTEM\CurrentControlSet\Services\SecurityHealthService /v Start /t REG_DWORD /d 4 /f sc config SecurityHealthService start disabled sc stop SecurityHealthService reg add HKLM\SYSTEM\CurrentControlSet\Services\wscsvc /v Start /t REG_DWORD /d 4 /f sc config wscsvc start disabled sc stop wscsvc REM 第4步通过组策略注册表禁用更新 echo [4/6] 配置更新策略... reg add HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU /v NoAutoUpdate /t REG_DWORD /d 1 /f reg add HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU /v AUOptions /t REG_DWORD /d 2 /f REM 第5步通过注册表关闭Defender功能 echo [5/6] 关闭Defender实时保护及相关模块... reg add HKLM\SOFTWARE\Policies\Microsoft\Windows Defender /v DisableAntiSpyware /t REG_DWORD /d 1 /f reg add HKLM\SOFTWARE\Policies\Microsoft\Windows Defender\Real-Time Protection /v DisableRealtimeMonitoring /t REG_DWORD /d 1 /f reg add HKLM\SOFTWARE\Policies\Microsoft\Windows Defender\Real-Time Protection /v DisableBehaviorMonitoring /t REG_DWORD /d 1 /f reg add HKLM\SOFTWARE\Policies\Microsoft\Windows Defender\Spynet /v DisableBlockAtFirstSeen /t REG_DWORD /d 1 /f reg add HKLM\SOFTWARE\Policies\Microsoft\Windows Defender\Spynet /v LocalSettingOverrideSpynet /t REG_DWORD /d 0 /f REM 第6步清理更新缓存文件并重启服务状态 echo [6/6] 清理更新缓存... del /f /q %SystemRoot%\SoftwareDistribution\Download\*.* 2nul rd /s /q %SystemRoot%\SoftwareDistribution\Download 2nul echo. echo 执行完毕建议重启计算机后验证效果。 pause5.2 逐行解读这些命令为什么要这样写sc config命令修改服务配置。后面的start disabled注意等号后面有一个空格这是sc命令的语法要求少了这个空格命令就报错。disabled代表服务启动类型设为禁用。sc stop命令立即停止当前正在运行的服务。先停止再配置禁用顺序不能反因为服务在运行状态时修改启动类型的操作有时会被系统拒绝。reg add命令直接写入注册表/v指定值名称/t REG_DWORD指定数据类型为32位整数/d指定数值/f表示强制覆盖现有值不加/f的话如果值已存在命令会停下来询问是否覆盖。第2步里额外对WaaSMedicSvc做了注册表透视直接写Start为4。启动类型对应数字0系统引导启动、1系统启动、2自动、3手动、4禁用。用sc config设置时只接受文本值disabled、demand等用reg add则直接操控底层数字。两者配合双保险。第5步里的DisableBlockAtFirstSeen是首次看到时阻止云扫描功能这个是Defender卡CPU的元凶之一杀软在检测到新文件时要向云端发请求如果网络慢或者连不上进程就会卡很久。设成1之后再配合本地策略defender的实时监控基本就是个空壳了。清理更新缓存的路径C:\Windows\SoftwareDistribution\Download这是Windows Update下载补丁的临时目录。这个文件夹长时间不清会膨胀到几个GB即使停用了更新服务残留的文件还会被反复扫描。清理它算个收尾工作。5.3 为什么不直接改服务类型就完事很多人只把wuauserv禁用就以为完工了结果过了几天发现系统又更新了。原因就是前面提到的UsoSvc和WaaSMedicSvc的互助机制。Win10更新体系是一个生态系统AU检测主服务wuauserv调度启动器UsoSvc恢复工具WaaSMedicSvc负责修复wuauserv和UsoSvc如果你只停了其中一个另外两个会把停止的那个重新拉起来。特别WaaSMedicSvc它有个独立计划任务每隔一段时间就会扫描一次所有Windows更新组件的状态发现异常后自动恢复。所以要用全链路禁用的思路——把调度者、执行者、维修工一起停掉才叫真正关闭。5.4 验证是否真的关掉了重启计算机后按WinR输入services.msc打开服务面板找到Windows Update、Windows Defender Antivirus Service、SecurityHealthService这几个确认启动类型都是禁用状态都是空白未运行。然后打开设置→更新和安全→Windows更新点检查更新应该会报错或者一直转圈—这是正常的因为更新服务已经不工作了。确认安全中心图标从绿色盾牌变成了黄色的警告状态说明Defender实时防护也不再运行。顺手按下CtrlShiftEsc打开任务管理器看看CPU占用排第一的进程还带不带MsMpEng.exe、powershell.exe、TiWorker.exe如果没有这几个说明系统已经安静下来了。6. 常见问题与排查技巧实录6.1 禁用后安全中心提示病毒防护已关闭怎么办这个是必然现象因为Defender服务被停了安全中心自然检测不到杀软。某些强迫症会被这个提示烦死可以通过一个注册表项禁用安全中心的通知HKLM\SYSTEM\CurrentControlSet\Services\SecurityHealthService里面有个值Start已经改成4了这就够了。系统右上角的气泡提示偶尔会出现一般一两周才弹一次。如果你装了第三方杀软火绒等安全中心会识别到并显示由火绒提供防护提示会自动消失。所以建议禁Defender后安装一个替代杀软安全性和舒适性一起解决了。6.2 WaaSMedicSvc禁用后又被自动改回来怎么办这是最常见的翻车情况。WaaSMedicSvc属于受保护的受托管服务它的注册表权限默认不允许普通管理员修改很多脚本写sc config WaaSMedicSvc start disabled根本没权限生效命令返回拒绝访问。破解方法先用管理员权限打开C:\Windows\System32\drivers\etc\hosts把update相关的微软域名全部解析到127.0.0.1封死更新通道。然后重新运行上面的脚本这时候WaaSMedicSvc即使还在也没有活可干了。更彻底的做法是用PsExec64.exe -s以SYSTEM权限运行注册表编辑器修改WaaSMedicSvc的Start值但这个方法门槛偏高不推荐新手折腾。提示如果你发现脚本执行后WaaSMedicSvc仍然是自动不要慌直接按文章第七节恢复与备份里的方法先恢复一次再重新执行一遍禁用脚本第二次一般就会生效。6.3 禁用Defender后杀毒软件装不上了这个问题在Win10 1909之后的版本特别常见。Defender服务一旦被禁用系统自带的安全中心界面会打不开而第三方杀毒软件的安装程序在检测阶段如果发现系统自带的杀毒软件异常可能会拒绝安装报错若要安装此应用请先开启Windows安全中心。实际上不用管这个提示。强制安装的方法是卸载掉Windows Defender的底层服务状态标记让安全中心显示未启用第三方杀软就不会卡在检测阶段了。执行下面一行命令reg add HKLM\SOFTWARE\Microsoft\Windows Defender /v DisableAntiSpyware /t REG_DWORD /d 1 /f装好第三方杀软后它的驱动会正常接管系统防护安全中心的黄色感叹号图标会变成绿色。6.4 禁用后系统时间变成2020年证书全部失效这个我没遇到但确实有人问过。原因不是更新服务被禁而是主板电池没电了导致BIOS时间重置。禁用更新只是让系统无法自动校时与证书失效没有直接关系。解决办法是换主板上的纽扣电池或者在Windows设置里手动打开自动设置时间。6.5 我不小心误禁了些东西想恢复怎么办恢复脚本的写法就是把刚才所有命令反过来执行。这里给出完整恢复脚本命名为恢复更新和Defender.bat同样管理员运行echo off title 恢复Windows更新和Defender设置 echo 恢复Windows更新服务... sc config wuauserv start demand sc config UsoSvc start demand sc config bits start demand sc config dosvc start demand sc config WaaSMedicSvc start demand echo 恢复Defender服务... sc config WinDefend start demand sc config SecurityHealthService start demand sc config wscsvc start auto echo 删除更新策略注册表... reg delete HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU /f 2nul reg delete HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate /f 2nul echo 删除Defender策略注册表... reg delete HKLM\SOFTWARE\Policies\Microsoft\Windows Defender /f 2nul reg delete HKLM\SYSTEM\CurrentControlSet\Services\WinDefend /v Start /f 2nul reg delete HKLM\SYSTEM\CurrentControlSet\Services\SecurityHealthService /v Start /f 2nul echo 重启相关服务... sc start wuauserv sc start WinDefend sc start SecurityHealthService sc start wscsvc echo 恢复完成请重启计算机。 pause恢复完成后Windows Update会自动重新启用Defender的实时保护也会恢复。需要注意的是如果第一次开机后安全中心提示病毒和威胁防护需要操作点一下立即打开就行不需要额外配置。6.6 电脑重启后更新服务又回来了如何判断是哪一步没生效我排查这种问题有固定的流程。第一先看组策略是否生效 运行gpedit.msc进入计算机配置→管理模板→Windows组件→Windows更新确认配置自动更新和指定Intranet Microsoft更新服务位置两项是已启用状态。第二查看事件日志打开事件查看器→Windows日志→系统筛选来源为Service Control Manager的事件看是否有服务启动失败记录。如果记录显示由于特定错误拒绝说明服务权限有残留再执行一次脚本。第三检查任务计划程序任务计划程序库→Microsoft→Windows→WindowsUpdate把里面Scheduled Start等任务禁用掉。这个任务有时候会把wuauserv重新拉起来做好这一步才算真正闭环。7. 额外的进阶技巧手动控制更新时机如果你不舍得完全关闭更新还有一个折中方案把更新行为改成仅手动。在组策略里把配置自动更新设为已启用然后在下拉框中选择2 - 通知下载和安装。这样系统不会自动下载任何更新但会在有可用更新时弹窗提示你由你决定什么时候下载安装。这比完全禁用更人性化也避免了忘记打安全补丁的问题。更进一步的推荐做法彻底禁用更新的用户每个月挑一天手动打开一次更新让它把补丁下载装上然后再禁用。这个过程只需要五分钟电脑既能保持流畅也不会积压太多安全风险。我在自己的主力机上就是这么操作的实测用了半年状态良好。另外补充一个小技巧如果某个更新安装后出了问题不想等系统自动卸载可以在设置→更新与安全→恢复里找到卸载更新入口Windows 10会列出最近安装的更新列表双击对应项即可卸载。自己手动控制更新的节奏比让系统自己做主要舒服得多。8. 这套方案的后续维护与个人体会8.1 系统更新关闭后还需要做的事第一装一个国产杀毒软件。火绒个人版免费、无广告、误报率低是比较成熟的替代方案360虽然功能全但对小白来说提醒弹窗比较多可能体验一般。装杀软的目的不是让它天天弹窗而是阻挡U盘病毒和恶意脚本。第二每个月检查一次有没有大版本更新如果某个月没打补丁但天天上网风险稍大如果电脑只用于离线办公或者打单机游戏半年更新一次问题也不大。第三更新浏览器和其他第三方软件。系统更新关掉了但浏览器、播放器、办公软件还会继续自动更新这里反而要留意不要关闭第三方软件的更新它们的漏洞往往才是主要风险。8.2 我的实际测试数据拿那台4GB内存的老笔记本举例。禁用前开机到桌面约3分40秒期间CPU占用长期50%以上Defender进程扫描时磁盘占用100%。禁用后开机到桌面约1分20秒CPU占用基本在5%以下日常开Chrome、Word、Excel、PDF四件套同时操作也不卡了。还有一个隐含收益C盘可用空间从12GB涨到了18GB多出来的6GB就是SoftwareDistribution目录和Windows Defender扫描临时文件释放出来的。另一台跑虚拟机的台式机更像重获新生。VMware里要装Win10测试环境每次宿主机的Defender扫描都会导致VMware I/O性能雪崩禁掉宿主机的Defender后虚拟机的磁盘性能大幅度提升。这也是很多玩虚拟机、玩调试的人禁用Defender的重要原因——不是不爱安全是它干扰了正常开发。8.3 最后分享一个我在实际操作中的体会这些年给各种电脑做过系统优化被问过最多的一个问题是这样关掉更新会不会不安全我的回答一直没变安全不在于你的杀毒软件多强大而在于你对自己电脑的管理意识。禁用自动更新和Defender不是让你裸奔而是让你夺回系统的控制权改用更适合自己的方式保护电脑。如果你只是为了玩的游戏被强制更新了或者某个专业软件因为Defender误杀而无法正常使用这套方案就是你需要的。操作之前先把恢复脚本保存好万一哪天下定决心回到官方默认状态十分钟就能恢复原样。内容到这里就完整了。文中的脚本可以直接复制保存成bat文件使用遇到问题也欢迎按文章里的排查思路自查。祝你的电脑早日摆脱后台强制占用真正安静下来。
返回列表