4.3 维护与诊断:doctor、cleanup、config

原文链接: https://docs.brew.sh/FAQ

brew doctor:体检工具

1
brew doctor

它会检查 Homebrew 安装与运行环境中常见的配置问题,并逐条给出警告。每条警告都值得读一遍:ownership、PATH、冲突的软件、未信任的 tap 等都会在这里暴露。修复与当前故障相关的警告后再重试原命令。

brew config:查看配置

1
brew config

输出当前 Homebrew 版本、前缀、macOS 版本、Rosetta 状态、Git 远程、代理、bottle 镜像等关键配置。在提问或报 bug 时,官方模板会要求附带 brew config 输出。

brew cleanup:清理旧版本与缓存

1
brew cleanup

默认情况下 Homebrew 在升级后会清理旧 keg,并每 30 天定期清理。手动执行 brew cleanup 可以立即删除旧版本 formula 与无用的下载缓存。查看将删除什么而不真正删除:

1
brew cleanup --dry-run

brew autoremove:清理孤儿依赖

有些 formula 当初只是作为另一个软件的依赖被安装;当那个软件被卸载后,依赖就不再被需要:

1
2
brew autoremove            # 卸载不再需要的依赖 formula
brew autoremove --dry-run  # 先查看将卸载什么,-n 是 --dry-run 的简写

注意:只有“当初仅作为依赖安装、如今无任何 formula 需要它”的包才会被移除。

brew –cache:查看下载缓存位置

1
2
brew --cache
brew --cache <formula>

默认目录通常是 ~/Library/Caches/Homebrew。缓存可以放心清理,brew 需要时随时会重新下载。

开发者模式与自动更新频率

如果你运行过开发类命令(如 brew edit、brew create),Homebrew 会开启开发者模式,行为会变化:

  • 某些命令前可能每 1 小时而非每 24 小时自动执行 brew update;
  • 更新会跟踪 main 分支的最新提交,而不是最新稳定标签。

关闭开发者模式:

1
brew developer off

只希望回到稳定标签,可设置:

1
export HOMEBREW_UPDATE_TO_TAG=1

控制自动更新频率用 HOMEBREW_AUTO_UPDATE_SECS,完全关闭自动更新则设 HOMEBREW_NO_AUTO_UPDATE=1(见 4.2 更新、升级与版本固定)。

遇到问题时的标准动作

1
2
3
brew update
brew doctor
brew config

然后重试失败命令并保留完整输出。若仍无法解决,按 8.1 排查清单 的步骤上报。