×

如何屏蔽 Catalina 的更新

Falcon 2021-05-18 views:
摘要

正在生成中……

目前在命令行执行下面指令的方法已经失效了

sudo softwareupdate --ignore "macOS Catalina"

不过貌似还能通过移除 SoftwareUpdateNotificationManager 启动器的方式来解决这个问题。

也就是进入目录 /System/Library/LaunchAgents, 将 com.apple.SoftwareUpdateNotificationManager.plist 移动到 /System/Library/LaunchAgentsIgnored

另外,我还修改了这个配置文件里关于通知的相关项目,不过我不太确定这样做是否有必要。 /System/Library/UserNotifications/Bundles/com.apple.SoftwareUpdateNotification.bundle/Contents/Info.plist

也就是以下的配置:

<dict>
    <key>UNDaemonShouldReceiveBackgroundResponses</key>
    <true/>
    <key>UNDefaultSettings</key>
    <dict>
        <key>UNSettingAlerts</key>
        <true/>
        <key>UNSettingAlwaysShowPreviews</key>
        <true/>
        <key>UNSettingBadges</key>
        <true/>
        <key>UNSettingModalAlertStyle</key>
        <true/>
        <key>UNSettingSounds</key>
        <true/>
    </dict>
    <key>UNHideSettings</key>
    <true/>
    <key>UNNotificationIcons</key>
    <dict/>
    <key>UNSuppressUserAuthorization</key>
    <true/>

UNSuppressUserAuthorization 这个选项,然而这些选项的作用有待考证。( However the effect of these flags should be investigated.)

一个更极端的解决方案可能是把SoftwareUpdateNotification管理器从核心服务中移除。

注意:为了做到上述修改,你需要从另一个磁盘启动,否则系统会是只读状态。
PS:如果不想从另外的磁盘启动,可以参考我的更新,亲测有用。但这个修改是否能真正屏蔽更新通知,还需要继续观察,目前是修改后的第一天。(不过好像也没有找到更好的方式☹️)

更新:

如果移动文件时出现read-only 文件系统提示:

$ sudo mv com.apple.SoftwareUpdateNotificationManager.plist /System/Library/LaunchAgentsIgnored
mv: rename com.apple.SoftwareUpdateNotificationManager.plist to /System/Library/LaunchAgentsIgnored/com.apple.SoftwareUpdateNotificationManager.plist: Read-only file system

执行以下命令解除

sudo mount -uw /

更新2

经过半个月观察,升级系统的更新窗口不再弹出,问题解决。

更新3:

但是这样只能屏蔽操作系统的升级提醒,并不能去除app store里已经安装的app的更新提醒,如果有app更新了,还是会有小红点和要弹窗通知,如果也想要屏蔽这些提醒可以参考这篇文章。我执行了最后一个方法:强制吊销系统更新通知权限

參考資料:

https://apple.stackexchange.com/questions/367995/how-to-block-updates-to-mac-os-x-catalina

本文收录于