我的第一篇文章在这里,但我googled,并找不到一个简单的方法来做到这一点.
我有一个程序可以在新的CentOS Linux服务器上线时自动配置.作为该过程的一部分,它安装了epel-release rpm的最新版本.
我使用的命令如下所示:
$rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-7.noarch.rpm && \ yum clean all
这很好,直到他们将rpm文件更改为epel-release-6-8.noarch,然后将epel-release-6-9.noarch等等.他们似乎每3-4个月更新一次.这是一个问题,因为如果存储库更新epel版本号,我的脚本将失败,因为它不知道该版本应该是什么.
我没有找到可能重定向到最新epel rpm文件的链接,所以我别无选择,只能将版本硬编码到我的安装脚本中,并在失败时进行更改.
任何人都知道一个简单(非硬编码)的方式来下载最新的epel rpm,而不知道版本号?我希望有一个方法不涉及到东西在repo文件列表卷曲和grep的网址,但好奇什么人可能建议?
以下脚本会做的诀窍:
cat <<EOM >/etc/yum.repos.d/epel-bootstrap.repo [epel] name=Bootstrap EPEL mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=epel-\$releasever&arch=\$basearch failovermethod=priority enabled=0 gpgcheck=0 EOM yum --enablerepo=epel -y install epel-release rm -f /etc/yum.repos.d/epel-bootstrap.repo
它应该在RHEL / CentOS 5和6上工作.我没有测试版本4.