linux - ¿Cómo puedo actualizar a Subversion 1.5 en CentOS 5?
svn version-control (9)
RPMForge ya está en /etc/yum.repos.d/ como rpmforge.repo, y los contenidos son:
# 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
Mi servidor de desarrollo (CentOS 5) está ejecutando Subversion 1.4.2, y deseo actualizarlo a 1.5. He leído en varios blogs y documentos diseminados por la web que esto se puede hacer mediante el uso de RPMForge. He seguido las instrucciones que se encuentran en CentOS Wiki , incluida la instalación de prioridades yum y el establecimiento de mis prioridades como se indica (1 y 2 para las fuentes de repos de núcleo, y 20 para RPMForge).
Sin embargo, cuando intento ejecutar:
$ yum info subversion
el número de versión que se me da es todavía 1.4.2, con un estado de Instalado. Mi otra opción en este punto es compilar desde el origen, pero me gustaría encontrar una solución administrada por paquete para facilitar futuras actualizaciones.
¿Alguna idea?
Si instala los repositorios de RPMForge , entonces debería poder obtener un paquete más nuevo: ¿esto no le funciona?
Debería ver rpmforge.list en /etc/apt/sources.list.d con una línea como:
repomd http://apt.sw.be redhat/el$(VERSION)/en/$(ARCH)/dag
Acabo de probar en una instalación limpia de CentOS 5, y yum check-update
muestra
subversion.i386 1.5.2-0.1.el5.rf rpmforge
subversion-perl.i386 1.5.2-0.1.el5.rf rpmforge
Así que revisa tu lista de fuentes y ejecuta la actualización de verificación nuevamente.
Editar: Vaya, perdí parte de mi respuesta. Lo agregué nuevamente arriba.
Tengo esa línea exacta en /etc/apt/sources.list.d/rpmforge.list.
Cuando ejecuto check-update, obtengo:
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
No estoy demasiado preocupado por los otros paquetes obsoletos en este momento, pero como puede ver, no hay ninguna actualización de Subversion disponible.
es hasta v 1.4.6 en el repositorio de Dag.
Puede probar el de repositorio de Fedora o tener un poco de paciencia para que los repositorios principales lo actualicen.
Hacerlo desde la fuente es fácil, lea el archivo INSTALL cuando descargue el paquete fuente, tenga en cuenta que CentOS puede haber movido donde se instalan los archivos. (Use "rpm -ql subversion" para ver dónde se instalaron los archivos antiguos).
Cuando v1.5.0 se libera en el repositorio, puede eliminar su versión incorporada e instalar usando yum como antes.
Lo que intenta hacer es reemplazar un paquete "core" (uno que está en el repositorio de CentOS) con un paquete más nuevo de un repositorio "de terceros" (RPMForge), que es lo que el plugin de prioridades está diseñado para evitar.
El repositorio de RPMForge contiene paquetes adicionales que no se encuentran en CentOS, así como versiones más recientes de paquetes principales. Desafortunadamente, yum
es bastante estúpido y siempre actualizará un paquete a la última versión que pueda encontrar en cualquier repositorio. Por lo tanto, ejecutar " yum update
" con RPMforge habilitado actualizará la mitad de su sistema con los últimos paquetes (actualizados, posiblemente inestables y menos soportados) de RPMForge.
Por lo tanto, la forma recomendada de usar repos como RPMForge es usarlos solo junto con un plugin yum como "priorites", que evita que los paquetes de repos de prioridad "alta" sobrescriban aquellos de repositorio de prioridad "baja" (el nombre de la "prioridad" "parámetro es muy engañoso). De esta forma, puede instalar de forma segura paquetes adicionales (que no están en el núcleo) de RPMForge, que es lo que la mayoría de la gente quiere.
Ahora a tu pregunta original ...
Si quiere reemplazar un paquete básico, las cosas se ponen un poco complicadas. Básicamente, tienes dos opciones:
Desinstale el complemento de prioridad y desactive el repositorio RPMForge de forma predeterminada (configure
enabled = 0
en/etc/yum.repos.d/rpmforge.repo
). Luego puede habilitarlo selectivamente en la línea de comando:yum --enablerepo=rpmforge install subversion
instalará la última subversión y dependencias de RPMForge.
El problema con este enfoque es que si hay una actualización del paquete de subversión en RPMForge, no lo verá cuando el repositorio esté deshabilitado. Para mantener la subversión actualizada, debes recordar ejecutar
yum --enablerepo=rpmforge update subversion
de vez en cuando.
La segunda posibilidad es usar el plugin de prioridades, pero "enmascarar" manualmente el paquete de subversión principal (agregar
exclude=subversion
a las secciones[base]
y[update]
en/etc/yum.repos.d/CentOS-Base.repo
) .Ahora yum se comportará como si no hubiera un paquete llamado "subversión" en el repositorio central y felizmente instalaría la última versión de RPMForge. Además, siempre obtendrá las últimas actualizaciones de subversión cuando ejecute la
yum update
.
1.- si está utilizando yum-prioridades deshabilite esto en el archivo /etc/yum/pluginconf.d/priorities.conf
2.- consultar la versión de subversión
$ rpm -qa|grep subversion
subversion-1.4.2-4.el5_3.1
subversion-1.4.2-4.el5_3.1
3.- busque la última versión de la subversión del repositorio de rpmforge
$ yum --enablerepo=rpmforge check-update subversion
subversion.x86_64 1.6.6-0.1.el5.rf rpmforge
4.- Ahora procedo a actualizar la subversión con el repositorio de 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
eso es todo lo que funciona para mí estoy ejecutando centos 5.4
Todo lo que necesitas hacer es obtener este script. funcionó perfectamente para mí en CentOS 5.3
http://wandisco.com/subversion/os/downloads
No, no trabajo allí ni tengo ninguna afiliación como sea ... solo lo encontré y pensé que les haría saber a ustedes.
Buena suerte.
No estoy demasiado preocupado por los otros paquetes obsoletos en este momento, pero como puede ver, no hay ninguna actualización de Subversion disponible.
Ni ningún paquete de rpmforge
. Es su configuración de prioridad. Pruebe a deshabilitar las prioridades yum (change enabled=1
to enabled=0
en /etc/yum/pluginconf.d/priorities.conf
) - entonces debería funcionar.
Así que supongo que la siguiente pregunta es por qué la prioridad es arruinarla ... Pero no estoy seguro de esto.
Editar: Consulte la respuesta de 8jean para obtener más información sobre las prioridades.