Homebrew on Linux完全指南:Linuxbrew安装、兼容性与macOS使用差异
【免费下载链接】brew🍺 The Package Manager for Everywhere项目地址: https://gitcode.com/GitHub_Trending/br/brew
本文是 Homebrew on Linux 的完整指南:带你看懂 Linuxbrew(Homebrew 包管理器在 Linux 与 WSL 2 上的形态)如何一键安装、兼容性支持等级怎么划分、以及与 macOS 上的使用差异,帮助新手在 Ubuntu 上 10 分钟内用上这个跨平台软件包管理器 🍺
Linuxbrew 是什么?和 macOS Homebrew 是同一个东西吗?
是的。Homebrew on Linux(早期被称为Linuxbrew)与 macOS 上的 Homebrew 是同一个包管理器,只是运行平台不同。你可以用它来:
- ✅ 安装系统发行版没有打包的软件
- ✅ 在较老的发行版上用上最新版本的软件
- ✅ 用同一套
brew命令管理你的 macOS、Linux 甚至 Windows(WSL)机器
Homebrew 在 Linux 上几乎不依赖宿主系统的库(glibc和gcc够新时除外);如果发行版太老,它还会自动安装自带的较新版本glibc和gcc。官方说明见 docs/Homebrew-on-Linux.md。
Linuxbrew 一键安装步骤(附各发行版准备命令)
安装只需三步:准备构建工具 → 运行官方安装脚本 → 配置 shell 环境变量。
第 1 步:安装构建工具
Homebrew 需要系统自带的 C 编译器和标准开发工具,按你的发行版粘贴对应命令即可:
| 发行版 | 准备命令 |
|---|---|
| Debian / Ubuntu | sudo apt-get install build-essential procps curl file git |
| Fedora | sudo dnf group install development-tools && sudo dnf install procps-ng curl file |
| CentOS Stream / RHEL | sudo dnf group install 'Development Tools' && sudo dnf install procps-ng curl file |
| Arch Linux | sudo pacman -S base-devel procps-ng curl file git |
第 2 步:运行安装脚本
按照 docs/Installation.md 与官网指引运行官方安装脚本。脚本会把 Homebrew 安装到默认支持前缀/home/linuxbrew/.linuxbrew(安装过程中会使用sudo,安装完成后不再需要 sudo),并且会先告知你它将执行的所有操作,确认后才开始。
第 3 步:配置 PATH(必做!)
按照安装器输出的Next steps提示,把下面一行加入你的 shell 配置:
eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"Bash 用户追加到~/.bashrc,zsh 用户改用~/.zshrc。做完后试试:
brew doctor # 诊断常见配置问题 brew install hello # 安装第一个软件包💡 如果在老发行版上安装第一个软件包,Homebrew 会自动补装较新的glibc和gcc,属正常现象。
Linuxbrew 系统要求与兼容性分级(Support Tiers)
Homebrew 用Tier(支持等级)描述你的 Linux 环境能得到多好的支持,完整定义在 docs/Support-Tiers.md。核心结论如下:
| 等级 | 适用场景 | 你能得到什么 |
|---|---|---|
| Tier 1 完全支持 | Ubuntu 标准支持期内(或官方 Docker 镜像)、glibc ≥ 2.39、内核 ≥ 3.2、装在默认前缀、x86_64(SSSE3)或 ARM64 | 最可靠体验、完整 CI 覆盖、预编译 bottles 可用、官方 issue 支持 |
| Tier 2 部分支持 | glibc 2.13–2.38 的较老系统(自动装 Homebrew 自带 glibc);非默认安装路径 | 通常可用但可靠性下降,brew doctor会给出警告 |
| Tier 3 不推荐 | 树莓派等 ARM32 设备、WSL 1 | 可能能跑但不稳定,强烈建议迁移或换工具 |
| 不支持 | 32 位 x86 平台、FreeBSD、多用户共享安装 | 无法运行或需迁移到别的包管理器 |
几个新手常问的兼容性问题:
- WSL 怎么办?请使用WSL 2;WSL 1 因已知内核问题被列为 Tier 3。
- 树莓派(ARM32)?能跑,但因为没有 bottles(预编译包),安装速度慢且属 Tier 3;可能还需要自己装 Ruby。
- 老系统?glibc 低于 2.39 会自动降级到 Tier 2,Homebrew 会帮你补装新版 glibc。
Linuxbrew 为什么装在 /home/linuxbrew/.linuxbrew?
这是 Linuxbrew 与 macOS 最直观的差异之一。默认前缀/home/linuxbrew/.linuxbrew经过精心设计:
- 安装完成后不需要写入系统目录,符合"不用 sudo"的安全原则
- 同时保证绝大多数bottles(预编译二进制包)可以直接使用——如果你改装到个人主目录等非常规路径,很多 bottles 会失效、被迫从源码编译(慢且易失败)
官方 FAQ 的解释见 docs/FAQ.md;bottles 机制的完整原理见 docs/Bottles.md。
Linuxbrew 与 macOS Homebrew 使用差异对照表
| 对比项 | macOS | Linux |
|---|---|---|
| 默认安装路径 | /opt/homebrew(Apple Silicon)//usr/local(Intel) | /home/linuxbrew/.linuxbrew |
| GUI 应用(Cask) | 支持,brew install --cask | 不支持,Cask 仅面向 macOS |
| 安装前置要求 | Xcode 命令行工具 | 系统 C 编译器 + 构建工具包 |
| 构建沙箱 | 有 macOS sandbox 保护 | 无沙箱,安全依赖其他供应链机制 |
| 权限要求 | 初始安装需 sudo,之后禁止 | 相同(初始 sudo,之后免 sudo) |
| bottles 构建基准 | 各受支持 macOS 版本 | Ubuntu 24.04 构建,Debian/CentOS 等也可用 |
⚠️ 最需要注意的差异:Cask 是 macOS 专属功能。在 Linux 上用 Homebrew 管理的是命令行工具与库(formulae),GUI 应用请用你的桌面环境软件中心。
Linux 的 bottles 是如何构建的?
Homebrew 官方包在 Linux 上以Ubuntu 24.04为基准构建 bottles,原因很实在:目前约 77% 的 Linux 用户在使用 Ubuntu。官方 CI 策略详见 docs/Linux-CI.md:
- 每次上游提交都会在 Linux 与多个 macOS 架构上跑完整检查,任一 Tier 1 平台失败都会阻止合并
- 在 Ubuntu 上编译的 bottles 同样兼容 Debian、CentOS 等主流发行版
- 官方会持续跟进较新的 GCC,让滚动更新尽可能快
Homebrew 的 Linux 平台适配实现位于 Library/Homebrew/os/linux/ 目录,供进阶读者研究源码时参考。
新手常见问题速答
- 为什么 Homebrew 说 "sudo is bad"?用 root 跑源码编译脚本风险极高(可读写系统任意位置),且 macOS 的沙箱保护在 root 下会失效。所以除首次安装外请全程免 sudo,详见 docs/FAQ.md。
- 怎么锁住某个软件不升级?
brew pin <软件名>,用brew unpin解锁。 - 装好了却提示命令找不到?99% 是第 3 步的 shellenv 没配置,重开终端或重新
source配置即可。 - 如何更新所有软件?
brew update刷新定义 →brew outdated查看过期项 →brew upgrade全部升级。
总结
- Homebrew on Linux(Linuxbrew)让你在 Ubuntu 等发行版上用与 macOS 完全相同的
brew命令管理软件,一条 shellenv 配置即可开始 - 兼容性看 Tier 等级:新版 Ubuntu + glibc ≥ 2.39 + 默认前缀 = Tier 1 满血体验;老系统可用但会有警告,树莓派与 32 位平台请谨慎
- 与 macOS 的核心差异:安装路径、无 Cask(GUI 应用)、无沙箱;其余命令与习惯完全一致
掌握以上内容,你就可以放心地在 Linux 上用 Homebrew 管理开发环境了 🍻
【免费下载链接】brew🍺 The Package Manager for Everywhere项目地址: https://gitcode.com/GitHub_Trending/br/brew
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考