[TOC] #### 1. Homebrew 介绍 --- Homebrew 官网:<https://brew.sh> Homebrew 是 macOS(以及 Linux)系统上最受欢迎且功能强大的包管理器,它相当于一个命令行版本的应用商店 它极大的简化了在 macOS 上安装、更新和管理软件的过程,可以理解为一个转为开发者设计的 “命令行版 App Store” Homebrew 的设计非常直观,主要由以下几个核心概念构成: | 术语 | 意译 | 意译 | | ------------ | ------------ | ------------ | | Formula | 配方 | 复数为 formulae,用于安装命令行工具和库的安装脚本 | | Cask | 木桶 | 复数为 casks,用于安装带有图形用户界面 (GUI) 的应用程序 | | Tap | 第三方仓库 | 添加官方仓库之外的第三方软件源,从而获取更多社区维护的软件包 | | Cellar | 地窖 | 类型为 formula 包的安装包存放目录,存放所有已安装软件的根目录 | | Caskroom | 木桶间 | 类型为 cask 包的安装包存放目录 | #### 2. Homebrew 安装 --- 运行 Homebrew 官方安装脚本: ```bash /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" ``` 因为官方的安装脚本是从国外拉取下载的,很可能遇到因为网络问题导致的各种错误: + 解决方案:[配置终端代理,加速国外资源的下载](https://www.itqaq.com/index/550.html) ```plaintext fatal: unable to access 'https://github.com/Homebrew/brew/': Failed to connect to github.com port 443 after 133124 ms: Couldn't connect to server Warning: Trying again in 2 seconds: /usr/bin/git fetch --quiet --progress --force origin ``` 在 Ubuntu 24 系统中运行安装脚本,下面是安装结束后的一段输出: + 需要关注的是:`/home/linuxbrew/.linuxbrew/bin` 不在您的 Path + 如何将 Homebrew 配置到 Shell,在 “Next steps” 中可以找到(运行其代码配置到 Path) ```plaintext ==> Pouring portable-ruby-4.0.2_1.x86_64_linux.bottle.tar.gz Warning: /home/linuxbrew/.linuxbrew/bin is not in your PATH. Instructions on how to configure your shell for Homebrew can be found in the 'Next steps' section below. ==> Installation successful! ==> Homebrew has enabled anonymous aggregate formulae and cask analytics. Read the analytics documentation (and how to opt-out) here: https://docs.brew.sh/Analytics No analytics data has been sent yet (nor will any be during this install run). ==> Homebrew is run entirely by unpaid volunteers. Please consider donating: https://github.com/Homebrew/brew#donations ==> Next steps: - Run these commands in your terminal to add Homebrew to your PATH: echo >> /home/vboxuser/.zshrc echo 'eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv zsh)"' >> /home/vboxuser/.zshrc eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv zsh)" - Install Homebrew's dependencies if you have sudo access: sudo apt-get install build-essential For more information, see: https://docs.brew.sh/Homebrew-on-Linux - We recommend that you install GCC: brew install gcc - Run brew help to get started - Further documentation: https://docs.brew.sh ``` 运行 `Next steps` 片段中到代码,就可以在任意终端窗口使用 `Homebrew` 了 ```bash echo >> /home/vboxuser/.zshrc echo 'eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv zsh)"' >> /home/vboxuser/.zshrc eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv zsh)" ``` 使用官方安装脚本可能会因为网络问题而失败,可以尝试使用国内镜像源进行安装: ```bash /bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)" ``` ```bash /bin/bash -c "$(curl -fsSL https://gitee.com/ineo6/homebrew-install/raw/master/install.sh)" ``` #### 3. Homebrew 命令 ---- Homebrew 命令: | 命令 | 描述 | | ------------ | ------------ | | brew -v | 查看当前 homebrew 版本号 | | brew list | 列出已安装的软件 | | brew search 关键字 | 根据关键字查找可安装的软件 | | brew outdated | 查看可更新的软件 | | brew info softwareName | 查看某个软件的详细信息 | | brew upgrade softwareName | 升级某个软件 | | brew home | 打开 brew 官网或应用官网 | 查看版本号 ```bash # 可以使用短名:brew -v brew --version ``` #### 4. Homebrew 路径 ---- Homebrew 提供了一系列环境变量,用来控制安装路径、缓存位置、行为策略等 ```bash # Homebrew 安装目录 echo $HOMEBREW_PREFIX # 软件实际安装路径 echo $HOMEBREW_CELLAR # 主仓库路径 echo $HOMEBREW_REPOSITORY ``` 路径相关命令: ```bash # 显示 Homebrew 本地的 Git 仓库 brew --repo # 显示 Homebrew 安装路径 brew --prefix # 显示 Homebrew Cellar 路径 brew --cellar # 显示 Homebrew Caskroom 路径 brew --caskroom # 显示 Homebrew 缓存目录路径 brew --cache ``` | 电脑系统 | Homebrew 默认安装路径 | | ------------ | ------------ | | macOS Intel | /usr/local | | macOS ARM | /opt/homebrew | | Linux | /home/linuxbrew/.linuxbrew | 查看 Homebrew 默认安装路径规则: ```plaintext $ brew --prefix -h Usage: brew --prefix [--unbrewed] [--installed] [formula ...] Display Homebrew's install path. Default: - macOS ARM: /opt/homebrew - macOS Intel: /usr/local - Linux: /home/linuxbrew/.linuxbrew ... ``` #### 5. Homebrew 行为控制 ---- 常见的行为控制环境变量: ```bash # 开启询问模式 export HOMEBREW_ASK=1 # 关闭自动清理旧版本软件包以及缓存文件 export HOMEBREW_NO_INSTALL_CLEANUP=1 # 关闭这些提示 export HOMEBREW_NO_ENV_HINTS=1 # 关闭自动更新 export HOMEBREW_NO_AUTO_UPDATE=1 # 关闭统计上报 export HOMEBREW_NO_ANALYTICS=1 # 自动更新间隔(秒),一天更新一次 export HOMEBREW_AUTO_UPDATE_SECS=86400 ``` 当使用 `brew install` 安装软件时,Homebrew 默认会自动执行清理操作,包括: + 删除旧版本的软件包(只保留最新版本) + 清理下载的缓存文件(`.tar.gz` 等安装包) ```bash # 关闭自动清理旧版本软件包以及缓存文件 export HOMEBREW_NO_INSTALL_CLEANUP=1 ```