被Debian/Ubuntu惯坏了之后,再来用 RHEL/CentOS 实在是有点不习惯,软件都老且不说,关键是你还别嫌老(5年一个大版本的节奏真受不了啊,RHEL 6上面还是python 2.6),大多数时候还没有,这也是为啥网上很多系统管理员一说安装软件都是 ./configure && make && make install 自行编译三部曲。这对于简单的软件还好说,对于一些复杂的软件,还真不放心编译时依赖软件/依赖库都装了,版本是否都对了,编译选项是否都启用了。。。再加上我这样的懒人,真懒得编译。

—— 先不抱怨了,好歹RHEL/CentOS上还有几个比较大的第三方库,这比之前部门强推的SuSE Linux Enterprise Edition已经强不少了(别跟我说OBS 那上面的仓库)。

注:为简单起见,这里只按CentOS 6.x/x86_64进行说明,对于其它版本和i386架构(以及ppc等架构),请以此类推。至于CentOS 7弃用yum改用dnf的事情,过两年用上CentOS 7的时候再说吧。

1. EPEL (Extra Packages for Enterprise Linux)

http://fedoraproject.org/wiki/EPEL

EPEL provides rebuilds of Fedora packages for EL5, EL6 and EL7. Packages should not replace base,

although there have been issues around point releases in the past. You can install EPEL by running

yum install epel-release. The epel-release package is included in the CentOS Extras repository

that is enabled by default.

添加此仓库的方法:

  1. wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm
  2. # or
  3. # wget http://ftp.cn.debian.org/epel/epel-release-latest-6.noarch.rpm
  4. rpm -Uvh epel-release-latest-6.noarch.rpm

软件包分类浏览: http://ftp.cn.debian.org/epel/6Server/x86_64/repoview/

软件包详细列表: http://ftp.cn.debian.org/epel/6Server/x86_64/

参考说明:

2. rpmfusion

http://rpmfusion.org/

RPMfusion Repository - (See http://rpmfusion.org/) provides "software that the Fedora Project or Red

Hat doesn't want to ship" for EL5 and 6. Known to replace base packages.

添加此仓库的方法:

  1. wget -c http://download1.rpmfusion.org/free/el/updates/6/i386/rpmfusion-free-release-6-1.noarch.rpm
  2. wget -c http://download1.rpmfusion.org/nonfree/el/updates/6/i386/rpmfusion-nonfree-release-6-1.noarch.rpm
  3. # or
  4. wget -c http://ftp.cn.debian.org/rpmfusion/free/el/updates/6/i386/rpmfusion-free-release-6-1.noarch.rpm
  5. wget -c http://ftp.cn.debian.org/rpmfusion/nonfree/el/updates/6/i386/rpmfusion-nonfree-release-6-1.noarch.rpm
  6. yum -ivh rpmfusion-*release-6*.rpm

详细说明请阅读: Configuration - RPM Fusion

3. repoforge (以前也叫rpmforge或者wag)

http://repoforge.org/

CentOS的Wiki上对repoforge的说明是:

Although once recommended, this repository is no longer maintained, and is not advised.

虽然如此,但rpmforge提供的软件还是比较多的,并且跟别的第三方仓库不同的是,它会对RHEL/CentOS发布版内含

的软件也提供更新版本,所以在很多时候还是得找它。(不过 http://ftp.cn.debian.org 没有提供此仓库的镜像,

而前面epel和rpmfusion都有)。

添加此仓库的方法:

  1. wget -c http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm
  2. rpm -ivh rpmforge-release-*.rpm

详细说明请阅读 Using RepoForge

4. Software Collections (SCL)

https://www.softwarecollections.org/en/

其实这不算一个“第三方仓库”,因为它是RedHat/CentOS自己提供的。这个仓库没提供几个软件,主要是服务器上

常用的apache/mysql/python/ruby/pgsql等软件的新版本(再吐槽一遍: RHEL/CentOS里面的软件包实在是太老

了!!!),它们也不会覆盖原来的旧版本,使用上也需要采用特殊的方式(比如scl enable python33 -m SimpleHTTPServer)

The SCL repository contains newer versions of various programs. These packages can be installed

alongside existing older packages. At the time of writing, the repository contains packages for

mariadb55, mysql55, nodejs010, perl516, php54, postgres92, python27, python33 and ruby193.

CentOS 6的仓库里面已经有这个SCL仓库的地址描述,执行下面的语句就可以此仓库:

  1. yum install centos-release-SCL

参考文档:

5. 补充说明

可以查看仓库列表

因为有时候会有其他人修改(或者自己以前修改的,但忘记了) /etc/yum.repos.d/<foobar>.repo ,对某些仓库设置了禁用 (enabled=0),这时可以用 yum repolist 看看到底有哪些仓库。

在本地查看单个仓库的包列表

  1. yum --disablerepo="*" --enablerepo="epel" list available | less

仓库的优先级问题(以及如何从指定库安装软件)

虽然大多数情况下你都期望安装新版本(多个仓库有同一个软件时,yum会安装版本最新那个),但有时候也会有想装老版本的场景,这时候有以下几种做法:

  1. 设置仓库的优先级: 安装 yum-plugin-priority,然后在 /etc/yum.repos.d/*.repo 里面设定每个仓库的优先级(详细的说明请见 [[https://wiki.centos.org/PackageManagement/Yum/Priorities][PackageManagement/Yum/Priorities - CentOS Wiki]] );
  2. 安装时临时禁用新版本所在的仓库: yum --disablerepo=extras install packageA
  3. 安装时指定从某个仓库安装这款软件: yum --disablerepo="*" --enablerepo="epel" install packageA
  4. nixcraft的博客文章RHEL/CentOS EPEL (Extra Packages for Enterprise Linux) Repository里面还提到另外一个叫做yum-plugin-protectbase的插件,说 This plugin allows certain repositories to be protected. Packages in the protected repositories can't be overridden by packages in non-protected repositories even if the non-protected repo has a later version. 但我也是刚看见,还没有用过。

6. 其它相关链接

RHEL/CentOS 一些不错的第三方软件包仓库的更多相关文章

  1. RHEL/CentOS 7.x/6.x/5.x开启EPEL仓库

    说明 原文链接 翻译:@adolphlwq 项目地址 这篇指南文章教你如何在 RHEL/CentOS 7.x/6.x/5.x 系统中开启EPEL仓库支持,以便你可以使用 yum 命令 安装额外的标准开 ...

  2. RHEL/CentOS/Fedora各种源(EPEL、Remi、RPMForge、RPMFusion)配置

    最新文章:Virson’s Blog CentOS默认自带CentOS-Base.repo源,但官方源中去除了很多有版权争议的软件,而且安装的软件也不是最新的稳定版.Fedora自带的源中也找不到很多 ...

  3. RHEL/CentOS/Fedora各种源

    CentOS 默认自带 CentOS-Base.repo 源, 但官方源中去除了很多有版权争议的软件, 而且安装的软件也不是最新的稳定版. Fedora 自带的源中也找不到很多多媒体软件, 如果需要安 ...

  4. RHEL CentOS Fedora各种源介绍和安装

    CentOS默认自带CentOS-Base.repo源,但官方源中去除了很多有版权争议的软件,而且安装的软件也不是最新的稳定版.   下面介绍各种第三方软件库,以下软件库适用于与RHEL完全兼容的li ...

  5. 基于CentOS设置和使用Yum软件仓库

    参考:How To Set Up and Use Yum Repositories on a CentOS 6 VPS 参考:CentOS yum 源的配置与使用 介绍 Yum仓库是Linux软件仓库 ...

  6. RHEL/CentOS 7最小化安装后需做的30件事情

    导读 CentOS是一个工业标准的Linux发行版,是红帽企业版 Linux 的衍生版本.你安装完后马上就可以使用,但是为了更好地使用你的系统,你需要进行一些升级.安装新的软件包.配置特定服务和应用程 ...

  7. 安装完最小化 RHEL/CentOS 7 后需要做的 30 件事情(一)转载自码农网

    CentOS 是一个工业标准的 Linux 发行版,是红帽企业版 Linux 的衍生版本.你安装完后马上就可以使用,但是为了更好地使用你的系统,你需要进行一些升级.安装新的软件包.配置特定服务和应用程 ...

  8. 安装完最小化 RHEL/CentOS 7 后需要做的 30 件事情7. 安装 PHP PHP 是用于 web 基础服务的服务器端脚本语言。它也经常被用作通用编程语言。在最小化安装的 CentOS 中安

    CentOS 是一个工业标准的 Linux 发行版,是红帽企业版 Linux 的衍生版本.你安装完后马上就可以使用,但是为了更好地使用你的系统,你需要进行一些升级.安装新的软件包.配置特定服务和应用程 ...

  9. 使用 ISO镜像配置 本地yum 源(RHEL, CentOS, Fedora等适用)

    使用 ISO镜像配置 本地yum 源(RHEL, CentOS, Fedora等适用)   1.上传ISO镜像和挂载 1) 上传Centos7.2 ISO镜像到 /usr/local/src目录 2) ...

随机推荐

  1. flask源码剖析

    这段时间想重新写个自己的博客系统,又正好在看一些框架源码,然后就想要不顺便写个小框架吧,既然想写框架,要不再顺便写个orm吧,再写个小的异步Server吧..事实证明饭要一口一口吃 先梳理一下flas ...

  2. YUI Compressor JS和CSS压缩工具使用方式(使用前安装JDK)

    压缩测试: 选中 test.js, 执行右键菜单“Process with &YUICompressor”,会生成 test-min.js. 注意事项: 1. 需要安装 JDK >= 1 ...

  3. [USACO4.2]Drainage Ditches

    OJ题号:洛谷2740.POJ1273.HDU1532 思路:最大流模板. #include<queue> #include<cstdio> #include<cctyp ...

  4. struts2动态跳转action,修改和添加共用一个页面

    <s:form action="role_%{ id == null ? 'add' : 'edit' }"> <s:hidden name="id&q ...

  5. Linux内核笔记:epoll实现原理(二)

    在通过epoll_ctl(2)向epoll中添加被监视文件描述符时,会将ep_poll_callback()作为回调函数添加被监视文件的等待队列中.下面分析ep_poll_callback()函数 1 ...

  6. windows 64位环境下php执行环境部署配置

    1.下载安装包 地址可以网上找,我下载的是php-5.6.27-Win32-VC11-x64.zip 2.解压安装包,我的解压到D:\tools\php5.6 3.配置php.ini 在解压的目录中, ...

  7. 四种常见 Git 工作流比较

    BY 童仲毅(geeeeeeeeek@github) 这是一篇在原文(BY atlassian)基础上演绎的译文.除非另行注明,页面上所有内容采用知识共享-署名(CC BY 2.5 AU)协议共享. ...

  8. Meclipse alt+/ 没有提示

  9. [Android Pro] https://blog.csdn.net/gaugamela/article/details/79143309

    原文地址:https://blog.csdn.net/gaugamela/article/details/79143309 最近遇到这样一个问题: 第三方的SDK除了Jar包外,还提供了对应的so文件 ...

  10. Amazon.com 美国亚马逊 直邮中国 手把手教程(转)

    什么值得买已经发布2014最新版美亚直邮攻略 海淘攻略:美国亚马逊 直邮服务 手把手教程(2014最新版) ,调整幅度较大,值友们可以移步到新攻略中查看. 相比德国.英国亚马逊,美国亚马逊的大部分商品 ...