homebrew 基本使用指南

homebrew 基本使用指南

版权申明:本文为原创文章,转载请注明原文出处

原文链接:https://pangwu86.com/posts/1667642005/

Homebrew 就是 macOS 系统的 yum,apt,pkg,用了就离不开了。


简介

Homebrew 是 macOS 上最好的包管理工具,很多 Linux 上常用的命令行工具和软件都可以通过 Homebrew 来进行快速安装。

软件组成

名称 含义
brew Homebrew 源代码仓库
homebrew-core Homebrew 核心软件仓库
homebrew-bottles Homebrew 预编译二进制软件包
homebrew-cask 提供 macOS 应用和大型二进制文件

概念解释

名称 含义
formula 安装包的描述文件
cellar 安装软件的目录 /usr/local/Cellar
rack 安装软件多个版本的目录 /usr/local/Cellar/foo
keg 某个包的所在具体目录 /usr/local/Cellar/foo/0.1
bottle 预先编译好的包,无需下载源码编译
tap 下载源,通常使用 Git repository
cask 安装 macOS native 应用的扩展
Caskroom 安装 cask 软件的目录 /usr/local/Caskroom
bundle 描述 Homebrew 依赖的扩展

安装

macOS 系统需要先执行安装命令行工具:

1
xcode-select —install

安装脚本:

1
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

国内安装

因为一些已知的网络原因,有时需要使用国内镜像源进行安装,这里推荐一个库 HomebrewCN

或者直接使用它提供的安装脚本:

1
/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"

使用国内源

清华大学镜像 https://mirrors.tuna.tsinghua.edu.cn/help/homebrew/ 链接中有详细的使用介绍。

简单配置的话,就是把下面的内容加到 .bash_profile (新版 macOS 默认使用 zsh,配置文件为 .zshrc) 中即可。

1
2
3
4
5
export HOMEBREW_INSTALL_FROM_API=1
export HOMEBREW_API_DOMAIN="https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles/api"
export HOMEBREW_BOTTLE_DOMAIN="https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles"
export HOMEBREW_BREW_GIT_REMOTE="https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/brew.git"
export HOMEBREW_CORE_GIT_REMOTE="https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/homebrew-core.git"

常用操作

Homebrew 默认把软件安装到 /usr/local/Cellar,然后通过软链链接到 /usr/local/bin

安装

brew install [软件名]

搜索

brew search [软件名]

查看包信息

brew info [软件名]

查看本地已安装

brew list

清理旧版本

brew cleanup

查看可更新

brew outdated

更新软件

brew upgrade

更新 homebrew

brew update

检查 homebrew 环境

brew doctor

管理后台软件

类似 Nginx,MySQL,MongoDB,Redis 这类服务器端软件,一般需要在后台长期运行,使用 brew services 命令可以管理这些软件。

查看服务

brew services list

单次运行某个服务

brew services run [服务名]

运行某个服务

brew services start [服务名]

停止某个服务

brew services stop [服务名]

重启某个服务

brew services restart [服务名]

Tap 命令

homebrew 支持使用 tap 命令来扩展安装软件的来源,输入 brew tap [user/repo] 即可完成扩展。

直接输入 brew tap 可以查看当前系统下已添加的软件源。删除已添加的扩展使用 brew untap [user/repo]

1
2
3
4
5
> brew tap
homebrew/cask-fonts
homebrew/core
homebrew/services
mongodb/brew

安装图形化应用

早期版本需要添加扩展再使用

1
brew tap caskroom/cask 

Caskroom 目前已经成为 homebrew 内置的一部分,命令也从过去的 brew cask xxxx 变成了 brew xxx --cask

使用 brew search 搜索软件时会同时给出 FormulaeCasks 下的结果。

安装字体

1
2
3
4
5
6
# 添加源
brew tap homebrew/cask-fonts

# 安装字体
brew install font-jetbrains-mono
brew install font-ubuntu-mono

搜索字体可以打开网址 https://github.com/Homebrew/homebrew-cask-fonts/tree/master/Casks, Ctrl + f 在网页中搜索字体名称,如果发现有 xxx.rb 文件就说明该字体可以安装,然后执行 brew install xxx 即可。

问题处理

brew services 报错

M1 的机器,在某次升级 homebrew 后出现了执行 services 命令报错,无法使用。

1
2
3
4
> brew services
Error: uninitialized constant Homebrew::Service::System
/opt/homebrew/Library/Taps/homebrew/homebrew-services/cmd/services.rb:58:in `services'
/opt/homebrew/Library/Homebrew/brew.rb:94:in `<main>'

解决方法:

1
2
3
4
5
6
# 删除 services 指令相关服务
cd /opt/homebrew/Library/Taps/homebrew
rm -rf homebrew-services

# 更新 homebrew-services
brew tap homebrew/services

安装后 brew 找不到命令

首先需要将 homebrew 路径加入环境变量 PATH 中

1
PATH="/usr/local/bin:$PATH"

如果是新版 macOS 或 M1 机器,还需要最后添加一句

1
eval $(/opt/homebrew/bin/brew shellenv)

homebrew 基本使用指南

https://pangwu86.com/posts/1667642005/

作者

胖五

发布于

2023-03-28

更新于

2023-03-29

许可协议

评论