macOS 制作镜像报错 killed sudo?1 条命令修复签名问题
2024/5/7大约 2 分钟
概述
在 macOS 中通过 createinstallmedia 命令制作系统镜像(如 High Sierra、Monterey)时,常遇到终端报错:
zsh: killed sudo --volume /Volumes/SYSIN
这并非权限不足或命令错误,而是 macOS 的 “应用签名机制” 在起作用:
- createinstallmedia 是苹果官方的镜像制作工具,默认带有苹果的数字签名,确保工具未被篡改;
- 若签名过期、损坏(如镜像文件从非官方渠道获取、系统版本不兼容),macOS 的安全机制(Gatekeeper)会直接 “杀死” 该进程,避免潜在风险,最终触发 “zsh: killed” 报错。
此问题在制作旧版本 macOS 镜像(如 High Sierra、Mojave)时尤为常见,只需重新为 createinstallmedia 工具签名,即可绕过安全拦截。
核心解决方案:重新签名 createinstallmedia 工具
通过 codesign 命令(macOS 自带的签名工具),为 createinstallmedia 重新生成 “本地签名”,让系统认可工具的安全性,步骤仅需 2 步,全程 1 分钟。
操作步骤(以 High Sierra 为例,其他版本通用)
第 1 步:进入 createinstallmedia 所在目录
首先通过 cd 命令切换到 createinstallmedia 工具的路径(不同 macOS 版本的路径一致,只需替换 “Install macOS XX.app” 的名称):
# 切换到 High Sierra 镜像的 Resources 目录
cd /Applications/Install\ macOS\ High\ Sierra.app/Contents/Resources/
- 路径说明:Install macOS High Sierra.app 是下载的 macOS 安装包,Contents/Resources/ 是工具存放目录;
- 若制作其他版本(如 Monterey),将路径中的 “High Sierra” 替换为对应版本(如 Install macOS Monterey.app)。
第 2 步:执行重新签名命令
在当前目录下,执行 codesign 命令为 createinstallmedia 重新签名:
codesign -s - -f createinstallmedia
命令参数详解:
- codesign:macOS 自带的应用签名工具;
- -s -:表示 “使用本地自签名证书”(- 代表 “无指定证书,自动生成临时签名”,无需额外申请苹果开发者证书);
- -f:强制覆盖原有签名(若工具已有损坏签名,直接替换,无需确认);
- createinstallmedia:目标签名文件(即镜像制作工具)。
签名成功提示:终端无报错且返回命令行提示符,说明签名已完成(无需额外提示信息,无报错即代表成功)。
第 3 步:重新执行镜像制作命令
签名完成后,回到之前的镜像制作命令,再次执行即可正常运行:
# 制作 High Sierra 镜像到 /Volumes/SYSIN 分区(替换为你的 USB 名称)
sudo /Applications/Install\ macOS\ High\ Sierra.app/Contents/Resources/createinstallmedia --volume /Volumes/SYSIN
执行后按提示操作:
- 输入当前用户密码(sudo 权限验证,无明文显示,输完按 Enter);
- 终端提示 “Erase disk /Volumes/SYSIN? (y/N)”,按 y 确认抹除 USB 分区(会清空数据,需提前备份);
- 等待进度完成(约 5-10 分钟,取决于 USB 速度),最终提示 “Install media now available at /Volumes/Install macOS High Sierra”,表示镜像制作成功。