前言

第一次升级macOS在抱着对Apple高质量软硬件的幻想中破灭,从macOS High Sierra手贱升级到macOS Mojave (version 10.14),各种字体发虚,Kernel Panic(六国语言重启),系统卡顿,耗电快等问题接踵而至。本来寄希望于升级macOS Mojave (version 10.14.1-10.14.6)可以解决部分稳定性和兼容性问题,但是MacBook居然开机卡在进度条,然后我等了一上午都没有完成,差点以为要悲剧的重装系统丢失数据了。所以很有必要给大伙提个醒,无论是Windows还是macOS在新版本推送的早期都不要点击更新,升级到高版本后如果不选择erase擦除数据是无法降级至低版本的,比如从Catalina降级至Mojave或High Sierra。抑制住你体内的洪荒之力和强迫症,不要手贱,不要手贱,不要手贱。实在手痒的厉害,千万记住先备份后折腾。

拒绝重装!教你如何拯救开机失败的Mac电脑


更新记录

2021年10月10日 - 增加macOS Catalina升级至Big Sur遇到问题的解决方案
2019年08月22日 - 更新解决问题的常见套路,可修复截止至10.14.6之前的大多数问题,对Catalina不抱有Bug变少希望
2019年01月30日 - 更新解决唤醒时黑屏只看见鼠标的问题
2018年11月01日 - 初稿

阅读原文 - https://wsgzao.github.io/post/macos/

扩展阅读

Upgrade to macOS Mojave - https://www.apple.com/macos/how-to-upgrade/
如何升级到 macOS Mojave - https://support.apple.com/zh-cn/HT201475
如何通过 macOS 恢复功能重新安装 macOS - https://support.apple.com/zh-cn/HT204904
如何创建可引导的 macOS 安装器 - https://support.apple.com/zh-cn/HT201372
使用“时间机器”备份您的 Mac - https://support.apple.com/zh-cn/HT201250


Apple和Intel芯片组合键区别

Intel芯片
https://support.apple.com/zh-cn/HT201255

Apple M1/M2 芯片
https://support.apple.com/zh-cn/guide/mac-help/mchl82829c17/mac

macOS history

第一次体验苹果虚拟机和黑苹果记得还是Tiger和Leopard的时候

macOS 最新版本
macOS Ventura 13.2.1
macOS Monterey 12.6.3
macOS Big Sur 11.7.4
macOS Catalina 10.15.7
macOS Mojave 10.14.6
macOS High Sierra 10.13.6
macOS Sierra 10.12.6
OS X El Capitan 10.11.6
OS X Yosemite 10.10.5
OS X Mavericks 10.9.5
OS X Mountain Lion 10.8.5
OS X Lion 10.7.5
Mac OS X Snow Leopard 10.6.8
Mac OS X Leopard 10.5.8
Mac OS X Tiger 10.4.11
Mac OS X Panther 10.3.9
Mac OS X Jaguar 10.2.8
Mac OS X Puma 10.1.5
Mac OS X Cheetah 10.0.4

macOS release history - https://en.wikipedia.org/wiki/MacOS

https://support.apple.com/zh-cn/HT201260

macOS最新稳定版常见问题

macOS Catalina升级至Big Sur遇到问题的解决方案

问题描述:
Mac不能打开软件,提示检查为恶意软件
can’t be opened because Apple cannot check it for malicious software.
App can’t be opened because it is from an unidentified developer

解决方法:

1
2
# 打开Terminal, 运行命令解决
sudo spctl --master-disable

Mac > System Preferences > Security & Privacy 多了一个选项Anywhere

WindowServer高CPU占用率的问题

WindowServer高CPU占用率的问题从我开始吧MacBook Pro作为工作电脑深度使用就一直遇到的一个问题,估计 Apple 自研 M1 芯片后会好一些

  • Mojave
  • Catalina
  • Big Sur
  • Monterey

至少在Intel芯片版本的MacBook几乎都存在WindowServer高CPU占用率的情况,如果你跟我一样也使用旧款的苹果设备,并且无意追新的话,可能会发现经过几次系统升级后,即使不打开任何大型软件,设备本身就会热到烫手。如果查看 Activity Monitor,会发现 WindowServer 进程占用很高的 CPU(从 40% 到 100% 波动)

那么这个进程是做什么用的?WindowServer 是 macOS 的 display server,包含显示服务器和窗口管理器的功能,可以简单理解为功能类似 Linux 上的 X11。macOS 设备上屏幕显示的所有内容基本都由 WindoServer 负责管理、合成和发送给硬件进行渲染。

再来去到 System Preferences,点开 Accessibility > Display,勾上 以下选项

  • Reduce Motion 减少macOS上界面的动画效果
  • Reduce transparency 这会让一些透明的部件(例如菜单栏)的渲染压力减小
  • Differenciate without color 无色差异化”设置的最佳解释是,它旨在帮助有视觉困难或色盲的用户, 对大部分人来说作用很小

降低 WindowServer 的 CPU 占用
https://blog.mynook.info/post/macos-windowserver-calm-down/

常见的拯救方法

苹果官方客服的标准答复三板斧,有一定道理但不一定可以解决你的问题,属于玄学。重点还是要掌握正确的分析思路,检查日志和启动项,通过安全模式做对比交叉分析寻找蛛丝马迹

  1. Reset NVRAM
  2. Rest SMC
  3. Use safe mode to isolate issues

重置SMC

先关机,然后断开电源,拔掉所有USB的连接,然后同时按住键盘左下角的Shift,Control,Option和开机键15秒。全过程Mac不会开机。15秒后松手插上电源开机。

如何重置 Mac 上的系统管理控制器 (SMC) - https://support.apple.com/zh-cn/HT201295

重置NVRAM

将 Mac 关机,然后开机并立即同时按住以下四个按键:Option、Command、P 和 R。您可以在大约 20 秒后松开这些按键,在此期间您的 Mac 可能看似在重新启动。

重置 Mac 上的 NVRAM 或 PRAM - https://support.apple.com/zh-cn/HT204063

使用安全模式

要以安全模式启动,请按照以下步骤操作:

  1. 启动或重新启动 Mac,然后立即按住 Shift 键。显示屏上将出现 Apple 标志。如果没有看到 Apple 标志,请了解该如何操作。
  2. 看到登录窗口时,松开 Shift 键。如果启动磁盘使用 FileVault 进行了加密,系统可能会两次提示登录:第一次为解锁启动磁盘,第二次则为登录 Finder。

使用安全模式查明 Mac 的相关问题 - https://support.apple.com/zh-cn/HT201262

重装系统

如果以上都不能解决你的问题,且系统是最新的,硬件是没问题的,那么重装系统吧。哈哈,重装系统总是这么简单霸气的解决一些问题。

前提:

  1. 保证你能连到wifi或者有线,因为重装系统需要连接远程服务器
  2. 保证有足够的电源,最好是附件有插板可以充电的情况下重装系统,这个过程还是比较久的,50分钟左右。

步骤如下:

  1. 开机按住Command (⌘)-R
  2. 出现的四个选项的界面选择第二个重装系统(Reinstall macOS)
  3. 等待重装系统完成即可

如何通过 macOS 恢复功能重新安装 macOS - https://support.apple.com/zh-cn/HT204904

TimeMachine恢复

TimeMachine数据恢复的成本太高,需要先Reinstall macOS然后使用TimeMacthine恢复,再重新配置软件,不到万不得已之时不推荐

  1. 制作U盘启动
  2. TimeMachine恢复

如何创建可引导的 macOS 安装器 - https://support.apple.com/zh-cn/HT201372

使用“时间机器”备份您的 Mac - https://support.apple.com/zh-cn/HT201250

Mac 的启动组合键

若要使用这些组合键中的任何一个,请在按下电源按钮以开启 Mac 后或在 Mac 开始重新启动后,立即按住相应按键。请一直按住,直至电脑出现对应的行为。

Command (⌘)-R:从内建的 macOS 恢复系统启动。或者,您也可以使用 Option-Command-R 或 Shift-Option-Command-R 以通过互联网从 macOS 恢复功能启动。macOS 恢复功能可以安装不同版本的 macOS,具体取决于您在电脑启动时使用的组合键。如果您的 Mac 使用了固件密码,系统将要求您输入这个密码。

Option (⌥):启动进入“启动管理器”,您可以从中选取其他启动磁盘或宗卷(若可用)。如果您的 Mac 使用了固件密码,系统将要求您输入这个密码。

Option-Command-P-R:重置 NVRAM 或 PRAM。如果您的 Mac 使用了固件密码,它会忽略这个组合键或从 macOS 恢复功能启动。

Shift (⇧):以安全模式启动。

D:从内建的 Apple Hardware Test 或 Apple Diagnostics 实用工具启动,具体取决于您的 Mac 机型。或者,您也可以使用 Option-D 通过互联网从这个实用工具启动。

N:从兼容的 NetBoot 服务器启动(若可用)。要使用 NetBoot 服务器上默认的引导映像,则请按住 Option-N。配备 Apple T2 芯片的电脑不支持这个启动键。

Command-S:以单用户模式启动。这个组合键要求使用 macOS High Sierra 或更早版本。

T:以目标磁盘模式启动。

Command-V:以详细模式启动。

Mac 的启动组合键 - https://support.apple.com/zh-cn/HT201255

有效的解决方法

如果你遇到和我类似的问题,不妨尝试寻找下具体的错误日志,然后向Google或者咨询苹果客服求助

  1. command + v 进入代码界面,等出现不停的输出Too many corpses being created 这段代码的时候,说明是缓存太多造成的
  2. command + R 进入macOS使用工具页面,左上角找到终端工具
  3. 输入以下代码,重命名数据库缓存就行了
  4. 然后再重新启动电脑,耐心等待一会儿就可以重新进入桌面
1
2
cd /Volumes/Macintosh\ HD/var/db/caches/opendirectory/
mv ./mbr_cache ./mbr_cache-old

解决唤醒时黑屏只看见鼠标的问题

先关机,然后开机快速同时点击 Command + S 按键进入 single-user 单用户模式

1
2
3
4
5
/sbin/fsck -fy
/sbin/mount -uw /
rm -f /Library/Preferences/com.apple.loginwindow.plist
rm -f /var/db/.AppleUpgrade
reboot

其它异常

最直接的方法莫过于检查日志文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# 如果非意外重启报错可以打开console控制台查看
pmset -g log

# 常见的手动清理步骤
brew list
brew uninstall
brew uninstall v2ray-core

brew cask list
brew cask uninstall
brew cask v2rayu

brew services list
brew services stop
brew services stop v2rayu

# 如果system.log有已删除但没有清理干净的自启动服务
launchctl unload -w ~/Library/LaunchAgents/yanue.v2rayu.v2ray-core.plist

# open(/var/db/DetachedSignatures) - No such file or directory
sudo touch /var/db/DetachedSignatures

# 检查启动项清理脏数据
cd /Library/LaunchAgents
cd /Library/LaunchDaemons
sudo rm



Name Path
系统日志文件夹 /var/log
系统日志文件 /var/log/system.log
Mac 分析数据 /var/log/DiagnosticMessages
系统应用程序日志 /Library/Logs
系统报告 /Library/Logs/DiagnosticReports
用户应用程序日志 ~/Library/Logs
用户报告 ~/Library/Logs/DiagnosticReports

如果 Mac 因为出现问题而重新启动

排查 Mac 中的 Finder 无限卡住的问题

How to Use the Mac Console App to Diagnose a Crash

macOS Reversion: How to Downgrade from Mojave

如果遇到频繁卡死并黑屏无法唤醒,最后经常自动重启,我的解决步骤是

  1. 移除了一些比较旧的应用
  2. 关闭了蓝牙等不需要使用的服务
  3. 清理了自启动的脏数据
  4. 最后 Reset NVRAM 和 SMC
  5. 如果电脑目前非常稳定,请不要考虑升级,一个从坑里爬出来的肺腑之言

不着急的解决方案

联系 Apple 支持 - https://getsupport.apple.com/

文章目录
  1. 1. 前言
  2. 2. 更新记录
  3. 3. Apple和Intel芯片组合键区别
  4. 4. macOS history
  5. 5. macOS最新稳定版常见问题
    1. 5.1. WindowServer高CPU占用率的问题
  6. 6. 常见的拯救方法
    1. 6.1. 重置SMC
    2. 6.2. 重置NVRAM
    3. 6.3. 使用安全模式
    4. 6.4. 重装系统
    5. 6.5. TimeMachine恢复
  7. 7. Mac 的启动组合键
  8. 8. 有效的解决方法
  9. 9. 解决唤醒时黑屏只看见鼠标的问题
  10. 10. 其它异常
  11. 11. 不着急的解决方案