RedHat下主要有两个distribution,一曰 RHEL(Red Hat Enterprise Linux) 一曰 Fedora.前者主要是供服务器使用,优点是稳定,缺点是老的掉牙,后者是供桌面使用的,优点是特别新,repo的速度几乎可以和archlinux媲美,缺点是发布两年EOL(End-of-life_(product))就到了,我见过某服务器从不关机,也不更新Kernel,一直缝缝补补开了数年的,用Fedora简直是作死.
但若不是财大气粗(比如某有数千台曙光各种RHEL的xx中心,让人羡慕的流口水),很多服务器选择CentOS作为服务器的OS,因为基于GPL License的RHEL是提供binary file 和 source code 的,有社区将source code 再编译为 binary file ,取名为CentOS,所谓社区操作系统.对此RHEL是持认可--至少是理解的态度.因此,CentOS基本可以认为是RHEL的免费版本,据传性能还是有点差距并且不提供官方技术支持.若在服务器使用,它十年的EOL也足以让服务器免去很多维护了.
今年的7月份,CentOS发布CentOS 7,对应于Red Hat在6月发布的RHEL 7,Life Cycle从今年一直持续到2024年.更重要的是,这位同志终于愿意从2.6.x的kernel升到3.x了,要知道,截止目前,kernel早已升级到3.15.8了,这得落后多少年了啊,对应的gcc也从4.4.7升级到了4.8.x,终于可以在服务器上编译带--std=c++11参数的代码而不必自己编译个编译器先了泪目.
总之,很高兴的直接装了个新的CentOS 7,然后习惯的去找RPM fusion的源,然后悲剧的发现居然目前还没有提供...额,没有只有基础仓库的CentOS 7那得多不方便啊囧,只能找一些其它的源来应付下先.
找了下,这里和这里我找到一些相关内容,照着做了下,我最需要的几个东西都可以找到.
RHEL 官方扩展源
首先我们可以使用下RHEL的官方源.命令很简单
# yum localinstall http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-5.noarch.rpm -y
若发现它报个404之类的,去 http://dl.fedoraproject.org/pub/epel/7/x86_64/e/ 找找看 epel-release 开头的rpm package,或许有更新,总之装个epel-release*.rpm后,看/etc/yum.repos.d/文件夹下就多了两个文件如下:
-rw-r--r-- 1 root root957 Jun 19 07:20 epel.repo
-rw-r--r-- 1 root root 1056 Jun 19 07:20 epel-testing.repo
你若没有特别的需求,你应该只要有epel.repo就可以.
epel.repo
[epel]
name=Extra Packages for Enterprise Linux 7 - $basearch
#baseurl=http://download.fedoraproject.org/pub/epel/7/$basearch
mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-7&arch=$basearch
failovermethod=priority
enabled=1
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
[epel-debuginfo]
name=Extra Packages for Enterprise Linux 7 - $basearch - Debug
#baseurl=http://download.fedoraproject.org/pub/epel/7/$basearch/debug
mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-debug-7&arch=$basearch
failovermethod=priority
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
gpgcheck=1
[epel-source]
name=Extra Packages for Enterprise Linux 7 - $basearch - Source
#baseurl=http://download.fedoraproject.org/pub/epel/7/SRPMS
mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-source-7&arch=$basearch
failovermethod=priority
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
gpgcheck=1
你也可以直接把上面那些内容写到/etc/yum.repos.d/epel.repo文件中.
然后:# yum makecache这样就可以用了。
尝试是否成功也很容易
# yum repolist
......
repo idrepo name status
epel/x86_64Extra Packages for Enterprise Linux 7 - x86_645,425
......
发现有高亮一栏就算过了.
remi源
安装和RHEL差不多,这个源主要是提供了一些php相关的扩展库,若不使用php,意义感觉不算大.
# yum localinstall http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
同样可以在/etc/yum.repos.d/中看到多了个remi.repo
编辑可以看到内容如下:
[remi]
name=Les RPM de remi pour Enterprise Linux 7 - $basearch
#baseurl=http://rpms.famillecollet.com/enterprise/7/remi/$basearch/
mirrorlist=http://rpms.famillecollet.com/enterprise/7/remi/mirror
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi
[remi-php55]
name=Les RPM de remi de PHP 5.5 pour Enterprise Linux 7 - $basearch
#baseurl=http://rpms.famillecollet.com/enterprise/7/php55/$basearch/
mirrorlist=http://rpms.famillecollet.com/enterprise/7/php55/mirror
# WARNING: If you enable this repository, you must also enable "remi"
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi
[remi-php56]
name=Les RPM de remi de PHP 5.6 pour Enterprise Linux 7 - $basearch
#baseurl=http://rpms.famillecollet.com/enterprise/7/php56/$basearch/
mirrorlist=http://rpms.famillecollet.com/enterprise/7/php56/mirror
# WARNING: If you enable this repository, you must also enable "remi"
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi
[remi-test]
name=Les RPM de remi en test pour Enterprise Linux 7 - $basearch
#baseurl=http://rpms.famillecollet.com/enterprise/7/test/$basearch/
mirrorlist=http://rpms.famillecollet.com/enterprise/7/test/mirror
# WARNING: If you enable this repository, you must also enable "remi"
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi
[remi-debuginfo]
name=Les RPM de remi pour Enterprise Linux 7 - $basearch - debuginfo
baseurl=http://rpms.famillecollet.com/enterprise/7/debug-remi/$basearch/
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi
[remi-php55-debuginfo]
name=Les RPM de remi de PHP 5.5 pour Enterprise Linux 7 - $basearch - debuginfo
baseurl=http://rpms.famillecollet.com/enterprise/7/debug-php55/$basearch/
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi
[remi-php56-debuginfo]
name=Les RPM de remi de PHP 5.6 pour Enterprise Linux 7 - $basearch - debuginfo
baseurl=http://rpms.famillecollet.com/enterprise/7/debug-php56/$basearch/
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi
[remi-test-debuginfo]
name=Les RPM de remi en test pour Enterprise Linux 7 - $basearch - debuginfo
baseurl=http://rpms.famillecollet.com/enterprise/7/debug-test/$basearch/
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi
默认enable全是0,根据需要自行将enable改为1,注意高亮的第五行enable必须改为1 remi才能用.
然后makecache 测试什么的就和RHEL一样不细说了.
puias源
puias 是基于RH的一个扩展distribution和mirror。无论是CentOS 5,6还是7都可以得到它的一些扩展的程序。尤其是科学计算领域的一些模块,果断是要入手的。目前它由普林斯顿高能所维护。
你去它的官网可以得到很多说明。比如这个页面
我们可以只选择计算的部分如下:
puias-computational.repo
[PUIAS_computational]
name=PUIAS computational Base $releasever - $basearch
mirrorlist=http://puias.math.ias.edu/data/puias/computational/$releasever/$basearch/mirrorlist
#baseurl=http://puias.math.ias.edu/data/puias/computational/$releasever/$basearch
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-puias
/etc/yum.repo.d/下建立文件,保存即可。
因为我们这次没有使用rpm包,所以需要import一下GPG KEY.
rpm --import http://puias.princeton.edu/data/puias/7/x86_64/os/RPM-GPG-KEY-puias
RepoForge源
RepoForge原名RPMForge,是一个维护得很不错的repo站点.点击此处可以看到RHEL各版本的下载链接.拿到链接后
yum localinstall xxx.rpm -y
即可完成安装。
目前为止似乎还没有把centos 7加上,但是没关系,随便找个6的链接,把6变成7即可获得该rpm包的大致位置。当前我得到的位置是 : http://apt.sw.be/redhat/el7/en/x86_64/rpmforge/RPMS/
进入后找到rpmforge-release-**的文件,获得下载链接,安装即可。
yum localinstall http://apt.sw.be/redhat/el7/en/x86_64/rpmforge/RPMS/rpmforge-release-0.5.3-1.el7.rf.x86_64.rpm -y
yum makecache