Linux 如何在CentOS 5上升级到Subversion 1.5?
我的开发服务器(CentOS 5)正在运行Subversion 1.4.2,我希望将其升级到1.5。我在网上的各种博客和文档中读到,这可以通过使用RPMForge来实现。我已经按照上的说明进行了操作,包括安装yum priorities并按照指示设置优先级(1和2用于核心repo源,20用于RPMForge) 但是,当我尝试运行时:Linux 如何在CentOS 5上升级到Subversion 1.5?,linux,svn,version-control,centos,centos5,Linux,Svn,Version Control,Centos,Centos5,我的开发服务器(CentOS 5)正在运行Subversion 1.4.2,我希望将其升级到1.5。我在网上的各种博客和文档中读到,这可以通过使用RPMForge来实现。我已经按照上的说明进行了操作,包括安装yum priorities并按照指示设置优先级(1和2用于核心repo源,20用于RPMForge) 但是,当我尝试运行时: $ yum info subversion 给我的版本号仍然是1.4.2,状态为Installed。此时,我的另一个选择是从源代码处编译,但我希望找到一个包管理的
$ yum info subversion
给我的版本号仍然是1.4.2,状态为Installed。此时,我的另一个选择是从源代码处编译,但我希望找到一个包管理的解决方案,以便于将来升级
有什么想法吗?如果您安装了的repos,那么您应该能够获得一个更新的软件包-这对您不起作用
您应该在/etc/apt/sources.list.d中看到rpmforge.list,其行如下:
repomd http://apt.sw.be redhat/el$(VERSION)/en/$(ARCH)/dag
我刚刚在干净的CentOS 5安装上进行了测试,yum-check-update
显示
subversion.i386 1.5.2-0.1.el5.rf rpmforge
subversion-perl.i386 1.5.2-0.1.el5.rf rpmforge
因此,请检查您的源列表并再次运行检查更新
编辑:哎呀,我的答案丢了一部分。将其添加回上面。它在Dag的存储库中的版本为1.4.6 您可以尝试从主存储库升级它,也可以耐心等待主存储库升级它 从源代码开始很容易,下载源代码包时请阅读安装文件,请记住CentOS可能已将文件安装到了安装位置。(使用“rpm-ql subversion”查看旧文件的安装位置)
当v1.5.0发布到存储库时,您可以像以前一样删除构建版本并使用yum进行安装。RPMForge已在/etc/yum.repos.d/as RPMForge.repo中,内容如下: # Name: RPMforge RPM Repository for Red Hat Enterprise 5 - dag # URL: http://rpmforge.net/ [rpmforge] name = Red Hat Enterprise $releasever - RPMforge.net - dag #baseurl = http://apt.sw.be/redhat/el5/en/$basearch/dag mirrorlist = http://apt.sw.be/redhat/el5/en/mirrors-rpmforge #mirrorlist = file:///etc/yum.repos.d/mirrors-rpmforge enabled = 1 protect = 0 gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmforge-dag gpgcheck = 1 priority=20 #名称:Red Hat Enterprise 5的RPMforge RPM存储库-dag #网址:http://rpmforge.net/ [rpmforge] name=红帽企业版$releasever-RPMforge.net-dag #baseurl=http://apt.sw.be/redhat/el5/en/$basearch/dag 镜像列表=http://apt.sw.be/redhat/el5/en/mirrors-rpmforge #镜像列表=file:///etc/yum.repos.d/mirrors-rpmforge 已启用=1 保护=0 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmforge-dag gpgcheck=1 优先级=20
我在/etc/apt/sources.list.d/rpmforge.list中有这一行 当我运行检查更新时,我得到: Loading "priorities" plugin Loading "fastestmirror" plugin Loading mirror speeds from cached hostfile * epel: mirror.unl.edu * rpmforge: fr2.rpmfind.net * base: mirrors.portafixe.com * updates: mirrors.portafixe.com * addons: mirrors.portafixe.com * extras: mirrors.portafixe.com 2202 packages excluded due to repository priority protections bzip2.i386 1.0.3-4.el5_2 updates bzip2-devel.i386 1.0.3-4.el5_2 updates bzip2-libs.i386 1.0.3-4.el5_2 updates libxml2.i386 2.6.26-2.1.2.6 updates libxml2-devel.i386 2.6.26-2.1.2.6 updates libxml2-python.i386 2.6.26-2.1.2.6 updates perl.i386 4:5.8.8-15.el5_2.1 updates sos.noarch 1.7-9.2.el5_2.2 updates tzdata.noarch 2008e-1.el5 updates 加载“优先级”插件 加载“FastTestMirror”插件 从缓存的主机文件加载镜像速度 *epel:mirror.unl.edu *rpmforge:fr2.rpmfind.net *基本地址:mirrors.portafix.com *更新:mirrors.portafix.com *插件:mirrors.portafix.com *附加:mirrors.portafix.com 2202个包因存储库优先级保护而被排除 bzip2.i386 1.0.3-4.el5_2更新 bzip2-devel.i386 1.0.3-4.el5_2更新 bzip2-libs.i386 1.0.3-4.el5_2更新 libxml2.i386 2.6.26-2.1.2.6更新 libxml2-devel.i386 2.6.26-2.1.2.6更新 libxml2-python.i386 2.6.26-2.1.2.6更新 perl.i386 4:5.8.8-15.el5_2.1更新 sos.noarch 1.7-9.2.el5_2.2更新 tzdata.noarch 2008e-1.el5更新 目前我并不过分担心其他过时的软件包,但正如您所看到的,没有可用的Subversion更新 目前我并不过分担心其他过时的软件包,但正如您所看到的,没有可用的Subversion更新 也不是来自
rpmforge
的任何包。这是您的优先级设置。尝试禁用yum priorities(在/etc/yum/pluginoff.d/priorities.conf
中将enabled=1
更改为enabled=0
)-然后它应该可以工作
所以我想下一个问题是为什么要把事情搞砸。。。。不过我不确定
编辑:有关优先级的更多信息,请参阅。您试图做的是替换“核心”包(即 包含在CentOS存储库中),并带有来自“第三方”的更新包 party“repository(RPMForge),这就是优先级插件 旨在防止 RPMForge存储库包含在中未找到的两个附加包 CentOS以及更新版本的核心软件包。不幸的是,
yum
非常愚蠢,总是将包更新到最新版本
它可以在任何存储库中找到。因此,使用RPMforge运行“yum update
”
启用将使用最新(最新)更新一半系统,
RPMForge的包可能不稳定且支持性较差
因此,建议使用RPMForge等回购协议的方法是使用它们
仅与类似“priorites”的yum插件结合使用,这样可以防止
来自“高”优先级回购的包覆盖来自“低”优先级回购的包
优先级回购(“优先级”参数的名称非常重要
误导性)。通过这种方式,您可以节省安装其他软件包(即
(不在内核中),这是大多数人想要的
现在回到你原来的问题
如果你想替换一个核心包,事情会变得有点棘手。
基本上,您有两种选择:
/etc/yum.repos.d/rpmforge.repo
中设置启用=0
)。你可以
然后在命令行上有选择地启用它:
yum --enablerepo=rpmforge install subversion
将从RPMForge安装最新的subversion和依赖项
这种方法的问题是,如果对
在RPMForge中的subversion包,当repo是
残废要使subversion保持最新,您必须记住运行
yum --enablerepo=rpmforge update subversion
不时地exclude=subversion
添加到
[base]
和[update]
$ rpm -qa|grep subversion
subversion-1.4.2-4.el5_3.1
subversion-1.4.2-4.el5_3.1
$ yum --enablerepo=rpmforge check-update subversion
subversion.x86_64 1.6.6-0.1.el5.rf rpmforge
$ yum shell
>erase mod_dav_svn-1.4.2-4.el5_3.1
>erase subversion-1.4.2-4.el5_3.1
>install mod_dav_svn-1.6.6-0.1.el5.rf
>install subversion-1.6.6-0.1.el5.rf.x86_64
>run