1. Homebrew 国内镜像加速的必要性对于国内开发者来说Homebrew 的安装和更新速度一直是个头疼的问题。由于网络限制直接从 GitHub 下载安装包和更新仓库时速度往往慢得让人抓狂。我曾经遇到过安装一个简单的 wget 工具竟然花了半小时还没完成的情况。这时候国内镜像源就成了救命稻草。中科大、清华等高校都提供了 Homebrew 的镜像服务通过它们可以大幅提升下载速度。实测下来使用中科大镜像后安装速度能从原来的几十KB/s提升到几MB/s效果非常明显。镜像加速的原理其实很简单就是把原本位于国外的软件仓库在国内服务器上做了一个完整的备份。当你访问这些镜像站点时实际上是在和国内的服务器通信自然就避开了国际带宽的限制。这就像是在你家楼下开了个超市分店不用再跑到城外的总店购物了。2. 全新安装 Homebrew 的镜像加速方案2.1 安装前的准备工作在开始安装前有几个重要的准备工作要做。首先是目录权限的问题特别是对于 M1/M2 芯片的 Mac 用户。这些新机型使用 /opt/homebrew 作为默认安装路径而这个目录默认可能不存在。我建议先执行以下命令创建目录并设置正确的权限sudo mkdir -p /opt/homebrew sudo chown -R $(whoami) /opt/homebrew这里有个小坑要注意创建目录需要 sudo 权限但安装 Homebrew 时最好不要用 sudo。所以我们在创建完目录后要立即把所有权归还给当前用户。2.2 使用国内镜像脚本安装现在最方便的安装方式是使用中科大提供的安装脚本。这个脚本会自动配置好所有的镜像地址省去了手动设置的麻烦。具体命令如下/bin/zsh -c $(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)运行后会看到一个交互式菜单这里建议选择1使用中科大源。脚本会自动完成剩下的工作包括安装 Homebrew 核心程序配置 homebrew-core 和 homebrew-cask 的镜像地址设置二进制预编译包的镜像源更新 shell 配置文件整个过程通常只需要几分钟相比官方安装方式快了很多。我最近在一台新 Mac 上测试完整安装只用了不到5分钟。3. 已有 Homebrew 的镜像配置方法3.1 手动修改仓库地址如果你已经安装了 Homebrew也可以通过手动修改仓库地址来启用镜像加速。这个方法适用于所有版本的 Homebrew。首先是最核心的 brew.git 仓库git -C $(brew --repo) remote set-url origin https://mirrors.ustc.edu.cn/brew.git然后是软件包仓库 homebrew-coregit -C $(brew --repo homebrew/core) remote set-url origin https://mirrors.ustc.edu.cn/homebrew-core.git如果你需要安装图形界面软件如 VSCode、Chrome还需要配置 cask 仓库git -C $(brew --repo homebrew/cask) remote set-url origin https://mirrors.ustc.edu.cn/homebrew-cask.git3.2 配置二进制预编译包镜像除了源代码仓库Homebrew 还会下载预编译好的二进制包。这些包通常比较大更需要镜像加速。配置方法是在你的 shell 配置文件中添加环境变量echo export HOMEBREW_BOTTLE_DOMAINhttps://mirrors.ustc.edu.cn/homebrew-bottles/bottles ~/.zshrc source ~/.zshrc这个设置会让 Homebrew 优先从国内镜像站下载二进制包速度会有显著提升。我测试过一个 100MB 左右的包原来需要20分钟配置镜像后不到1分钟就下完了。4. 验证镜像配置是否生效4.1 检查远程仓库地址配置完成后最好验证一下是否真的生效了。最简单的方法是检查各个仓库的远程地址git -C $(brew --repo) remote -v git -C $(brew --repo homebrew/core) remote -v git -C $(brew --repo homebrew/cask) remote -v正确的输出应该显示 mirrors.ustc.edu.cn 的地址而不是 github.com。如果看到 github.com说明配置没有成功需要重新执行前面的步骤。4.2 测试安装和更新更直观的测试方法是实际执行一些操作。首先尝试更新 Homebrewbrew update这个命令应该能快速完成不会有权限错误。然后可以试着安装一个小工具brew install wget观察下载过程中的速度如果是从中科大镜像下载速度通常会保持在几百KB/s到几MB/s之间。你也可以在下载时查看进度信息确认下载地址是否包含 ustc.edu.cn。5. 常见问题及解决方案5.1 权限问题修复在使用 Homebrew 时最常见的错误就是权限问题。很多人在遇到权限不足时第一反应是用 sudo这其实是个坏习惯。Homebrew 的设计理念就是不依赖 root 权限。如果你发现操作失败并提示权限问题可以尝试修复整个 Homebrew 目录的权限sudo chown -R $(whoami) /opt/homebrew对于 Intel Mac 用户路径可能是 /usr/local/Homebrewsudo chown -R $(whoami) /usr/local/Homebrew5.2 Git 安全警告处理新版本的 Git 增加了安全限制可能会拒绝操作所有权可疑的目录。如果你看到类似fatal: detected dubious ownership in repository的错误可以临时添加安全目录例外git config --global --add safe.directory /opt/homebrew/Library/Taps/homebrew/homebrew-core不过这只是临时解决方案更好的做法还是用前面的 chown 命令彻底修复权限问题。5.3 镜像同步延迟问题有时候镜像站可能会有短暂的同步延迟导致找不到最新的软件包。如果遇到这种情况可以尝试以下步骤先检查镜像站的状态页面中科大镜像站有公开的状态监控如果确实是镜像站问题可以临时切换回官方源等待几小时后再切换回镜像站6. 恢复官方源的备用方案虽然国内镜像很好用但有时候你可能需要切换回官方源比如要安装某个刚发布还未同步到镜像的软件。这时候可以执行以下命令git -C $(brew --repo) remote set-url origin https://github.com/Homebrew/brew.git git -C $(brew --repo homebrew/core) remote set-url origin https://github.com/Homebrew/homebrew-core.git git -C $(brew --repo homebrew/cask) remote set-url origin https://github.com/Homebrew/homebrew-cask.git同时记得移除二进制镜像的环境变量sed -i /HOMEBREW_BOTTLE_DOMAIN/d ~/.zshrc source ~/.zshrc切换回官方源后记得在不需要时再切换回镜像源以获得更好的下载速度。