发现系统中存在旧的Coriolis iDefrag和Little Snitch 3 kexts。卸载了LS3并删除了我多年前删除了应用程序的iDefrag内容。
MBA现在开机了。
更详细。
检查Console.app中的系统报告,发现内核恐慌情绪。我不是阅读跟踪文件的专家,但这显示出来引起了一些担忧。
0xffffff80b4c1bfa0 : 0xffffff80213590ce
Kernel Extensions in backtrace:
com.coriolis-systems.driver.Snapshot(113.0)[B6C0FE6D-76C9-3C71-A43A-2D67ED604116]@0xffffff7fa1ffe000->0xffffff7fa2075fff
dependency: com.apple.iokit.IOStorageFamily(2.1)[499E27C9-AC4D-3239-9FC4-754C7699FA76]@0xffffff7fa1fce000
在做了检查以提醒我这是什么之后,我发现这是一个旧版本的iDefrag,来自SSD之前的日子。虽然我很久以前在移动到SSD时已经删除了iDefrag,但似乎这些关键字并没有引起Mojave的问题。
我检查了Mojave安装过程中已经隔离了哪些其他项目,按照我在搜索Coriolis kexts的syslog中报告的内容,并在以下文件夹中找到它们(迁移文件夹名称已在此匿名处理... )
$ cd /Library/SystemMigration/History/Migration-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/QuarantineRoot/Library/StagedExtensions/Library/Extensions
$ ls -l
total 0
drwxr-xr-x 3 root wheel 96 12 Jun 2014 ACS6x.kext
drwxr-xr-x 3 root wheel 96 27 Jun 2016 ATTOCelerityFC8.kext
drwxr-xr-x 3 root wheel 96 27 Jun 2016 ATTOExpressSASHBA2.kext
drwxr-xr-x 3 root wheel 96 27 Jun 2016 ATTOExpressSASRAID2.kext
drwxr-xr-x 3 root wheel 96 20 Aug 2013 ArcMSR.kext
drwxr-xr-x 3 root wheel 96 1 Sep 2013 CalDigitHDProDrv.kext
drwxr-xr-x 3 root wheel 96 11 Apr 2017 CoriolisOnlineHelper.kext
drwxr-xr-x 3 root wheel 96 11 Apr 2017 CoriolisSnapshot.kext
drwxr-xr-x 3 root wheel 96 15 Aug 2014 HighPointIOP.kext
drwxr-xr-x 3 root wheel 96 15 Aug 2014 HighPointRR.kext
drwxr-xr-x 3 root wheel 96 5 Dec 2017 LittleSnitch.kext
drwxr-xr-x 3 root wheel 96 31 Mar 2017 PromiseSTEX.kext
drwxr-xr-x 3 root wheel 96 22 Aug 2017 SoftRAID.kext
LittleSnitch.kext也出现在这里,这让我觉得Little Snitch 3可能不兼容。在OBDev网站上验证后,我使用卸载程序https://www.obdev.at/support/index.html?product=LS&topic=faq&entry=245442241039726删除了LS3
虽然kexts被隔离,但看起来它们仍然存在于某个地方的系统中,因此卸载似乎是最好的方法。实际上LS3卸载程序重建了启动缓存。
正常启动现在成功。