ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

gibMacOS 教程:在 Windows 与 Linux 上下载 macOS 系统镜像的实用指南

gibMacOS 教程:在 Windows 与 Linux 上下载 macOS 系统镜像的实用指南 gibMacOS 教程在 Windows 与 Linux 上下载 macOS 系统镜像的实用指南【免费下载链接】gibMacOSPy2/py3 script that can download macOS components direct from Apple项目地址: https://gitcode.com/gh_mirrors/gi/gibMacOSgibMacOS 是一个从 Apple 官方服务器直接下载 macOS 安装组件的 Python 脚本适合需要在 Windows、Linux 等平台上获取系统安装文件与恢复镜像的用户。gibMacOS 项目速览它解决什么问题项目信息核心用途从 Apple 官方软件更新目录下载 macOS 安装组件 / 恢复镜像开发语言Python2 / 3 兼容许可证MIT最新版本无正式 release最新提交 e04d5de「Add support for resuming incomplete downloads」支持断点续传仓库地址https://gitcode.com/gh_mirrors/gi/gibMacOSApple 没有在 macOS 之外提供官方渠道直接获取安装文件App Store 里的「安装 macOS X」应用在别的平台上无法使用。gibMacOS 的思路是模拟 macOS 软件更新请求解析软件更新目录SU Catalog把对应版本的安装包、恢复镜像直接拉下来版本范围从 10.5Leopard到 15Sequoia。仓库还带两个配套脚本MakeInstall.py 在 Windows 上制作 Internet Recovery U 盘仅支持 Catalina 及更早BuildmacOSInstallApp.py 在 macOS 上把下载的组件拼装成安装 App。一分钟上手安装 gibMacOS 并首次运行环境要求Python 2 或 3。自带的 gibMacOS.bat / gibMacOS.command 会自动探测解释器在 Windows 和 macOS 上缺失时还能自动下载安装网络能连通 Apple 服务器目录请求发往 swscan.apple.com预留若干 GB 磁盘空间单个版本的组件包普遍是数 GB 起步获取项目git clone https://gitcode.com/gh_mirrors/gi/gibMacOS cd gibMacOS首次运行Windows双击gibMacOS.batmacOS / Linux执行./gibMacOS.command先chmod x gibMacOS.command任意平台python3 gibMacOS.pychmod x gibMacOS.command ./gibMacOS.command启动后先进入交互菜单程序下载并解析目录列出全部可用产品。输入版本号回车即开始下载文件保存在macOS Downloads/目录名/产品名/下。工作原理从目录请求到组件下载核心逻辑都在 gibMacOS.py 里完整流程分 4 步构造目录 URL。根据当前目录默认 publicrelease与最大版本拼出 swscan.apple.com 上的索引地址例如 10.15 上限的 publicrelease 目录形如index-10.15-10.14-...-10.6-leopard.merged-1.sucatalog版本号倒序拼接。下载并解析目录。取回 .sucatalog 文件用纯 Python 解析器 Scripts/plist.py 处理不依赖系统的 plutil 工具。筛选安装产品。只保留ExtendedMetaInfo中含com.apple.mpkg.OSInstall等安装标识的产品过滤掉普通更新加-r则改为查找RecoveryHDUpdate.pkg/RecoveryHDMetaDmg.pkg。随后逐个抓取产品的 ServerMetadataURL 与 dist 文件补全版本号、Build 号和兼容设备 ID 列表。流式下载落盘。Scripts/downloader.py 按 1 MiB 分块读取并绘制进度条含速度与剩余时间目标文件已存在且未完成时自动携带 Range 请求头续传。项目根目录的主要文件gibMacOS.py— 主脚本目录解析、产品筛选、下载入口MakeInstall.py— Windows制作 Internet Recovery U 盘BuildmacOSInstallApp.py— macOS拼装「安装 macOS X」AppScripts/downloader.py— HTTP 下载、进度条、Range 断点续传Scripts/plist.py— 纯 Python 的 plist 解析与导出Scripts/diskwin.py— 查询 Windows 磁盘与分区信息Scripts/utils.py— 交互菜单与管理员提权辅助典型场景实操三个高频下载操作场景一在 Windows 上下载 macOS 安装组件第 1 步双击gibMacOS.bat。若系统缺少 Python脚本会静默下载安装无需手动配置。第 2 步等待产品列表输出输入目标版本对应的序号如 macOS Sequoia 15.x 的编号回车开始下载。第 3 步完成后到macOS Downloads/publicrelease/产品名/取文件。中途断网也没关系——重新运行在提示目录已存在时选 RResume Incomplete Files即可续传。场景二指定版本做脚本化下载非交互模式下可以完全跳过菜单一条命令完成python gibMacOS.py -l -o ./downloads/sequoia # 当前目录里最新的版本 python gibMacOS.py -v Monterey -b 22G120 -o ./out # 指定 Build 号 python gibMacOS.py -v 12 -i # 只打印链接不下载第 1 步先用-i打印链接核对文件名与大小是否符合预期避免盲目下载。第 2 步确认无误后去掉-i并加-o指定保存目录不指定时默认落到项目目录下的macOS Downloads。第 3 步把-i换成-j可以输出产品元数据 JSON版本号、Build、deviceIds 列表方便写自己的批量下载脚本。场景三在 Windows 上制作 Internet Recovery U 盘Catalina 及更早第 1 步先下载恢复包——python gibMacOS.py -v 10.15 -r-r让工具只查找RecoveryHDUpdate.pkg/RecoveryHDMetaDmg.pkg。第 2 步以管理员身份双击 MakeInstall.bat它会自动检查 dd、7-Zip 等依赖并下载缺失项。第 3 步在磁盘列表里输入 U 盘编号和选项如2G表示 2 号盘、GPT 分区粘贴恢复包路径确认擦盘后等待写入恢复镜像并安装引导管理器默认 OpenCore加C选项改用 Clover。注意此路线仅适用于 Catalina 及更早版本。自 Big Sur 起 Apple 改为 InstallAssistant.pkg 分发Windows 无法再制作这类 U 盘详见 Readme.md。参数与配置速查gibMacOS.py 常用选项gibMacOS.py 的常用命令行参数参数作用示例-l, --latest下载当前目录中最新版本python gibMacOS.py -l-v, --version指定版本号或名称-v 10.14或-v Yosemite-b, --build指定 Build 号必须搭配-v-v 12 -b 22G120-p, --product直接指定产品 ID覆盖-v-p 列表中的产品 ID-c, --catalog切换目录publicrelease / public / customer / developer-c developer-m, --maxos构造 URL 时考虑的最大 macOS 版本-m 10.15-D, --device-id按设备 ID 筛选配合-v或-l-D VMM-x86_64 -l-r, --recovery只查找恢复包覆盖-d-r -v 10.15-d, --dmg只下载 .dmg 文件-d -l-i, --print-urls只打印下载链接不实际下载-v 12 -i-j, --print-json只打印产品元数据 JSON-l -j-s, --savelocal使用本地已缓存的 sucatalog.plist-s-n, --newlocal下载并刷新本地目录缓存-n-o, --download-dir指定文件保存目录-o ./downloads--no-interactive非交互模式带-v/-p时自动启用--no-interactive -l在Scripts/目录下创建settings.json可持久化以下配置交互菜单中切换时也会自动写回键名作用默认值current_macos构造 URL 用的最大版本10.5–1520即 15 / Sequoiacurrent_catalog当前使用的目录publicreleaseprint_urls只打印链接不下载falsefind_recovery仅查找恢复包模式falsehide_pid列表中隐藏产品 ID 与发布日期false避坑指南四个常见报错与处理启动即报「The currently selected catalog was not reachable」现象刚运行就弹出目录数据错误看不到产品列表。 原因无法连通 swscan.apple.com网络、代理或地区限制也可能是目录名拼错——代码里set_catalog会把不合法的目录名静默降级为 publicrelease不一定是网络问题。 处理办法先确认能否访问 Apple 服务器配置代理后重试用菜单里的 UShow Catalog URL查看实际拼接的链接逐段核对。MakeInstall 提示「This script is only for Windows!」或 Big Sur 及以后做不了 U 盘现象在 macOS / Linux 上运行 MakeInstall.py 直接退出或做好的 U 盘在新版系统上无法使用。 原因Windows 制盘流程仅限 Windows 环境启动时检查系统版本要求 Windows 10 及以上且 Apple 自 macOS 11 起改用 InstallAssistant.pkg 分发Internet Recovery U 盘在 Windows 上无法再制作。 处理办法Windows 路线最高到 CatalinaBig Sur 及以上请改在 macOS 上下载组件并直接运行InstallAssistant.pkg安装 App 会进入 /Applications。下载中断后重新运行进度从 0 开始现象大文件下载到一半断线重跑后感觉又从头开始浪费带宽。 原因目标目录已存在时交互菜单会要求选择 R续传/ D重新下载/ M返回非交互模式默认续传但如果你换了保存目录或手动删过文件就没有可续的断点。 处理办法交互模式选 R保证两次运行使用相同目录-o参数保持一致。Scripts/downloader.py 对「已存在且未完成」的文件会自动发送 Range 请求头续传。Linux 上 Python 探测不到.command 启动失败现象./gibMacOS.command在 Linux 上提示 Python Not Found 后退出。 原因脚本按 python3、python2、python 的顺序在 PATH 里查找自动下载 Python 的能力只针对 macOSpkg 安装器Linux 上只给出提示。 处理办法用系统包管理器安装 Python 3 并加入 PATH或直接python3 gibMacOS.py绕过启动器。选型建议谁适合用 gibMacOS适合在 Windows / Linux 上需要官方 macOS 安装组件或恢复镜像的人虚拟机装机、备份、带到 Mac 上使用需要拉取公测public、开发者测试developer或客户种子customer版本的人-c直接切换四个目录需要自动化批量拉取的团队-l / -v / -o / -j组合退出码干净可直接进脚本不适合期望「下载完就能直接写 U 盘启动」的人Big Sur 起得到的是原始组件文件制作可启动安装盘需要 macOS 环境只有一台 Mac、只想装系统的人官方 App Store 或softwareupdate --fetch-full-installer更省事必须图形化操作的人这是菜单 / 命令行工具与同类方案对比方案可用平台得到什么特点gibMacOSWindows / Linux / macOS官方目录的原始组件文件覆盖 10.5–15四个目录可切支持断点续传App Store「安装 macOS X」仅 macOS安装 App无法精确指定版本号测试版不可用softwareupdate --fetch-full-installer仅 macOS 10.15安装 App官方命令行只能在 Mac 上执行小结全程只对接 Apple 官方服务器文件来自官方软件更新目录版本覆盖 10.5 到 15断点续传、仅打印链接、JSON 元数据一个参数即可切换自动化友好Big Sur 及以上在 Windows 上无法制作安装 U 盘该路线只到 Catalina遇到问题可在项目 Issue 反馈或提交 PRReadme.md 中列有上游工具致谢【免费下载链接】gibMacOSPy2/py3 script that can download macOS components direct from Apple项目地址: https://gitcode.com/gh_mirrors/gi/gibMacOS创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表