本文由 简悦SimpRead 转码, 原文地址 blog.binaryage.com
从 El Capitan 到这里
2015 年,我们意识到系统完整性保护会阻止 TotalFinder 和 TotalSpaces2 在正常配置的 Mac 上运行。当时,我们认为这将意味着这些产品作为普通消费者产品的终结。
不过,很明显,虽然我们的销售额不如以前,但这些产品仍然得到了强有力的支持。改善工作流程和系统可用性的工具仍然有市场。
一线曙光
我们经常听到的一个要求是,允许在安装 TotalFinder 和 TotalSpaces2 时打开系统完整性保护 (SIP) 功能。事实上,我们发现这是有可能实现的--我们早先曾建议任何要求通过复杂程序在特殊系统位置安装我们的插件组件的人,这样应用程序就可以在正常配置的 Mac 上运行。
在意识到我们可以做到这一点后,我们希望将这一选项提供给所有人。我们已将其简化,事实上,从现在起这将是默认的安装方法。
TotalFinder 和 TotalSpaces2,打开 SIP
我们应用程序的安装过程如下:
- 重启进入恢复模式(重启时按住 cmd-R)。
- 进入实用工具->终端,输入 csrutil disable,然后重启。
- 安装 TotalSpaces2 和/或 TotalFinder,并运行应用程序
- (可选)重启至恢复模式(重启过程中按住 cmd-R)。
- (可选)进入实用工具->终端,输入 csrutil enable,然后重启。
因此,在安装应用程序之前,请先关闭 SIP,然后在安装应用程序后再重新开启 SIP。
TotalFinder v1.9.0 和 TotalSpaces2 v2.5.4 支持这种新的安装方法。
如果您是从以前的版本升级,一切都将继续正常工作。但要完全打开 SIP,必须经过上述过程。
您可以在 TotalFinder 这里 和 TotalSpaces2. 这里 找到更多信息。
技术细节
TotalFinder 和 TotalSpaces2 都有一个插件组件,位于 /Library/ScriptingAdditions 中。作为普通用户,如果允许管理员访问,则可以在此写入该组件。
但是,OSX/MacOS 在完全打开系统完整性保护的情况下,无法加载该位置的插件。
事实证明,还有另一个位置,即 /System/Library/ScriptingAdditions 位置,即使开启了 SIP,系统也会从该位置加载插件。但是,必须先关闭 SIP,才能在该位置写入插件。
我们将改用该系统位置作为主要插件位置。因此,在安装时,请关闭 SIP,安装并运行应用程序,然后再自由打开 SIP。
风险
苹果公司 "拥有 "您文件系统中的系统位置,他们完全有可能在软件更新时删除我们的插件组件。如果发生这种情况,您需要再次关闭 SIP 才能重新安装插件。我们认为这种情况不会发生,但世事难料。
如果我们必须更新插件组件,这也需要更改 SIP,但我们的目标是在多个版本中保持组件的稳定性。
结束语
TotalFinder和TotalSpaces2在此版本中都有许多其他改进,因此值得升级。我们将在今天向预发布测试人员推送新的二进制文件,如果一切正常,我们将很快向所有用户推送新的二进制文件。如有任何问题,请通知我们!