gibMacOS 亲测手记:Windows 电脑直连 Apple 服务器下载 macOS 全系镜像的完整指南

gibMacOS 亲测手记:Windows 电脑直连 Apple 服务器下载 macOS 全系镜像的完整指南

【免费下载链接】gibMacOS Py2/py3 script that can download macOS components direct from Apple 【免费下载链接】gibMacOS 项目地址: https://gitcode.com/gh_mirrors/gi/gibMacOS

凌晨一点,测试机还在等我交 macOS 镜像,而我手边只有一台 Windows 笔记本。Apple 官网的 macOS 下载页在非 Mac 浏览器里永远只给一个"即将推出"的占位符,第三方镜像站不是限速就是来路不明。那一晚我翻到一个叫 gibMacOS 的 Python 脚本——它能绕过"必须用 Mac 才能下载 macOS"这道坎,从 Apple 自己的服务器直连下载从 Tiger 到 Sequoia 的几乎所有系统组件。读下去,你会看到我怎么用它救场,它有哪些别人不说的坑,以及它值得放进你工具箱的哪个位置。

🚀 三分钟跑通第一步:克隆、运行、看到菜单

上手比想象中简单。先把仓库拉下来:

git clone https://gitcode.com/gh_mirrors/gi/gibMacOS
cd gibMacOS
python3 gibMacOS.py

前提只有一个:机器上有 Python 3(老版本也兼容 Py2)。Windows 用户更省事,直接双击 gibMacOS.bat,它会自动找 Python,找不到还会引导你安装,比纯命令行友好得多。

第一次运行,脚本会先访问 Apple 的软件更新目录服务器(swscan.apple.com)拉一份 sucatalog 目录文件,然后打印一个编号菜单,每个条目是"版本名 + 构建号 + 发布日期 + 体积",输入数字回车,进度条就开始走,默认存到 macOS Downloads/<catalog>/<版本名> 目录。下载逻辑的核心在 Scripts/downloader.py,目录解析在 Scripts/plist.py,想研究源码就从这两个文件下手。

命令行参数速查卡:一张表看懂核心下载指令

菜单适合探索,批量操作还得靠参数:

命令作用示例
--latest下载当前目录里的最新版本python3 gibMacOS.py --latest
--version指定版本,可写数字或名字-v 10.15-v Yosemite
-d, --dmg只下载 .dmg 文件只要磁盘镜像时用
-i, --print-urls只打印下载链接,不真下载配合外部下载器提速
-c, --catalog切换目录:publicrelease / public / developer / customer想要测试版选 public
-r, --recovery只找恢复包,不找完整安装器做恢复盘专用
-o, --download-dir自定义下载目录脚本化批量下载必备
-s / -n用本地缓存 / 重新下载并保存目录文件网络差时救命

三个别人不告诉你的窍门

窍门一:给虚拟机找版本,加一个设备 ID 就够了。 --latest -D VMM-x86_64 会按设备 ID 过滤,直接挑出支持 x86_64 虚拟化的构建。VMware、VirtualBox 里装 macOS 最容易卡在这一步——列表里几十个条目,光靠肉眼分不清哪个能跑虚拟机,这行参数替你筛好了。

窍门二:断点续传不是全自动的。 下载目录已存在时,脚本会弹出 R/D 菜单:R 续传未完成的文件,D 清掉重来,别看到"已存在"就慌。另外网络不稳时,先跑一次 --newlocalsucatalog.plist 存到本地 Scripts 目录,之后用 --savelocal 就能离线复用目录文件,不必每次都去 Apple 拉那份大文件。

窍门三:只想做恢复盘,别下十几 GB 全家桶。--recovery 后脚本只找 RecoveryHDUpdate.pkgRecoveryHDMetaDmg.pkg 两个恢复包,体积小一个量级。配合 Windows 下的 MakeInstall.bat(核心是 Scripts/diskwin.py),就能在 Windows 上直接做互联网恢复 U 盘。

避坑:下载下来不等于能直接用

这里最容易被新手误会:gibMacOS 下载的不是"一个装好就能用的镜像文件",而是 Apple 的组件包。Catalina 及更早版本,需要在 macOS 环境里用 BuildmacOSInstallApp.command 把它组装成安装 App;从 Big Sur 开始 Apple 改了分发方式,下载包里直接是 InstallAssistant.pkg,双击运行就会把安装器放进"应用程序"文件夹,不再需要组装。版本策略的分水岭就在 11 这个数字上。

另外注意:下载全程不需要管理员权限,但写 U 盘、装系统时才需要;单次下载动辄 5–15 GB,别在 Wi-Fi 高峰段硬刚。下载完脚本会逐条列出 Succeeded / Failed,失败的文件重跑一次即可续上。

三问三答

Q:下载到一半断网了,文件会废吗? 不会,重跑命令,目录存在时选 R(Resume)就能从断点续传。

Q:我只有 Windows 或 Linux,能跑吗? 能,脚本是纯 Python、跨平台,Windows 上还有现成的 .bat 启动器。

Q:为什么下载到的不是 .dmg 而是 .pkg? 因为 Big Sur 之后 Apple 改走 InstallAssistant.pkg 分发,双击运行即可,这是新常态。

放进工作流之前:和同类方案怎么选

Apple 官方下载页需要 Mac 才能访问,镜像站有安全风险;社区里类似的开源方案也能下载,但要自己解析输出、自己处理菜单,而 gibMacOS 把交互菜单、设备 ID 过滤、恢复包筛选、Windows 启动盘制作全打包好了。一句话:想要开箱即用、跨平台、可脚本化,选它准没错;只有当你需要深度定制下载逻辑时,才值得自己写。

两个真实场景的搭配方案

场景一:Windows 装黑苹果或虚拟机。 gibMacOS 下载 → 虚拟机里直接挂载镜像启动;要实体机就接上 U 盘用 MakeInstall.bat 写入(Catalina 及更早支持,Big Sur 起 Windows 侧做不了恢复 U 盘,走 InstallAssistant.pkg 即可)。

场景二:测试环境批量要多个版本。 非交互模式配合循环,一个命令管一批:

for v in 10.14 10.15 11 12; do
  python3 gibMacOS.py --version $v --no-interactive -o ./downloads/$v
done

这段的意思很简单:挨个版本跑,不用守在屏幕前按菜单。

如果给 gibMacOS 一个比喻,我会说它像一把 Apple 服务器仓库的钥匙——它不替你装系统、不替你写盘,只负责把门打开,把选择权和剩下的路都交给你。正因为职责单一,它才足够稳、足够快。今晚就 clone 下来跑一次 --latest,别等真需要的时候再手忙脚乱。

【免费下载链接】gibMacOS Py2/py3 script that can download macOS components direct from Apple 【免费下载链接】gibMacOS 项目地址: https://gitcode.com/gh_mirrors/gi/gibMacOS

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值