homebrew长时间停在Updating Homebrew 这个步骤

在国内的网络环境下使用 Homebrew 安装软件的过程中可能会长时间卡在 Updating Homebrew 这个步骤。

例:执行 brew install composer 命令

➜  ~ brew install composer

Updating Homebrew… # 如果碰到长时间卡在这里,参考以下 2 种处理方法

方法 1:按住 control + c 取消本次更新操作

➜  ~ brew install composer

Updating Homebrew…
^C
按住 control + c 之后命令行会显示 ^C,就代表已经取消了 Updating Homebrew 操作

大概不到 1 秒钟之后就会去执行我们真正需要的安装操作了

➜  ~ brew install composer

Updating Homebrew…
^C==> Satisfying dependencies
==> Downloading https://getcomposer.org/download/1.7.2/composer.phar

这个方法是临时的、一次性的

方法 2:使用 Alibaba 的 Homebrew 镜像源进行加速

平时我们执行 brew 命令安装软件的时候,跟以下 3 个仓库地址有关:

  1. brew.git
  2. homebrew-core.git
  3. homebrew-bottles

通过以下操作将这 3 个仓库地址全部替换为 Alibaba 提供的地址

  1. 替换 / 还原 brew.git 仓库地址
替换成阿里巴巴的 brew.git 仓库地址:
cd "$(brew --repo)"
git remote set-url origin https://mirrors.aliyun.com/homebrew/brew.git

=======================================================

还原为官方提供的 brew.git 仓库地址
cd "$(brew --repo)"
git remote set-url origin https://github.com/Homebrew/brew.git
  1. 替换 / 还原 homebrew-core.git 仓库地址
替换成阿里巴巴的 homebrew-core.git 仓库地址:
cd "$(brew --repo)/Library/Taps/homebrew/homebrew-core"
git remote set-url origin https://mirrors.aliyun.com/homebrew/homebrew-core.git

=======================================================

还原为官方提供的 homebrew-core.git 仓库地址
cd "$(brew --repo)/Library/Taps/homebrew/homebrew-core"
git remote set-url origin https://github.com/Homebrew/homebrew-core.git
  1. 替换 / 还原 homebrew-bottles 访问地址
    这个步骤跟你的 macOS 系统使用的 shell 版本有关系

所以,先来查看当前使用的 shell 版本

echo $SHELL
如果你的输出结果是 /bin/zsh,参考?的 zsh 终端操作方式
如果你的输出结果是 /bin/bash,参考?的 bash 终端操作方式

3.1 zsh 终端操作方式

替换成阿里巴巴的 homebrew-bottles 访问地址:
echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.aliyun.com/homebrew/homebrew-bottles' >> ~/.zshrc
source ~/.zshrc

=======================================================

还原为官方提供的 homebrew-bottles 访问地址
vi ~/.zshrc
然后,删除 HOMEBREW_BOTTLE_DOMAIN 这一行配置
source ~/.zshrc

3.2 bash 终端操作方式

替换 homebrew-bottles 访问 URL:
echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.aliyun.com/homebrew/homebrew-bottles' >> ~/.bash_profile
source ~/.bash_profile

=======================================================

还原为官方提供的 homebrew-bottles 访问地址
vi ~/.bash_profile
然后,删除 HOMEBREW_BOTTLE_DOMAIN 这一行配置
source ~/.bash_profile

注:文章转载至:https://www.cnblogs.com/tulintao/p/11134877.html

<think>好的,我现在需要解决用户的问题:Homebrew更新无反应和bash中brew命令未找到的错误。首先,我要回顾之前的对话和用户提供的引用内容,看看有没有相关的线索。 用户之前遇到了“bash: brew: commandnot found”的问题,我的回答已经涵盖了安装Homebrew、配置环境变量、处理权限问题等步骤。现在用户又遇到了更新Homebrew无反应的问题,以及同样的命令未找到错误。我需要将这两个问题结合起来分析,可能的原因是什么?首先,用户提到的“brew命令未找到”可能还是因为Homebrew没有正确安装或者环境变量没有配置好。根据引用[2]和之前的回答,用户可能需要再次检查PATH的设置,特别是不同Shell(比如zsh和bash)的配置文件是否正确。例如,用户如果切换了Shell,可能需要更新.zshrc而不是.bash_profile。其次,关于Homebrew更新无反应的问题,可能的原因包括网络问题、权限不足、或者Homebrew本身的安装损坏。引用[1]提到安装Homebrew需要网络畅通,如果更新时无反应,可能是网络连接问题,或者需要更换镜像源。另外,引用[3]中的权限问题也可能导致更新失败,需要检查目录权限,比如使用chown修复。另外,用户之前提到过安装过程中断或权限问题,所以在更新时也可能出现类似情况。可能需要运行brew update--verbose来查看详细错误信息,或者检查日志文件。此外,如果Homebrew的仓库存在损坏,可能需要重新安装或者修复。 现在需要将这些可能性整理成一个结构化的解决方案,分步骤帮助用户排查问题。首先确认brew是否存在,然后检查环境变量,处理网络或权限问题,最后考虑重新安装或修复Homebrew。同时,用户提供的引用[2]中提到了watchman的安装,这可能与文件监视服务有关,但当前问题主要在于brew本身,所以可能暂时不需要涉及这部分。但需要注意,如果用户之前尝试过其他操作导致环境混乱,可能需要一并处理。最后,生成相关问题,帮助用户预防未来可能出现的问题,比如如何更换镜像源,如何彻底卸载Homebrew等。</think>### 解决Homebrew更新无反应及`bash: brew: command not found`的完整方案 --- #### 一、`bash: brew: command not found`错误分析 此错误通常由以下原因导致: 1. **Homebrew未正确安装**(如安装中断或路径缺失) 2. **环境变量未配置**(`PATH`未包含Homebrew路径) 3. **权限问题**(如引用[3]中提到的目录权限错误) --- #### 二、分步解决方案 ##### 1. **确认Homebrew是否安装** ```bash which brew # 检查安装路径 ``` - 若输出路径(如`/opt/homebrew/bin/brew`或`/usr/local/bin/brew`),说明已安装,跳至步骤3。 - 若无输出,需重新安装(见步骤2)。 ##### 2. **重新安装Homebrew** ```bash # 卸载残留文件(若存在) sudo rm -rf /usr/local/Homebrew /opt/homebrew # 使用官方脚本安装(支持M1/M2芯片) /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" # 配置环境变量(根据Shell类型选择) echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zshrc # zsh用户[^2] # 或 echo 'eval "$(/usr/local/bin/brew shellenv)"' >> ~/.bash_profile # bash用户 # 立即生效 source ~/.zshrc # 或 source ~/.bash_profile ``` ##### 3. **修复环境变量** 若安装后仍报错,检查`PATH`是否包含Homebrew路径: ```bash echo $PATH | grep -E "/usr/local/bin|/opt/homebrew/bin" ``` - 若无输出,手动添加路径: ```bash # 根据实际安装路径选择 echo 'export PATH="/opt/homebrew/bin:$PATH"' >> ~/.zshrc # M1/M2芯片 # 或 echo 'export PATH="/usr/local/bin:$PATH"' >> ~/.bash_profile # Intel芯片 ``` ##### 4. **处理Homebrew更新无反应** 若`brew update`无响应,可能原因及修复方法: - **网络问题**(更换国内镜像源): ```bash # 替换Homebrew核心仓库 git -C "$(brew --repo)" remote set-url origin https://mirrors.aliyun.com/homebrew/brew.git # 替换Homebrew Bottles源(zsh示例) echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.aliyun.com/homebrew/homebrew-bottles' >> ~/.zshrc source ~/.zshrc ``` - **权限问题**(修复目录权限): ```bash sudo chown -R $(whoami) /usr/local/* # Intel芯片 sudo chown -R $(whoami) /opt/homebrew # M1/M2芯片[^3] ``` - **强制更新**: ```bash brew update --verbose # 查看详细错误 brew update-reset # 重置仓库状态 ``` ##### 5. **验证修复** ```bash brew --version # 应输出类似Homebrew 4.2.0 brew update # 检查更新是否正常 ``` --- #### 三、相关问题 1. 如何彻底卸载Homebrew? 2. 如何修复`brew doctor`报告的安全警告? 3. Homebrew安装软件时提示`checksum mismatch`如何解决? 4. 如何切换不同版本的Homebrew公式(Formula)? --- #### 引用说明 - M1/M2芯片的Homebrew默认路径为`/opt/homebrew`[^2] - 权限问题可通过`chown`修复(如引用[3]) - 环境变量配置需匹配Shell类型(bash/zsh)[^2]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值