专栏首页Mintimate's Blog如何在自己Linux服务器上安装Homebrew软件包管理
原创

如何在自己Linux服务器上安装Homebrew软件包管理

作者:Mintimate

博客:https://www.mintimate.cn

Mintimate's Blog,只为与你分享

封面

🍺什么是Homebrew

Homebrew其实就是软件包管理系统,常见的软件包管理系统有:

  • 管理deb软件包的dpkg以及它的前端APT适用于Debian、Ubuntu)。
  • RPM包管理员以及它的前端dnf(使用于Fedora、Red Hat Enterprise Linux 8、CentOS 8)、前端yum(使用于Red Hat Enterprise Linux、CentOS)、前端ZYpp(使用于openSUSE)、前端urpmi(使用于Mandriva Linux、Mageia)等。

使用这类软件包管理系统,能帮助用户快速编译、安装软件(如:vim、wget等)、卸载软件等。而Homebrew,其实广泛运用在macOS上,但是其实Homebrew也可以安装在Linux上,作用和apt、yum等一样

🐧Linux是否需要Homebrew

其实,大部分Linux自带有aptyum等这样优秀的软件包管理系统,是不需要像macOS那样,自己“再造轮子”手动安装一个软件包管理系统。

但是,使用Homebrew还是有些好处,且适合macOS用户到Linux上过渡。如果你是macOS上用户,开始使用腾讯云轻量应用服务器,那么可以试试嗷。

macOS用户过渡

macOS用户在安装好Homebrew后,即可使用Homebrew仓库内容(如:安装JDK、编译OpenCV等),而Linux上,如果你还不熟悉Linux上的编译方法,且自带的yumapt没有你所使用的工具,那么用Homebrew仓库作为补充和过渡很不错。

避免环境污染

Homebrew所安装的变量工具,均安装在自己目录下,通过激活Homebrew环境间接使用Homebrew目录下安装的工具(如:JDK等)。这样,虽然不符合Linux的设计准则,但是能避免环境污染。

📒使用前提

Linux安装Homebrew还是有前提的,首先是系统硬件层面的:

  • 仅支持x86_x64架构Linux

也就是,不支持x86的32位Linux设备。不过,现在ARM架构盛行,Homebrew是已经支持了,Binary packages (Homebrew Bottles)正在适配, 相信以后可能会全面支持。

其次,Linux需要:

  • GCC 4.7.0 or newer
  • Glibc 2.13 or newer

😁官方配置

和Homebrew macOS版本一样,Homebrew可以使用官方一键脚本进行安装:

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

官方脚本的好处:

  • 一键安装(可以安装在用户目录下或home目录下)
  • 使用的Homebrew库是最新的

但是官方脚本也有缺点:

  • 大陆设备可能因为网络问题,无法安装

具体使用方法

以腾讯云轻量应用服务器为例,我们使用有sudo权限的非root用户登录服务器,粘贴命令即可:

粘贴命令

之后,输入密码 选择继续。

和macOS版本Homebrew一样,但是只需要安装两个库:

  • LinuxBrew库
  • Homebrew-core(Linux版本)

大概下载600 MB内容后,就安装完成了:

成功安装

然后,按照提示,我们将

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

加入环境变量(bash是.profile文件,zsh是.zshrc文件):

添加环境变量

之后,source一下环境变量文件即可。

😋脚本配置

这个其实是我参考官方脚本,做的国内版本脚本:

/bin/bash -c "$(curl -fsSL 'https://cdn.jsdelivr.net/gh/Mintimate/HomebrewLinux@latest/HomebrewAutoInstall-Linux.sh')"

主要和官方的区别是:

  • 官方使用Homebrew官方仓库,脚本配置使用腾讯云软件源
  • 官方可以选择安装到/home下或用户家目录下,脚本配置安装到/home下
腾讯软件源

具体使用方法

腾讯云轻量应用服务器为例,腾讯云轻量应用提供的Centos、Debian等镜像,均基于x86_x64架构CPU,所以是可以使用Homebrew的。且镜像标准,并没有魔改Linux。

我们使用有sudo权限的非root用户登录服务器,粘贴命令即可:

运行脚本

之后,你可以选择腾讯云软件源,会开始同步Homebrew,拷贝文件比较大,需要耐心等待:

等待
下载完成

按提示,添加到环境变量即可:

添加到环境变量

到此,Homebrew安装完成。

🤔手动配置

手动配置,其实就是把上文脚本配置的过程,在这里复盘一下:

首先,我们进入用户目录并新建一个Homebrew目录:

cd /home
sudo mkdir linuxbrew

进入目录,并设置权限:

cd linuxbrew
sudo mkdir .linuxbrew
sudo chown -R $(whoami) .linuxbrew
cd .linuxbrew

克隆Homebrew仓库:

git clone https://mirrors.cloud.tencent.com/homebrew/brew.git

之后,创建bin目录,用来放Homebrew的软链🔗:

mkdir bin
ln -s /home/linuxbrew/.linuxbrew/Homebrew/bin/brew /home/linuxbrew/.linuxbrew/bin

进入Homebrew核心库目录,准备同步Homebrew-core文件:

cd Homebrew/Library
mkdir -p Taps
cd Taps
mkdir homebrew
cd homebrew

开始克隆Homebrew-core文件:

git clone https://github.com/Homebrew/linuxbrew-core.git homebrew-core

之后,对环境配置文件进行追加:

# Homebrew Bottle源
export HOMEBREW_BOTTLE_DOMAIN="https://mirrors.ustc.edu.cn/linuxbrew-bottles"
# Homebrew
eval $(/home/linuxbrew/.linuxbrew/bin/brew shellenv)

其中:

  • Homebrew Bottle:为Linux更新二进制文件时,实用的源,腾讯软件源目前没有这个源。

最后,使用命令重新加载环境配置文件即可

Homebrew使用

搜索文件

我们不知道Homebrew内使用有我们需要的软件时,可以使用Homebrew的搜索命令:

# 在Homebrew内搜索JDK
brew search jdk
查找JDK

这样就可以看到Homebrew仓库内容。但是注意,不要安装cask仓库内容,也就是这些内容:

cask目前只支持macOS

安装软件

刚刚,我们已经看到有什么版本的JDK了,怎么安装呢?其实很简单:

brew install openjdk@8
安装软件01
安装软件02
安装完成

当然,注意提示信息:

提示信息

总结

Homebrew时一款优先的软件包管理库,确实很方便。而安装到home目录下,如果Linux上的其他用户想使用Homebrew,也不用二次安装,对/home/linuxbrew目录进行递归提权即可。

另外, Linux使用的人不多,加上Linux往往自带有软件包管理库,所以仓库源比较少(现在就没有cask仓库源)。

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 如何使用Homebrew在Linux和Windows上安装软件

    长期以来,Homebrew软件一直是Mac用户的便捷工具,但仅适用于Mac用户。 该应用程序增加了Linux风格的软件包管理,使用户可以轻松安装命令行实用程序。...

    用户8704998
  • Mac安装Homebrew的那些事儿

    最近小明刚换置了一个 Mac 本,想搭建一个属于自己的博客网站,需要用到 Node.js 环境,而Node.js 在 MacOS 中是由 Homebrew 进行...

    程序员小明
  • 如何在macOS上安装Ruby并设置本地编程环境

    Ruby是一种动态编程语言,可用于编写从简单脚本到游戏和Web应用程序的任何内容。它于1993年首次在日本发布,但在2005年作为服务器端Web开发的语言获得了...

    葡萄
  • 如何使用Helm软件包管理器在Kubernetes集群上安装软件

    Helm是Kubernetes的软件包管理器,允许开发人员和操作员更轻松地在Kubernetes集群上配置和部署应用程序。

    姚啊姚
  • 如何在 CentOS Linux 上安装 RPM 软件包

    RPM Package Manager (RPM) 是一个强大的软件包管理系统,它被 RedHat Linux 以及它的衍生版本例如 CentOS,Fedora...

    雪梦科技
  • Nakama Server, 二进制安装

    要开始使用 Nakama 进行开发,您首先需要将其安装在开发计算机上。简单明了,只需几分钟。在本指南中,我们将重点介绍使用二进制可执行文件安装 Nakama 开...

    为少
  • mac中homebrew的使用

    linux系统上软件包安装,系统都有自带神器:Red hat有yum,Ubuntu有apt-get。然而mac os上并没有自带的神器,我们该怎么办呢? 不用担...

    连胜
  • Mac开发环境配置之HomeBrew

    如果你使用惯了linux,你会对软件包管理、命令行不能自拔。由于mac的底层是类unix系统,也可以配置向linux一样好用。 ? 安装HomeBrew /us...

    若与
  • Hexo之我的个人博客改用自己服务器搭建

    最近小明介绍完自己用hexo+git搭建个人博客,大家好像更关心的是域名mynamecoder.com,不是应该关注技术嘛,让小明哭笑不得?,今天继续给大家讲一...

    程序员小明
  • 使用脚本在Linux服务器上自动安装Kubernetes的包管理器Helm

    Helm之于Kubernetes好比yum之于Red Hat Enterprise Linux,或者apt-get之于Ubuntu。

    Jerry Wang

扫码关注云+社区

领取腾讯云代金券