2 votes

Mise à niveau de R vers 3.1.1 sur ec2 via yum

J'ai une instance ec2 avec une ancienne version (3.0.2) de R que j'essaie de mettre à jour vers la dernière (3.1.1). Cette version n'est pas disponible dans le repo yum par défaut, mais elle est disponible sous EPEL.

La version installée est 3.0.2 :

[hadoop@ip-172-31-19-15 ~]$ yum list R-core
Loaded plugins: priorities, update-motd, upgrade-helper
970 packages excluded due to repository priority protections
Installed Packages
R-core.x86_64                                                                                  3.0.2-1.17.amzn1                                                                                   @amzn-main
Available Packages
R-core.i686                                                                                    3.0.2-1.17.amzn1                                                                                   amzn-main

Voici les dépôts

[hadoop@ip-172-31-19-15 ~]$ yum repolist
Loaded plugins: priorities, update-motd, upgrade-helper
970 packages excluded due to repository priority protections
repo id                                                                             repo name                                                                                                     status
!amzn-main/latest                                                                   amzn-main-Base                                                                                                     4,801
!amzn-updates/latest                                                                amzn-updates-Base                                                                                                  1,497
epel/x86_64                                                                         Extra Packages for Enterprise Linux 6 - x86_64                                                                10,139+970
repolist: 16,437

En spécifiant le repo epel, je peux voir la version 3.1.1, elle est aussi listée ici

sudo yum --disablerepo="*" --enablerepo="epel" list R-core
Loaded plugins: priorities, update-motd, upgrade-helper
Installed Packages
R-core.x86_64                                                                                  3.0.2-1.17.amzn1                                                                                   @amzn-main
Available Packages
R-core.i686                                                                                    3.1.1-3.el6                                                                                        epel      
R-core.x86_64                                                                                  3.1.1-3.el6   

Cependant, lorsque j'essaie d'installer en utilisant sudo yum --disablerepo="*" --enablerepo="epel" install R-core Je reçois les erreurs suivantes :

--> Finished Dependency Resolution
Error: Package: R-java-3.1.1-3.el6.x86_64 (epel)
           Requires: java-1.5.0-gcj
Error: Package: R-core-devel-3.1.1-3.el6.x86_64 (epel)
           Requires: libicu-devel
Error: Package: R-core-devel-3.1.1-3.el6.x86_64 (epel)
           Requires: tcl-devel
Error: Package: R-core-devel-3.1.1-3.el6.x86_64 (epel)
           Requires: tk-devel
Error: Package: R-core-3.1.1-3.el6.x86_64 (epel)
           Requires: libicuuc.so.42()(64bit)
Error: Package: R-core-3.1.1-3.el6.x86_64 (epel)
           Requires: xdg-utils
Error: Package: R-core-3.1.1-3.el6.x86_64 (epel)
           Requires: libicui18n.so.42()(64bit)
Error: Package: R-core-3.1.1-3.el6.x86_64 (epel)
           Requires: libtcl8.5.so()(64bit)
Error: Package: R-core-3.1.1-3.el6.x86_64 (epel)
           Requires: libtk8.5.so()(64bit)
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest

Cela est probablement dû au fait que j'ai désactivé * repo et activé uniquement epel, ce qui pourrait empêcher la recherche de certaines dépendances. J'ai dû le faire sinon, il n'aurait trouvé que la version 3.0.2 de amzn_main.

Quelle est la commande correcte que je dois utiliser pour installer la version 3.1.1 à partir du dépôt epel ?

1voto

George Rushby Points 131
# yum install yum-priorities

Il faut ajouter une priorité à tous les dépôts mis en place. Allez à /etc/yum.repos.d et modifier tous les fichiers et ajouter priorité

Plus le chiffre est bas, plus il est important - les EPEL sont donc les plus bas.

Ejemplo:

[epel]
name=Extra Packages for Enterprise Linux 6 - $basearch
#baseurl=http://download.fedoraproject.org/pub/epel/6/$basearch
mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-6&arch=$basearch
failovermethod=priority
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6
priority=10

0voto

Michael Hampton Points 232226

EPEL n'est pas compatible avec Amazon Linux. Il l'était, au tout début, quand Amazon Linux ressemblait plus à CentOS, mais il est trop différent maintenant.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X