前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >如何在自己Linux服务器上安装Homebrew软件包管理

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

原创
作者头像
Mintimate
修改2021-07-06 12:07:55
7.1K0
修改2021-07-06 12:07:55
举报
文章被收录于专栏:Mintimate's Blog

作者: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可以使用官方一键脚本进行安装:

代码语言:txt
复制
/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内容后,就安装完成了:

成功安装
成功安装

然后,按照提示,我们将

代码语言:txt
复制
eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"

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

添加环境变量
添加环境变量

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

😋脚本配置

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

代码语言:txt
复制
/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目录:

代码语言:txt
复制
cd /home
sudo mkdir linuxbrew

进入目录,并设置权限:

代码语言:txt
复制
cd linuxbrew
sudo mkdir .linuxbrew
sudo chown -R $(whoami) .linuxbrew
cd .linuxbrew

克隆Homebrew仓库:

代码语言:txt
复制
git clone https://mirrors.cloud.tencent.com/homebrew/brew.git

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

代码语言:txt
复制
mkdir bin
ln -s /home/linuxbrew/.linuxbrew/Homebrew/bin/brew /home/linuxbrew/.linuxbrew/bin

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

代码语言:txt
复制
cd Homebrew/Library
mkdir -p Taps
cd Taps
mkdir homebrew
cd homebrew

开始克隆Homebrew-core文件:

代码语言:txt
复制
git clone https://github.com/Homebrew/linuxbrew-core.git homebrew-core

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

代码语言:txt
复制
# 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的搜索命令:

代码语言:txt
复制
# 在Homebrew内搜索JDK
brew search jdk
查找JDK
查找JDK

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

cask目前只支持macOS
cask目前只支持macOS

安装软件

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

代码语言:txt
复制
brew install openjdk@8
安装软件01
安装软件01
安装软件02
安装软件02
安装完成
安装完成

当然,注意提示信息:

提示信息
提示信息

总结

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

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

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

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

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 🍺什么是Homebrew
  • 🐧Linux是否需要Homebrew
    • macOS用户过渡
      • 避免环境污染
      • 📒使用前提
      • 😁官方配置
        • 具体使用方法
        • 😋脚本配置
          • 具体使用方法
          • 🤔手动配置
          • Homebrew使用
            • 搜索文件
              • 安装软件
              • 总结
              相关产品与服务
              轻量应用服务器
              轻量应用服务器(TencentCloud Lighthouse)是新一代开箱即用、面向轻量应用场景的云服务器产品,助力中小企业和开发者便捷高效的在云端构建网站、Web应用、小程序/小游戏、游戏服、电商应用、云盘/图床和开发测试环境,相比普通云服务器更加简单易用且更贴近应用,以套餐形式整体售卖云资源并提供高带宽流量包,将热门软件打包实现一键构建应用,提供极简上云体验。
              领券
              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档