在 Linux 上安装和使用 Homebrew 包管理器


Homebrew(家酿),也被称为 Brew,是一个主要为 macOS 创建的命令行包管理器。

Homebrew 在 macOS 用户中相当流行,因为更多的开发者创造了可以用 Homebrew 轻松安装的命令行工具。

这种流行导致了 Linuxbrew 的诞生,它是 Homebrew 的一个 Linux 移植版。由于它主要是 Git 和 Ruby 组成的,而 Linux 和 macOS 都是类 Unix 的系统,所以 Brew 在两种操作系统上都能很好地工作。

Linuxbrew 项目最终与 Homebrew 项目合并,现在只有一个 Brew 项目,叫做 Homebrew。

为什么我叫它 Brew,而不是 Homebrew?因为命令以 brew 开头。你会在后面的章节中看到它的详细内容。

当你已经有了 apt、dnf、snap 时,为什么还要在 Linux 上使用 Homebrew 包管理器?

我知道这种感觉。你已经有一个由你的发行版提供的好的 包管理器。除此之外,你还有 Snap、Flatpak 和其他通用软件包系统。

在你的 Linux 系统上你真的需要 Homebrew 包管理器吗?答案取决于你的需求。

你看,除了发行版的包管理器和通用包管理器,你会遇到需要其他包管理器的情况,比如 Pip (用于 Python 应用)和 Cargo (用于 Rust 软件包)。

想象一下,你遇到了一个很好的命令行工具,想试试。它的软件库提到它可以使用 brew 或源代码来安装。在这种情况下,在你的系统上有 brew 可能会有帮助。毕竟,都 2021 了,从源代码安装 并不时髦(也不舒服)。

换句话说,如果你遇到一些有趣的命令行工具只提供 brew 安装选项,你会有一个额外的选择。

在 Ubuntu 和其他 Linux 发行版上安装 Homebrew

安装是相当容易的。你只需要确保你已经有了所有的依赖项。

步骤 1:安装依赖项

你需要有相对较新版本的 gcc 和 glibc。你可以 在 Ubuntu 上安装 build-essential 包 来获得它们。除此之外,你还需要 安装 Git、Curl 和 procps(用于监控系统进程)。

在基于 Ubuntu 和 Debian 的系统中,你可以像这样一起安装所有这些东西:

  1. sudo apt-get install build-essential procps curl file git

Iinstall dependencies for Homebrew in Ubuntu/Debian

对于其他发行版,请使用你的包管理器并安装这些依赖项。

步骤 2:安装 Homebrew

你可以看到为什么你需要 安装 Curl。它允许你 在终端下载安装脚本文件。

只要输入这个命令:

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

当要求输入回车键时,请按下回车。

Installing Homebrew on Ubuntu

在脚本最后,它建议运行几个命令,将其添加到 PATH 变量中。Homebrew 实际上是安装在你的主目录中,然后软链接到 /usr/local 目录中。

Run the suggested command under Next steps to add Homebrew to PATh variable

你可以 在终端方便地复制和粘贴。只要选择它所建议的命令,按 Ctrl+Shift+C 复制,按 Ctrl+Shift+V 粘贴。

或者,你也可以直接复制粘贴这个命令:

  1. echo 'eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"' >> $HOME/.bash_profile

然后是这个:

  1. eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"

Adding brew commands to the PATH

步骤 3:验证 brew 的安装

就快完成了。只需通过使用 brew doctor 命令来验证 brew 命令是否可以运行:

  1. brew doctor

brew doctor 命令会告诉你是否有任何问题。

你可以通过安装示例 hello 项目再次验证:

  1. brew install hello

如果你没有看到任何错误,你可以在 Linux 上享用家酿了。

使用 brew 命令来安装、删除和管理软件包

让我快速告诉你几个可以用来安装、删除和管理软件包的 brew 命令。

由于 Homebrew 安装在你的主目录中,你不需要 sudo 来运行它(就像 Pip 和 Cargo)。

要用 brew 安装一个软件包,请使用安装选项:

  1. brew install package_name

这里没有自动完成软件包名称的功能。你需要知道确切的软件包名称。

要删除一个 brew 软件包,你可以使用 remove 或 uninstall 选项。两者的作用是一样的。

  1. brew remove package_name

你也可以用这个命令列出已安装的 brew 软件包:

  1. brew list

你也可以用 autoremove 选项删除不需要的依赖:

  1. brew autoremove

在下一张截图中,我只用 brew 安装了两个软件包,但它也显示了这些软件包的依赖关系。即使在移除软件包后,依赖关系仍然存在。autoremove 终于把它们删除了。

Listing and removing brew apckages

还有很多 brew 命令选项,但这不在本教程的范围内。你可以随时 翻阅它的文档 并进一步探索。

从 Linux 中删除 Homebrew

如果不加入从你的 Linux 系统中删除 Homebrew 的步骤,本教程就不完整。

根据 GitHub 仓库中提到的步骤,你必须下载并使用这个命令运行卸载脚本:

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

你会被要求输入 Y 键来确认删除。

Removing Homebrew from Linux

当 Homebrew 的卸载完成后,它会列出它所遗留的文件和目录:

Remaining files after Homebrew removal

让你自己去删除这些文件和目录。

总结

正如我前面解释的,Homebrew 为你已经有的东西提供了一个扩展。如果你偶然发现一个只有 brew 安装方式的应用,在你的 Linux 系统上安装 Homebrew 会很方便。

高防服务器防御的原理详解

随着网络攻击越来越严重,现在高防服务器也逐渐受到很多企业用户的重视。一般高防服务器除了具备普通服务器的运行功能,还具有防攻击、抗病毒等方面的能力,对于网络攻击具有一定的防护作用。但是虽然很多用户都会选择使用高防服务器,但是很多用户对于高防服务器防御的原理却没有...
服务器安全高防服务器服务器防御

Log4j漏洞可能需要数年时间才能解决

近日Log4j漏洞的出现引起了业内人士的广泛讨论,网络安全专家认为CVE-2021-44228的普遍性以及容易被利用,这个Log4j中的远程代码执行漏洞可能需要数月甚至数年时间才能得到妥善解决。McAfee Enterprise和FireEye的高级威胁研究主...
漏洞服务器安全网络安全log4j

如何选择云服务器 云服务器配置怎么搭配

如何选择云服务器?云服务器配置怎么搭配?这里就给大家分享下云服务选择技巧,一起来看看。如何选择云服务器?需求要充分了解网站的日均访问人数和平均同时在线人数有多少,目前的数据有多大,未来是否会快速增加,网站是面向全国用户还是本地用户等,这些将关系到CPU、内存、...
云服务器云服务器配置

2019年优秀8大IT基础设施监控工具

所有IT部门都在面临这个问题。当服务器,网络和应用出现问题时,他们必须尽快做出反应。这些情形往往具有破坏性和高压性,并可能引发影响整个组织运营(和利润)的停机时间。根据去年的报告,平均IT停机损失高达155万美元。更严重的问题是,暴力事件导致每年545小时的员...
服务器安全监控工具IT