macOS APFS 快照是只读元数据快照,无法用 mount 挂载;必须通过 tmutil listlocalsnapshots 查看、启用 local 快照后从 /Volumes/com.apple.TimeMachine.localsnapshots/... 路径用 cp 或 tmutil restore 提取文件。

macOS 快照(APFS Snapshot)不是普通挂载点,不能用 mount 直接挂载
APFS 快照本身是只读的、内建于卷的元数据快照,不占用独立磁盘空间,也没有传统意义上的“设备路径”。你不会在 /dev/ 下看到它,也不能像 Linux 的 btrfs subvolume 那样用 mount -o ro,snapshot=xxx 挂载。试图对快照运行 mount 会报错:mount: /path: operation not supported。
- 快照必须通过
tmutil或 APFS 卷的隐藏快照目录(.fseventsd不相关,真正入口是/.DocumentRevisions-V100和/.fseventsd之外的/.snapshots—— 但该目录默认不可见且无用户访问权限)间接访问 - 系统级快照(如 Time Machine 自动创建的)仅对 root 或
backupd进程可见;用户无法直接cd /.snapshots或ls /.snapshots - 唯一安全、支持的提取路径是:用
tmutil浏览并恢复文件,或用cp从快照路径拷贝(需先启用快照浏览权限)
用 tmutil listlocalsnapshots 查看可用快照,确认时间戳格式是否合法
本地快照由 tmutil 管理,输出格式为 com.apple.TimeMachine.2024-05-22-143217。注意:这不是 ISO 时间,末尾没有时区,且分隔符是短横线而非冒号;若你在脚本中拼接时间字符串,写成 2024-05-22-14:32:17 会查不到快照。
- 运行
tmutil listlocalsnapshots /(斜杠代表启动卷,勿写成/Volumes/Macintosh\ HD) - 输出为空?说明没有启用本地快照(通常因禁用 Time Machine、SSD 空间不足或手动执行过
tmutil deletelocalsnapshots) - 快照名中的时间是快照创建时刻,不是文件修改时间 —— 所以要提取某份被误删的文档,得选该文档还存在时的快照,而非你发现丢失的当天
通过 tmutil restore 或 cp 从快照路径提取单个文件
快照内容实际映射在 /Volumes/com.apple.TimeMachine.localsnapshots/.../Macintosh\ HD/ 下,但该路径只在 tmutil 启用浏览后才可读。直接 cp 更轻量,适合提取少量文件;tmutil restore 会校验并重建资源派生文件(如 .icns、QuickLook 预览),适合恢复完整 App 或含元数据的文档。
- 启用快照浏览(仅需一次):
sudo tmutil enablelocal(如果已启用,此命令无副作用) - 获取快照路径示例:
/Volumes/com.apple.TimeMachine.localsnapshots/2024-05-22-143217/Macintosh HD/Users/you/Documents/report.pdf—— 注意卷名必须和“磁盘工具”里显示的完全一致(可能叫Macintosh HD - Data,此时路径中也要用这个名称) - 复制文件:
cp "/Volumes/com.apple.TimeMachine.localsnapshots/2024-05-22-143217/Macintosh HD/Users/you/Documents/report.pdf" ~/Desktop/ - 若提示
Permission denied:不是权限问题,而是路径中卷名错误,或快照已被系统自动清理(APFS 本地快照最长保留 24 小时,除非空间充裕)
磁盘工具(Disk Utility)本身不提供快照挂载或文件提取界面
“磁盘工具”里的“快照”选项卡只显示快照列表和大小,点击“还原”会整卷回滚(不可逆!),无法选择文件。它不暴露底层路径,也不调用 tmutil。想图形化操作提取文件,唯一办法是打开 Time Machine 备份界面(进入访达 → 进入目标文件夹 → 点击菜单栏 Time Machine 图标 → “进入时间机器”),然后按时间轴导航到对应快照,再拖出文件。
- Time Machine 界面中看到的“昨天”“一小时前”,背后就是这些本地快照,但 UI 层做了聚合,不显示原始快照名
- 如果 Time Machine 备份盘未连接,界面仍可浏览本地快照(只要它们存在),但右下角会提示“仅显示本地快照”
- 不要依赖磁盘工具做文件级恢复——它的设计目标是卷级修复与格式化,不是取证式提取
快照路径易错点在于卷名拼写、空格转义、以及快照存活时间极短;最稳妥的方式永远是先用 tmutil listlocalsnapshots / 确认存在,再用完整路径 cp,别省略引号。

















