FileVault 无法打开时该怎么办

filevault2 mac 图标

更新:我们找到了一个适用于很多人的解决方案,您可以在这个新专栏中阅读

最近我的 MacBook 出现了一个无法解释的问题,即 macOS 可以完成加载,但在桌面出现之前永远不会越过空白屏幕,我不得不恢复到克隆版本。 (即使重新安装 macOS 也不起作用。)然后我升级到 Mojave。比喻地说,macOS 的一个重要部分”掉了出来”。

Apple 在 10.13 High Sierra 中向安装时或升级后在 macOS 中创建的第一个帐户添加了”安全令牌”的概念,作为允许您使用 FileVault 的过程的一部分。几乎没有关于此功能的信息,并且无法从 macOS 的图形功能确定帐户是否设置了该功能。

但是,如果您的所有帐户都缺少安全令牌,则无法获取安全令牌,并且您将无法打开 FileVault。这就是我发现自己所处的情况,而且我发现很多其他人也有同样的情况。

在我的 MacBook 恢复并更新到最新版本后,我尝试重新启用 FileVault,陷入了这个兔子洞:

  1. 打开”安全和隐私”系统偏好设置面板。
  2. 点击”FileVault”选项卡。
  3. 点击左下角的锁定图标并输入管理帐户和密码。
  4. 点击”打开 FileVault”。

第 4 步之后应该发生的情况是,macOS 会显示一个对话框来指导您继续,或者出现一条错误消息(有时是模糊地)解释为什么不能继续。

就我而言,以及在互联网论坛上分享过相同经历的其他人,根本没有互动。单击该按钮不会导致任何操作。

此时,您可以通过终端”询问”macOS(在”应用程序”>”实用程序”中)。首先,您需要知道 macOS 帐户的 Unix 帐户名。如果您不知道那是什么,请先按照以下步骤操作:

  1. 打开”用户与组”窗格。
  2. 点击左下角的锁定图标并输入管理帐户和密码。
  3. 按住 Control 键并点击帐户列表中的帐户名称,然后选择”高级选项”。
  4. 帐户名称是您的 Unix 帐户的简称。

现在,有了该名称,请按照以下步骤操作:

  1. 打开应用程序 > 实用程序 > 终端。
  2. 在终端提示符下复制并粘贴以下内容,将 accountname 替换为您在上面找到的 Unix 帐户名称,然后按 Return 键:sudo sysadminctl -secureTokenStatus accountname
  3. 出现提示时,输入您的帐户密码。

如果您遇到与我相同的问题,响应将是:

sysadminctl[...] 用户全名禁用安全令牌

(将显示您的帐户名而不是全名。)

根据我的所有阅读和测试,没有办法启用安全令牌。我尝试了一种建议的方法,允许您重新运行初始 macOS 设置而不擦除系统,并创建了一个新的管理帐户,该帐户表面上应该接收安全令牌授予。没成功。

还有一些文章解释了如何授予自己临时安全访问权限并使用该访问权限将其分配给另一个帐户 – 它在 Mojave 中也不起作用。

我还尝试了一种设置管理帐户访问权限的方法,但在 Mojave 和 High Sierra 中失败了。完整的错误消息相当长:

setSecureTokenAuthorizationEnabled 错误 错误域=com.apple.OpenDirectory 代码=5101"身份验证服务器拒绝操作,因为当前凭据未获得所请求操作的授权。" UserInfo={NSLocalizedDescription=身份验证服务器拒绝操作,因为当前凭据未获得请求操作的授权。, NSLocalizedFailureReason=身份验证服务器拒绝操作,因为当前凭据未获得请求操作的授权。

我还没有尝试下一个选项,即重新安装 macOS。我最近的重新安装记忆犹新,目前很稳定。有些人甚至报告说这对他们不起作用,所以我不确定这是最好的前进道路。

有一个核心选​​项,即进行完整备份、擦除 Mac 并从头开始安装 macOS。然后使用迁移助手恢复您的文件。 (如果您使用克隆进行恢复,它会覆盖帐户信息,从而也会删除新创建的安全令牌。)

询问 Mac 911

我们整理了最常被问到的问题列表以及答案和专栏​​链接:阅读我们的超级常见问题解答,看看您的问题是否得到解答。如果没有,我们总是在寻找新的问题来解决!通过电子邮件将您的信息发送至 mac911@macworld.com,包括适当的屏幕截图,以及您是否希望使用您的全名。每个问题都不会得到解答,我们不会回复电子邮件,也无法提供直接的故障排除建议。