请访问原文链接:https://sysin.org/blog/disable-edge-auto-update/,查看最新版。原创作品,转载请保留出处。
作者:gc(at)sysin.org,主页:www.sysin.org
未经用户允许自动更新,也不提供选项禁用自动更新,属实不文明不举,以下方法可以禁用自动更新。
Microsoft Edge for Windows
Microsoft Edge 如何自动更新?
当前以 Edge 88.0 版本为例,新版本将来可能有所变更:
Edge 在 Windows 平台同时发布两个版本,分别是:
企业版(或者称为商业版)即 Windows System Setup,安装在
Program Files
文件夹下,需要管理员权限安装;用户版即 Windows User Setup,安装在
Users
文件夹下,不需要管理员权限,普通用户就可以安装。
企业版使用以下方法进行自动更新
服务:
Microsoft Edge 更新 服务 (edgeupdate)
Microsoft Edge 更新 服务 (edgeupdatem)
Microsoft Edge Elevation Service (MicrosoftEdgeElevationService)
任务计划:
MicrosoftEdgeUpdateBrowserReplacementTask
MicrosoftEdgeUpdateTaskMachineCore
MicrosoftEdgeUpdateTaskMachineUA
安装路径:
C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe
更新程序路径:
C:\Program Files (x86)\Microsoft\EdgeUpdate\MicrosoftEdgeUpdate.exe
巨硬阿三不讲究,无论 64-bit 还是 32-bit 的 Edge 都安装在 "Program Files (x86") 目录下面(Chrome 没有这个问题)。
用户版使用以下方法自动更新
任务计划:
MicrosoftEdgeUpdateTaskUser当前用户的SIDCore
MicrosoftEdgeUpdateTaskUser当前用户的SIDUA
例如:
MicrosoftEdgeUpdateTaskUserS-1-5-21-3860493963-3742860931-3732056798-500Core
MicrosoftEdgeUpdateTaskUserS-1-5-21-3860493963-3742860931-3732056798-500UA
用户版安装路径:
C:\Users\用户名\AppData\Local\Microsoft\Edge\Application\msedge.exe
自动更新程序路径:
C:\Users\用户名\AppData\Local\Microsoft\EdgeUpdate\MicrosoftEdgeUpdate.exe
根据上述路径,手动禁用或者删除即可禁用自动更新。
使用 PowerShell 禁用更新:
if ([Environment]::Is64BitOperatingSystem -eq "True") {
#Write-Host "64-bit OS"
$PF=${env:ProgramFiles(x86)}
}
else {
#Write-Host "32-bit OS"
$PF=$env:ProgramFiles
}
if ($(Test-Path "$PF\Microsoft\Edge\Application\msedge.exe") -eq "True") {
# 结束进程
taskkill /im MicrosoftEdgeUpdate.exe /f
taskkill /im msedge.exe /f
# Microsoft Edge 更新服务(SYSIN)
#这里也可以使用 sc.exe stop "service name"
Stop-Service -Name "edgeupdate"
Stop-Service -Name "edgeupdatem"
Stop-Service -Name "MicrosoftEdgeElevationService"
# Windows 10 默认 PS 版本 5.1 没有 Remove-Service 命令
# This cmdlet was added in PS v6. See https://docs.microsoft.com/en-us/powershell/scripting/whats-new/what-s-new-in-powershell-core-60?view=powershell-6#cmdlet-updates.
#Remove-Service -Name "edgeupdate"
#Remove-Service -Name "edgeupdatem"
#Remove-Service -Name "MicrosoftEdgeElevationService"
# sc 在 PowerShell 中是 Set-Content 别名,所以要使用 sc.exe 否则执行后无任何效果
sc.exe delete "edgeupdate"
sc.exe delete "edgeupdatem"
sc.exe delete "MicrosoftEdgeElevationService"
# 任务计划企业版
schtasks.exe /Delete /TN \MicrosoftEdgeUpdateBrowserReplacementTask /F
schtasks.exe /Delete /TN \MicrosoftEdgeUpdateTaskMachineCore /F
schtasks.exe /Delete /TN \MicrosoftEdgeUpdateTaskMachineUA /F
# 移除更新程序
Remove-Item "$PF\Microsoft\EdgeUpdate" -Recurse -Force
Write-Output "Disable Microsoft Edge Enterprise Auto Update Successful!"
}
elseif ($(Test-Path "$env:USERPROFILE\AppData\Local\Microsoft\Edge\Application\msedge.exe") -eq "True") {
# 结束进程
taskkill /im MicrosoftEdgeUpdate.exe /f
taskkill /im msedge.exe /f
# 用户版没有创建服务
# 获取SID方法
function Get-CurrentUserSID {
[CmdletBinding()]
param(
)
Add-Type -AssemblyName System.DirectoryServices.AccountManagement
return ([System.DirectoryServices.AccountManagement.UserPrincipal]::Current).SID.Value
}
# 用户版任务计划
schtasks.exe /Delete /TN \MicrosoftEdgeUpdateTaskUser$(Get-CurrentUserSID)Core /F
schtasks.exe /Delete /TN \MicrosoftEdgeUpdateTaskUser$(Get-CurrentUserSID)UA /F
# 移除更新程序
Remove-Item "$env:USERPROFILE\AppData\Local\Microsoft\EdgeUpdate" -Recurse -Force
Write-Output "Disable Microsoft Edge Users Setup Auto Update Successful!"
}
else {
Write-Output "No Microsoft Edge Installation Detected!"
}
效果图:
Microsoft Edge for Linux
Edge Linux 版(deb 和 rpm)首个版本为 95.0.1020.38 发布于 2021 年 10 月 28 日,值得庆幸的是,Linux 版并没有自动更新功能,以后的版本是否有变数还无法确定。
Linux 软件更新通常依赖于系统级别的包管理机制(例如 apt 和 yum),我们可以手动来控制是否更新。
Microsoft Edge 稳定版在 Linux 中的软件包名称为:microsoft-edge-stable
在 Debian 及衍生系统中禁用 Edge 更新:
sudo apt-mark hold microsoft-edge-stable
# 恢复
#sudo apt-mark unhold microsoft-edge-stable
在 Redhat 及衍生系统中禁用 Edge 更新:
echo 'exclude=microsoft-edge-stable' >> /etc/yum.conf
# 恢复
#编辑 /etc/yum.conf 删除 exclude=microsoft-edge-stable
Microsoft Edge for Mac
在 macOS 中 Edge 使用 Microsoft AutoUpdate app 进行自动更新,只需要取消加载项和移除该 app 的执行权限(或者删除)即可。
打开 “终端”,执行如下命令:
sudo launchctl unload /Library/LaunchAgents/com.microsoft.update.agent.plist
sudo chmod -R 644 /Library/Application\ Support/Microsoft/MAU2.0/Microsoft\ AutoUpdate.app
# 或者直接删除更新程序(SYSIN)
sudo rm -rf /Library/Application\ Support/Microsoft/MAU2.0/
效果图:
下载 Edge
- Windows System Setup(商业版,安装在
Program File
文件夹下,需要管理员权限)- Microsoft Edge X64.msi(固定链接,最新版)
- Microsoft Edge X86.msi(固定链接,最新版)
- Windows Arm64 msi(直接访问下载页面,暂无固定链接)
- Windows User Setup(单用户版,安装在 Users 文件夹下,无需管理员权限)
暂无官网固定链接,Edge 自动更新保存在C:\Program Files (x86)\Microsoft\EdgeUpdate\Download
文件夹下 - macOS
- Microsoft Edge Universal (Apple Chip)(固定链接,最新版)
- Microsoft Edge 64-bit (Intel Chip)(固定链接,最新版)
- Linux(Edge Linux 首个正式版为 95,官网没有列出,以下地址可以下载)
附录
- 如何屏蔽 iOS 软件自动更新,去除更新通知和标记
- 如何禁用 Mac App Store 应用自动更新,去除更新标记和通知
- 如何彻底禁止 macOS Big Sur 自动更新,去除更新标记和通知
- 如何彻底禁止 macOS Catalina 自动更新,去除更新标记和通知
- Ubuntu 20.04 如何禁用自动更新,删除更新提示和缓存