近日,部分升级至 macOS Sequoia 15.5 的用户反馈,在根目录(/)下通过 /etc/synthetic.conf 配置文件创建符号链接(symlink)的功能出现异常,导致自定义目录映射失效,影响日常开发与系统定制工作。该问题在苹果开发者论坛、Reddit 及 GitHub 社区引发广泛讨论,目前苹果官方尚未发布正式声明,但已有技术达人提供了临时解决方案。

何为 synthetic.conf

在 macOS 10.15 Catalina 及后续版本中,Apple 引入了“合成符号链接”(Synthetic Symlink)机制,旨在解决系统卷(System Volume)只读保护后用户无法在根目录直接创建链接的痛点。/etc/synthetic.conf 是一个纯文本文件,语法简洁:每行定义一个 <link_name> <target_path> 映射。系统在每次启动时解析该文件,在根目录生成对应的符号链接,且这些链接在重启后仍能持久保留。这一机制广泛被开发者用于挂载自定义网络卷、映射 Docker 数据目录或创建常用路径别名。

问题表现:链接消失或创建失败

据多位用户报告,升级至 Sequoia 15.5 后,/etc/synthetic.conf 中的配置项在重启后未按预期生效。具体表现为:

  • 根目录下原本存在的自定义符号链接完全消失,ls -la / 看不到任何对应条目;
  • 手动执行 sudo synthetic.conf 或通过 sudo launchctl load 重载相关服务时,系统报错 “Failed to create symlink: Operation not permitted”;
  • 部分用户观察到链接在登录后短暂出现数秒,随后自动消失,疑似被内核安全机制或 launchd 周期性任务干扰。

一名来自北京的 iOS 开发者表示:“我的项目依赖 /Users/Shared 映射到外部 SSD,升级后 Xcode 一直报文件路径错误,排查了一上午才发现是 synthetic.conf 失效了。”

可能原因:SIP 策略收紧与 APFS 快照冲突

目前社区尚未定位到确切根因,但多数技术分析指向以下两点:

  1. 系统完整性保护(SIP)策略变化:Sequoia 15.5 可能悄然加强了根目录文件系统的写入限制,导致 synthetic.conf 对应的系统服务(com.apple.syspolicydsyntheticd)在启动早期无法获得足够权限完成链接创建。即便用户未关闭 SIP,权限模型也发生了细微调整。

  2. APFS 快照回滚机制:macOS 在系统更新或启动过程中会创建 APFS 快照,若快照在链接创建后被回滚(例如因引导故障或系统一致性检查),那么根目录下新生成的符号链接会被一并抹除。有用户发现在 terminal 中通过 mount 查看,/ 实际挂载点显示为系统快照而非主卷,这间接印证了快照冲突的推测。

临时解决方案与官方动态

鉴于苹果尚未发布补丁,以下社区验证有效的临时方法可供参考:

  • 关闭 SIP 并重启:进入恢复模式执行 csrutil disable,然后正常启动。部分用户反馈禁用 SIP 后问题消失,但会降低系统安全性。
  • 使用开机脚本代替:编写一个 launchd.plist(如 com.user.symlinks.plist),在 ProgramArguments 中执行 ln -sf 命令,并设置 RunAtLoad 为 true。注意需将 plist 存放于 /Library/LaunchDaemons/ 并赋予正确权限。
  • 回滚至 Sequoia 15.4:对于生产环境,通过 Time Machine 或 IPWS 降级至先前版本是最稳妥的选择。

有追踪 macOS 内部版本的开发者指出,Apple 已在 Sequoia 15.6 Beta 中修复了该问题,但正式版发布时间未定。用户在参与测试计划时可留意升级。

影响与建议

本次故障波及范围较广,受影响的不仅是高级用户,还包括依赖 synthetic.conf 进行文件系统布局的第三方工具(如 Homebrew 的 brew link 替代方案、Docker Desktop 的符号链接隧道等)。对于普通用户,若未在根目录自定义链接则无需担忧,但建议暂时避免向 /etc/synthetic.conf 新增条目。

苹果官方支持页面至今未将该问题列为已知问题。我们建议受影响用户通过 bugreport.apple.com 提交反馈,并关注 macOS 后续更新公告。在等待官方修复期间,可优先采用 launchd 替代方案,既能确保功能正常,又可避免关闭 SIP 带来的安全风险。


截至发稿,macOS Sequoia 15.5 版本号为 24F2031,受影响设备涵盖 Intel 与 Apple Silicon 机型。我们将持续跟踪事件进展。