Comment puis-je passer à Subversion 1.5 sur CentOS 5? [fermé]
-
01-07-2019 - |
Question
Mon serveur de développement (CentOS 5) exécute Subversion 1.4.2 et je souhaite le mettre à niveau vers la version 1.5. J'ai lu dans divers blogs et documents disséminés sur le Web que cela pourrait être fait en utilisant RPMForge. J'ai suivi les instructions trouvées sur Wiki CentOS , y compris l’installation des priorités yum et la définition de mes priorités comme indiqué (1 et 2 pour les sources principales de prise en pension et 20 pour RPMForge).
Cependant, lorsque j'essaie d'exécuter:
$ yum info subversion
le numéro de version qui m'a été attribué est toujours 1.4.2, avec le statut Installé. Mon autre option à ce stade est de compiler à partir des sources, mais j'aimerais trouver une solution gérée par paquet pour faciliter les futures mises à niveau.
Avez-vous des idées?
La solution
Ce que vous essayez de faire est de remplacer un "noyau". paquet (celui qui est contenus dans le référentiel CentOS) avec un paquet plus récent d’une "3ème fête " référentiel (RPMForge), qui est ce que le plugin de priorités est conçu pour prévenir.
Le référentiel RPMForge contient des packages supplémentaires non trouvés dans
CentOS, ainsi que les versions les plus récentes des packages principaux. Malheureusement, yum
est assez stupide et mettra toujours à jour un paquet avec la dernière version
il peut trouver dans n'importe quel référentiel. Vous exécutez donc " yum update
" avec RPMforge
activé mettra à jour la moitié de votre système avec la dernière (bord avant,
éventuellement instables et moins bien supportés) de RPMForge.
Par conséquent, la méthode recommandée pour utiliser les dépôts comme RPMForge est de les utiliser. seulement avec un plugin yum comme "priorites", qui empêche forfaits de " high " pensions prioritaires pour écraser celles de " low " priorité repo (le nom du paramètre "priority" est très trompeur). De cette façon, vous pourrez installer en toute sécurité des packages supplémentaires (qui ne sont pas au cœur de RPMForge, ce que veulent la plupart des gens.
Passons maintenant à votre question initiale ...
Si vous voulez remplacer un package de base, les choses deviennent un peu délicates. En gros, vous avez deux options:
-
Désinstallez le plug-in de priorité et désactivez le référentiel RPMForge en default (set
enabled = 0
dans/etc/yum.repos.d/rpmforge.repo
). Vous pouvez puis l'activer sélectivement sur la ligne de commande:yum --enablerepo=rpmforge install subversion
installera les dernières sous-versions et dépendances de RPMForge.
Le problème avec cette approche est que s’il existe une mise à jour du paquet subversion dans RPMForge, vous ne le verrez pas lorsque le dépôt est désactivé. Pour que Subversion soit à jour, vous devez vous rappeler d’exécuter
.yum --enablerepo=rpmforge update subversion
de temps en temps.
-
La deuxième possibilité consiste à utiliser le plugin priorites, mais manuellement " masque " le paquetage principal de subversion (ajoutez
exclude = subversion
au Les sections[base]
et[update]
dans/etc/yum.repos.d/CentOS-Base.repo
).Maintenant, yum se comportera comme s'il n'y avait pas de paquet nommé "subversion". dans le référentiel de base et installez avec bonheur la dernière version de RPMForge. De plus, vous aurez toujours les dernières mises à jour de Subversion. lors de l'exécution de
yum update
.
Autres conseils
1.- Si vous utilisez yum-priority, désactivez cette option dans le fichier /etc/yum/pluginconf.d/priorities.conf
2.- vérifier la version de subversion
$ rpm -qa|grep subversion
subversion-1.4.2-4.el5_3.1
subversion-1.4.2-4.el5_3.1
3.- rechercher la dernière version de la sous-version à partir du référentiel rpmforge
$ yum --enablerepo=rpmforge check-update subversion
subversion.x86_64 1.6.6-0.1.el5.rf rpmforge
4.- Procédez maintenant à la mise à niveau de Subversion avec le référentiel 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
c'est tout ce que ça marche pour moi, je suis en train d'exécuter Centos 5.4
Si vous installez le repo de RPMForge , vous devriez alors pouvoir obtenir un nouveau package - cela ne fonctionne pas pour vous?
Vous devriez voir rpmforge.list dans /etc/apt/sources.list.d avec une ligne comme celle-ci:
repomd http://apt.sw.be redhat/el$(VERSION)/en/$(ARCH)/dag
Je viens de tester une installation propre de CentOS 5 et yum check-update
indique
subversion.i386 1.5.2-0.1.el5.rf rpmforge
subversion-perl.i386 1.5.2-0.1.el5.rf rpmforge
Vérifiez donc votre liste de sources et exécutez à nouveau check-update.
Edit: Oups, j'ai perdu une partie de ma réponse. Rajouté ci-dessus.
Je ne suis pas trop préoccupé par les autres paquets obsolètes pour le moment, mais comme vous pouvez le constater, aucune mise à jour Subversion n'est disponible.
Ni les packages de rpmforge
. Ce sont vos paramètres de priorité. Essayez de désactiver yum-priority (changez enabled = 1
en enabled = 0
dans /etc/yum/pluginconf.d/priorities.conf
) - alors cela devrait fonctionner.
Donc, je suppose que la question suivante est de savoir pourquoi la priorité est de tout gâcher .... Je ne suis pas sûr de cela, cependant.
Modifier: voir La réponse de 8jean pour en savoir plus sur les priorités.
sa jusqu’à la version 1.4.6 dans le référentiel de Dag.
Vous pouvez essayer celui de dépôt de Fedora ou avoir un peu de patience pour les référentiels principaux de le mettre à niveau.
La création à partir du source est facile, lisez le fichier INSTALL lorsque vous téléchargez le paquet source. N'oubliez pas que CentOS a peut-être été déplacé à l'emplacement d'installation des fichiers. (Utilisez "rpm -ql subversion" pour voir où les anciens fichiers ont été installés).
Lorsque la v1.5.0 est publiée dans le référentiel, vous pouvez supprimer votre version générée et l'installer à l'aide de yum comme auparavant.
RPMForge est déjà dans /etc/yum.repos.d/ en tant que rpmforge.repo et son contenu est le suivant:
# 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
J'ai cette ligne exacte dans /etc/apt/sources.list.d/rpmforge.list.
Lorsque j'exécute check-update, j'obtiens:
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
Je ne suis pas trop préoccupé par les autres paquets obsolètes pour le moment, mais comme vous pouvez le constater, aucune mise à jour Subversion n'est disponible.
Tout ce que vous avez à faire est d’obtenir ce script. a parfaitement fonctionné pour moi sur CentOS 5.3
http://wandisco.com/subversion/os/downloads
Non, je ne travaille pas là-bas ou je n’ai aucune affiliation, donc ... je viens de le trouver et je me suis dit que je vous le ferais savoir.
Bonne chance.