Loading... # macOS Tahoe Time Machine 失效问题分析 # 一、事件概述 ## 1. 事件背景 macOS Tahoe 更新后,使用 Synology NAS 作为 Time Machine 备份目标的用户发现备份功能悄然失效。 ## 2. 影响范围 ### A. 影响用户 所有通过 SMB 协议将 Synology NAS 用作 Time Machine 备份目标的 macOS Tahoe 用户 ### B. 影响时长 约两个月备份失效,用户尝试恢复文件时才发现问题 ### C. 影响功能 Time Machine 自动备份功能 ## 3. 严重程度 中等严重度(数据备份失效但无明确告警) # 二、问题分析 ## 1. 直接原因 Apple 单方面改变了 macOS Tahoe 中的 SMB 默认设置,从 signing_required=no 改为更严格的控制,且未通知用户。 ## 2. 根本原因 NAS 设备的 SMB 设置较为宽松,无法应对 macOS 更严格的签名要求,导致 Time Machine 备份静默失败。 # 三、问题时间线 ```mermaid sequenceDiagram participant U as 用户 participant M as Mac设备 participant N as Synology NAS participant A as Apple Note over M,N: 之前正常工作 M->>N: SMB连接正常 N-->>M: 备份成功 Note over A: macOS Tahoe更新 A->>M: 改变SMB默认设置 Note over M: signing_required变更为yes M->>N: 尝试SMB连接 N-->>M: 连接失败(签名不匹配) Note over M: Time Machine静默失败 Note over U: 两个月后尝试恢复 U->>M: 查看备份 M-->>U: 最新备份停留在12月 ```  ## 3. 问题表现 - Time Machine 静默停止备份 - 无错误消息或通知 - 用户尝试恢复文件时才发现最新备份停留在两个月前 # 四、解决方案 ## 1. 临时方案(Mac 端配置) ### A. 编辑配置文件 使用 sudo 权限编辑 Mac 端的 nsmb.conf 文件: ```bash sudo nano /etc/nsmb.conf ``` ### B. 添加配置内容 ```ini [default] signing_required=yes streams=yes soft=yes dir_cache_max_cnt=0 protocol_vers_map=6 mc_prefer_wired=yes ``` ### C. 配置说明 - signing_required=yes:明确要求 SMB 签名 - protocol_vers_map=6:指定 SMB 协议版本 - 其他参数优化连接性能 ### D. 注意事项 - 需要移除 .sparsebundle 名称中的非 ASCII 字符 - Apple 未来更新可能再次破坏此配置 ## 2. NAS 端配置(Synology DSM) ### A. 配置路径 控制面板 > 文件服务 > SMB > 高级设置 ### B. 推荐配置 | 配置项 | 建议值 | |--------|--------| | 最大 SMB 协议 | SMB3 | | 启用机会锁定 | 是 | | 启用 SMB2 租约 | 是 | | 启用 SMB 持久句柄 | 是 | | 服务器签名 | 否或自动 | | 传输加密 | 禁用 | ### C. DSM 7.3.2 参考配置  # 五、替代方案 ## 1. Docker 容器方案 ### A. 方案概述 使用 mbentley/timemachine Docker 镜像,部署在 Proxmox + ZFS 环境中,提供独立的 Time Machine 备份服务。 ### B. 优势 - 不依赖 Synology 的 SMB 实现 - 更多的配置控制权 - 持续维护的社区方案 ### C. 部署配置 ```mermaid graph LR A[Mac设备] -->|SMB| B[Docker容器<br/>mbentley/timemachine] B -->|ZFS挂载点| C[Proxmox ZFS存储] A -->|备用| D[Thunderbolt外置硬盘] ```  ### D. docker-compose.yml 示例 ```yaml services: timemachine: image: mbentley/timemachine:smb container_name: timemachine restart: always network_mode: host environment: - TM_USERNAME=timemachine - TM_GROUPNAME=timemachine - PASSWORD=timemachine - TM_UID=65534 # 'nobody' 用户 - TM_GID=65534 # 'nobody' 组 - SET_PERMISSIONS=false - VOLUME_SIZE_LIMIT=0 volumes: # Proxmox ZFS 卷的直通挂载点 - /mnt/shares/timemachine:/opt/timemachine tmpfs: - /run/samba ``` ## 2. 多重备份策略 ### A. 本地备份 - Time Machine 到 NAS(主要) - Time Machine 到 Thunderbolt 外置硬盘(次要) ### B. 异地备份 考虑增加 3-2-1 备份策略中的异地备份组件。 # 六、相关背景 ## 1. 其他相关问题 同期发现 iOS 设备恢复时仍存在长期未修复的 bug:Restore in Progress: An estimated 100 MB will be downloaded...,此问题已存在六年之久。 ## 2. 解决方法 重置网络设置 + 完整硬件重启 + 重新连接 Wi-Fi,部分情况需要多次尝试。 # 七、经验总结 ## 1. 核心教训 - Time Machine 静默失败风险极高,需要定期验证备份可用性 - Apple 单方面更改协议设置缺乏透明度 - 依赖单一备份方案风险较大 ## 2. 改进建议 - 实施多重备份策略(3-2-1 原则) - 定期检查备份状态 - 考虑跨平台备份方案以减少对单一生态的依赖 ## 3. 技术债务 - nsmb.conf 修改可能在系统更新后失效 - 需要建立配置版本控制和自动化检查机制 *** ## 参考资料 1. [TIL: Apple Broke Time Machine Again On Tahoe - Tao of Mac](https://taoofmac.com/space/til/2026/02/01/1630) 2. [Time Machine Docker镜像 - mbentley/timemachine](https://hub.docker.com/r/mbentley/timemachine) 3. [SMB配置解决Gist - Zahorone](https://gist.github.com/Zahorone/6915be6f5088edb2f64018ce9e4dfe97) 最后修改:2026 年 02 月 02 日 © 允许规范转载 赞 如果觉得我的文章对你有用,请随意赞赏