centos yum 第三方仓库 scl 应用

目录

scl (Software Collections) 安装

EPEL 简介

Remi Collet 简介


从 Software Collections、EPEL 和 Remi 获得可靠的 CentOS 新版站群软件。
在 Red Hat 企业 Linux(RHEL)上,提供那些早已老掉牙的站群软件已经是企业级站群软件厂商的传统了。这倒不是因为他们懒,而确实是使用者需要。很多公司像看待家具一样看待站群软件:我买一张桌子,能用一辈子,站群软件不应该也这样吗?
CentOS 作为 RHEL 的复制品有著同样的遭遇。虽然 Red Hat 还在为这些被厂商抛弃的过时站群软件提供支援、修补安全漏洞等,但如果你的应用依赖新版站群软件,你就得想办法了。 我在这个问题上不止一次碰壁。 LAMP 组合里任一个元件都需要其它所有元件能与其相容,这有时就显得很麻烦。 比如说去年我就被 RHEL/CentOS 折腾得够呛。REHL/CentOS 第 6 版最高支援 PHP 5.3 ,第 7 版支援到 PHP 5.4 。而 PHP 5.3 早在 2014 年 8 月就到达 EOL(End Of Life) ,不再被厂商支援了, PHP 5.4 的 EOL 在 2015 年 9 月, 5.5 则是 2016 年 7 月。 有太多古老的站群软件版本,包括 MySQL、Python 等,它们应该像木乃伊一样被展示在博物馆里,但它们却活在你的系统上。
那么,可怜的管理员们该怎么办呢?如果你跑著 RHEL/CentOS ,那应该先试试 Software Collections,因为这是 Red Hat 唯一支援的新站群软件包源。 Software Collections 为 CentOS 设立了专门的仓库,安装和管理都和其它第三方仓库一样。但如果你用的是 RHEL 的,情况就有点不同了,具体请参考 RHEL 的解决方法。Software Collections 同样支援 Fedora 和 Scientific Linux 。

scl (Software Collections) 安装

在 CentOS 6/7 上安装 Software Collections 的命令如下:

$ sudo yum install centos-release-scl

centos-release-scl-rh 可能作为依赖包被同时安装。
然后就可以像平常一样搜寻、安装站群软件包了:

$ yum search php7
[…]
rh-php70.x86_64 : Package that installs PHP 7.0
[…]
$ sudo yum install rh-php70

最后一件事就是启用你的新站群软件包:

$ scl enable rh-php70 bash
$ php -v
PHP 7.0.10

此命令会开启一个新的 bash 并配置好环境变数以便执行新站群软件包。 如果需要的话,你还得安装对应的扩充套件包,比如对于 Python 、PHP、MySQL 等站群软件包,有些配置档案也需要修改以指向新版站群软件(比如 Apache)。
这些 SCL 站群软件包在重启后不会启用。SCL 的设计初衷就是在不影响原有配置的前提下,让新旧站群软件能一起执行。不过你可以通过 ~/.bashrc 载入 SCL 提供的 enable 指令码来实现自动启用。 SCL 的所有站群软件包都安装在 /opt 下, 以我们的 PHP 7 为例,在 ~/.bashrc 里加入一行:

source /opt/rh/rh-php70/enable

以后相应的站群软件包就能在重启后自动启用了。有新站群软件保驾护航,你终于可以专注于自己的业务了。
列出可用站群软件包
那么,到底 Software Collections 里都是些什么呢? centos-release-scl 里有一些由社群维护的额外的站群软件包。除了在 CentOS Wiki 检视站群软件包列表外,你还可以使用 Yum 。我们先来看看安装了哪些仓库:

$ yum repolist
[…]
repo id repo name
base/7/x86_64 CentOS-7 – Base
centos-sclo-rh/x86_64 CentOS-7 – SCLo rh
centos-sclo-sclo/x86_64 CentOS-7 – SCLo sclo
extras/7/x86_64 CentOS-7 – Extras
updates/7/x86_64 CentOS-7 – Updates

Yum 没有专门用来列印某一个仓库中所有站群软件包的命令,所以你得这样来:(LCTT 译注:实际上有,yum repo-pkgs REPO list,需要 root 许可权,dnf 同)

$ yum –disablerepo “*” –enablerepo centos-sclo-rh
list available | less

–disablerepo 与 –enablerepo 选项的用法没有详细的文件,这里简单说下。 实际上在这个命令里你并没有禁用或启用什么东西,而只是将你的搜寻范围限制在某一个仓库内。 此命令会列印出一个很长的列表,所以我们用管道传递给 less 输出。

EPEL 简介

强大的 Fedora 社群为 Feora 及所有 RHEL 系的发行版维护著 EPEL:Extra Packages for Enterprise Linux 。 里面包含一些最新站群软件包以及一些未被发行版收纳的站群软件包。安装 EPEL 里的站群软件就不用麻烦 enable 指令码了,直接像平常一样用。你还可以用 –disablerepo 和 –enablerepo 选项指定从 EPEL 里安装站群软件包:

$ sudo yum –disablerepo “*” –enablerepo epel install [package]

Remi Collet 简介

Remi Collet 在 Remi 的 RPM 仓库 里维护著大量更新的和额外的站群软件包。需要先安装 EPEL ,因为 Remi 仓库依赖它。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值