「先亮黄牌,再等清场」:macOS 27 把 hdiutil 挂上弃用名单

| | 1 次浏览

对于常年和 Mac 打包脚本打交道的人来说,hdiutil 大概是终端里最熟悉的命令之一:创建 DMG、挂载镜像、转换格式,几乎每一条 Mac 应用的发布流水线里都有它的身影。近日,开发者 Jeff Johnson 在其博客 Lapcat Software 上指出,苹果在 macOS 27「Golden Gate」中已将这个服役二十多年的命令行工具标记为弃用。这条消息在 Hacker News 上几乎没有激起讨论,但它的分量可能远大于表面的平静。

事件要点

  • 在 macOS 27 Golden Gate 中,hdiutil 被苹果列为弃用状态,成为这一版本里为数不多被明确"判缓刑"的老牌命令行工具。
  • hdiutil 是 macOS 磁盘映像功能的命令行入口,负责创建、挂载、校验、转换乃至刻录磁盘映像,DMG、稀疏捆绑、加密镜像等格式都由它背后的 DiskImages 框架驱动。
  • 弃用不等于立刻删除。参照苹果的惯例,工具通常要先经历数个大版本的"黄牌期":Python 2.7 从弃用到 12.3 版本直接移除,32 位应用从 High Sierra 弹窗提醒到 Catalina 全面停摆,中间都隔着数年缓冲。

背景:一条流水线的地基

DMG 之于 Mac 生态,几乎等同于 App Store 之外的事实分发标准:独立开发者官网的下载链接、开源项目的发布页、Homebrew Cask 抓取的安装包,绝大多数以 DMG 形式交付。而无论你用的是裸 hdiutil 命令,还是 create-dmgdmgbuild 这类封装工具,链条末端往往都是同一个系统命令。换句话说,这次弃用波及的不只是少数脚本爱好者,而是整个 Mac 应用分发基础设施的底层依赖。

值得一提的是,hdiutil 的资历可能比许多 Mac 开发者的从业年限还长。它自 Mac OS X 早期便已存在,把映像管理的思路一路延续到 Apple Silicon 时代。刻录光盘这类职能确实早已过时,但创建与挂载映像仍是无数脚本每天都要执行的日常工作。

影响与待解的问题

目前的公开信息中,苹果尚未说明继任方案,是推出新的命令行工具、开放新的系统 API,还是引导开发者转向其他分发形态,都没有明确答案。对普通用户而言,短期内不会有任何感知;对开发者而言,真正的问题是迁移窗口有多长:

  • CI/CD 盘点:GitHub Actions、GitLab 的 macOS runner 上存在大量直接调用 hdiutil 的脚本,需要在弃用转正式移除前摸清依赖面;
  • 封装工具评估:主流 DMG 生成工具底层多依赖 hdiutil,一旦系统侧收紧,它们需要新的出路;
  • 架构层面预防:长期维护的内部工具应尽早把镜像操作抽象成独立模块,避免把某个系统命令硬编码进业务逻辑。

结合近两年的节奏——年更的大版本号、界面的全面重绘、再到如今开始清理老牌命令行工具——苹果显然在加速系统的新陈代谢。相比视觉层面的改版,这类底层工具的退场要安静得多,但影响的纵深反而更大。

简短点评

苹果的弃用文化向来是"先亮黄牌,再等清场",hdiutil 大概率还有几年缓冲期,不必恐慌。但 DMG 分发是 Mac 生态的商业命脉之一,希望这次苹果能给出清晰的继任方案和足够长的跑道,而不是像当年移除脚本运行时那样让脚本一夜报错。对开发者来说,这也是个温和的提醒:越是那种"看起来永远不会变"的基础设施,越值得在它真正变化之前留好后手。

评论(0)

暂无评论,来写第一条吧。