如何从无法启动的Mac上获取数据

一系列方法,适合不同的情况。

如果你的Mac无法启动了,你仍有很大机会恢复数据。以下是如何从Mac的内部驱动器上获取你的文件的方法  — — 即使macOS不断崩溃或拒绝启动。

有最近的备份吗?使用它

最佳做法是定期将Mac备份到外部位置。你可以使用 Time Machine 和一个简单的外部USB硬盘来做这件事。

当最坏的情况发生时,Mac完全无法启动,可以简单地将你的 “时间机器” 备份磁盘插入另一台Mac,从那里访问你的文件。这种方法假定你有一个最近的备份,并且该备份包括你想访问的文件。

双击 “Backups.backupdb” 文件夹,然后是与你的Mac名称相符的文件夹。现在会看到一个文件夹列表,代表每一个单独执行的备份。“Latest” 是最近的备份。

恢复你需要的东西,或者使用 Finder 中的搜索来寻找特定的文件夹或文件。

有一台 Intel Mac?使用目标磁盘模式

目标磁盘模式可用于与另一台Mac共享坏掉的Mac的驱动器来传输文件,前提是源Mac没有使用 Apple Silicon。可以在 “Apple > 关于本机” 菜单下检查你是否在运行 Intel 或 Apple Silicon。

首先,用 Firewire 或 Thunderbolt 电缆连接两台Mac(这在标准USB电缆上是行不通的)。现在确保你想共享的那台Mac(源电脑)是关闭的。在源Mac上(无法启动的那台),按下电源按钮,然后立即按住T,等待启动到目标磁盘模式。

现在把注意力转向第二台Mac。一旦启动目标磁盘模式,源Mac的驱动器应该出现在你的桌面上(或在 Finder 侧边栏的 “位置” 下)。双击该驱动器以访问它。

如果驱动器是用 FileVault 加密的,应该会提示你输入密码,macOS可以用它来解密该卷。在这个阶段,你可以传输你可能需要的任何文件。完成后,弹出驱动器并关闭源Mac。

有一台苹果Silicon Mac?使用Mac共享模式

如果你试图从配备M1芯片或更高版本的苹果 Silicon Mac上共享文件,可以使用Mac共享模式。这与目标磁盘模式非常相似,尽管它的工作方式有点不同。

首先,用USB、USB-C 或 Thunderbolt 电缆连接你的两台电脑。确保 Silicon Mac(你想共享的那台)已经关闭,然后按住电源按钮,直到在屏幕上看到 “正在加载启动选项”。

从这里选择 “选项”,然后选择 “继续”,并在出现提示时输入你的密码。Mac将启动到恢复模式,这时你可以选择实用工具,然后选择共享磁盘。选择你想共享的磁盘,然后点击开始共享。

在另一台Mac上(你要传输文件的那台),打开Finder,向下滚动到侧边栏的底部,点击 “位置” 部分中的网络。如果一切顺利,应该可以看到你试图复制数据的那台Mac出现。双击它,然后点击 “连接”,接着点击 “访客”,然后点击 “连接”,最终完成这一过程。

现在你应该能够看到你的Mac的文件,并传输你需要的任何东西。完成后,弹出磁盘并关闭源Mac。

使用恢复模式复制你的数据

苹果在每台Mac上都有一个恢复分区,因此,即使macOS无法正常启动,你也应该能够进入恢复模式来解决问题。恢复模式包括一些有用的功能,如终端窗口、重装macOS的能力,以及用于擦除和修改分区的磁盘工具。

老式 Intel Mac 用户可以在启动时按住 Command+R 进入恢复模式。如果你有一台较新的苹果 Silicon Mac,关闭电脑,然后按住电源按钮,直到你看到 “正在加载启动选项”,然后选择选项>继续。

如果你的驱动器没有用 FileVault 加密,可以立即访问文件,可跳到下面的 “使用命令行复制文件” 部分。大多数驱动器在默认情况下是加密的,所以如果你不确定,可以使用终端命令来检查。

解密 FileVault 驱动器(终端)

可以通过使用终端,或通过磁盘工具来完成这项工作。如果你想通过图形化的磁盘工具来完成,请跳到下一节。

恢复模式启动后,你会看到一个实用程序的列表,点击屏幕上方的实用程序>终端,打开一个新的终端窗口。在终端中输入 diskutil apfs list,然后点击 Enter。

这将提供一个当前连接到你的Mac的APFS格式化驱动器的列表。向下看,直到找到一个与你的主驱动器相匹配的驱动器(它可能是唯一一个标有 “FileVault: Yes (Locked) ” 的驱动器)。注意 “APFS物理存储” 字段中的磁盘标识符。在本案例中它是disk2s1。

在接下来的步骤中,需要 FileVault 密码(就是你用来解锁Mac的密码)。在终端 diskutil apfs unlockVolume /dev/identifier 中输入以下内容,但用你在上一步中记下的标识符代替 identifier,例如 disk2s1。

当有提示时,输入密码,然后回车。搞错了也没关系,再一次输入之前的命令并重试。如果密码正确,磁盘现在已经被解锁和挂载。现在是时候把数据复制到另一个驱动器了。

解密你的FileVault驱动器(磁盘工具)

与其使用上面的终端命令,你可以尝试用磁盘工具以图形方式进行操作。终端方法在磁盘实用程序不起作用的情况下是有效的。(如果已经使用了终端命令,就不必再使用磁盘工具了)。

退出任何终端窗口,使macOS实用程序窗口再次出现,并从列表中选择磁盘工具。你应该看到你的硬盘在屏幕左边的 “Internal” 部分列出。如果它是灰色的,那么它是加密的,没有挂载。

点击左边的 “数据” 分区,然后点击窗口顶部的 “挂载” 按钮。系统会提示输入FileVault密码,输入密码后点击 “解锁” 按钮。FileVault分区将被解锁并挂载。

使用命令行复制文件

你不能在恢复模式下运行Finder,所以任何文件都必须使用终端手动复制。如果你知道想要的文件在哪里,或者你有一个足够大的外部驱动器,可以简单地复制所有的文件,这就很容易。

可以使用 ls /Volumes/Macintosh/ HD/ 命令来查看目录结构概况。任何名称中带有空格的目录都需要在命令中的空格前加上反斜杠。例如,一个名为 “My Photos” 的文件夹会变成 /My\ Photos/。

连接的任何外部驱动器应该被系统自动挂载。可以使用 ls /Volumes/ 来检查驱动器是否存在。如果找不到驱动器,退出终端,回到 macOS 实用程序主窗口。从这里选择磁盘工具,然后寻找驱动器。如果仍然没有出现,就断开连接,然后重新连接,直到它出现。

退出磁盘工具,然后使用实用工具>终端,以启动终端。现在使用cp命令来复制文件,使用-R 进行递归复制(包括指定位置的所有目录和文件)。

因此,假设你想把 “Macintosh HD” 分区上一个叫 “htg” 的用户的整个用户文件夹复制到一个名为 “Rescue Disk” 的外部驱动器上,命令将是:

cp -R /Volumes/Macintosh\ HD/Users/htg/ /Volumes/Rescue\ Disk/

用你的用户替换 “htg”(运行 ls /Volumes/Macintosh/HD/Users/ 找到它),并替换你的目标驱动器。整个文件夹将被复制到外部驱动器的根目录,只要有足够的空间。

如果你想把内容复制到外部驱动器上的一个特定文件夹,在开始之前使用 mkdir 命令,例如:mkdir /Volumes/Rescue/Disk/backup,在根目录下创建一个名为 “备份” 的文件夹。

考虑物理移除驱动器

最后一个选择是将硬盘从Mac内部物理移除,并将其安装在另一台电脑上。由于苹果公司使用的驱动器类型有很大的差异,具体的指示将根据你的设备而有所不同。

首先是查找Mac型号。序列号会印在机箱外面的某个地方(例如,在MacBook的底部),然后把它放入 checkcoverage.apple.com,以获得精确型号、年份和日期。

有了这些信息,就可以去 iFixit 查找Mac型号了,找出如何进入机箱的方法。可能需要一套TORX螺丝刀,而且应该采取预防措施,如使用防静电腕带,注意别把螺丝弄丢了。

之后的方法取决于驱动器。如果Mac特别旧,它可能有一个机械硬盘或一个较旧的固态硬盘。现在大多数Mac使用M.2或NVMe,有些使用专用连接器。

移除硬盘后,需要解决如何将其连接到另一台电脑或Mac上。有一些M2和NVMe的接口可以使这一过程更加容易,SATA到USB适配器将适用于旧的SSD和HDD型号。

不幸的是,让另一台机器识别这个硬盘可能有点麻烦。Will Haley 的博客对这个过程有一个很好的介绍,从寻找适配器到在Linux中挂载HFS+分区。

如果硬盘是用 FileVault 加密的,这可能要麻烦一点  — — 特别是如果你没有使用macOS进行恢复过程的话。如果你使用的是macOS,请尝试以下方法:

  • 打开一个终端窗口,使用 diskutil apfs list 命令找到你想挂载的(APFS格式的)卷。
  • 记下卷标识符,例如 disk1s1 。
  • 输入以下命令,用之前的标识符替换 disk1s1: diskutil apfs unlockVolume /dev/disk1s1
  • 在出现提示时,输入你在登录Mac时使用的密码来解密该卷。⚪️

How to Get Your Data Off a Mac That Won’t Boot

发表评论

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据