-
Notifications
You must be signed in to change notification settings - Fork 525
如果应用无法正常运行
由于目前我们没有额外的需求加入苹果开发者计划, 因此目前发布于 Github Release 的包均未经过签名
因此在新版本的 macOS 系统中, 执行应用会被系统内置的 Gatekeeper 功能阻止 (也曾被称为 File Quarantine 功能), 这是正常现象
为了解决这个问题, 我们在这里提供几个可行的安全的解决方案让你执行 Mos (需要使用命令行)
请参照官方指引 https://support.apple.com/zh-cn/guide/mac-help/mh40616/mac
在 macOS 中, 任何通过网络下载的可执行文件都会被添加一段名为 com.apple.quarantine
的扩展属性, 其标识了文件下载的来源以及时间等信息, 如果该条目存在, Gatekeeper 将会检查其安全性, 并可能阻止其执行
在终端中, 进入 Mos.app 所在目录, 并输入以下代码
xattr -d com.apple.quarantine Mos.app
即可移除 Mos.app
文件的 com.apple.quarantine
扩展属性, 然后双击即可直接运行应用
正常情况下 macOS 仅允许直接执行以下类型的应用
- 来自 AppStore 或的应用
- 已经过 Apple Developer Progam 的帐号签名的应用
在早期的 macOS 版本中, 你可以在 系统偏好设置\安全性与隐私
中直接将 Gatekeeper 设置为允许 所有来源
的应用安装
但在近期的版本中, 该选项是隐藏的, 你可以在终端中输入以下代码来设置 Gatekeeper
sudo spctl --master-disable
这下好了, Gatekeeper 将不会阻止任何应用运行
如果有必要, 你也可以在终端中输入如下代码恢复 Gatekeeper 的设置
sudo spctl --master-enable
如果您担心预编译文件的安全性, 您也可以自行审阅或编译代码, 我们也非常欢迎您贡献代码 !
https://support.apple.com/en-us/HT202491
https://eshop.macsales.com/blog/57866-how-to-work-with-and-around-gatekeeper
https://superuser.com/questions/28384/what-should-i-do-about-com-apple-quarantine
假设您已经在辅助功能中勾选了 Mos, 但应用仍然无法工作, 可以先尝试取消勾选, 再重新勾选一次
如果仍然无效, 也可以参考社区中给出的解决方案, 虽然我们不确定是否对你有用, 但不妨一试
- 关闭 Mos
- 系统设置 - 安全性与隐私 - 隐私 - 辅助功能,解锁设置,然后找到 Mos.app
- 先取消勾选 Mos.app,然后点下方的 - 号将其完全删除,然后上锁并关闭设置页面
- 重新启动 Mos,按提示重新勾选 Mos.app
Credit by @HunDunDM: https://github.com/Caldis/Mos/issues/394#issuecomment-836132924
Translate by DeepL