martes, 15 de octubre de 2013

LINUX-RHEL-modificar repositorios para yum

Aunque esta la siguiente info no es requisito para aplicar el procedimiento, es importante conocer el ambiente sobre la cual se aplicó la solución a describir. En esta ocasión el ambiente es un servidor con  RHEL 5.3 x86_64 bits.

[root@QUICO]# uname -a
Linux QUICO 2.6.18-164.el5 #1 SMP Tue Aug 18 15:51:48 EDT 2009 x86_64 x86_64 x86_64 GNU/Linux
[root@QUICO]# cat /etc/redhat-release 
Red Hat Enterprise Linux Server release 5.4 (Tikanga)
[root@QUICO yum.repos.d]# 

Usualmente cuando se administra un servidor en RHEL se dispone de una cuenta en los repositorios de Red Hat Network (rhn.redhat.com) para la descarga de paquetes via "yum". Sin embargo no siempre es posible disponer de una cuenta, por lo que cuando se intenta instalar un paquete utiliando yum aparece el siguiente mensaje:

[root@HOMERO ~]# yum search fuse
Loaded plugins: rhnplugin, security
This system is not registered with RHN.
RHN support will be disabled.

Existe la opción de habilitar el servidor RHEL para descargar paquetes desde rpmforge, y de esa forma utilizar el comando yum para instalar.



Lo primero es asegurar que el Servidor cuenta con conexión a internet y las rutas están correctamente seteadas

[root@HOMERO ~]# ping google.com (74.125.67.100) 56(84) bytes of data.
64 bytes from google.com (74.125.67.100): icmp_seq=1 ttl=53 time=118 ms
64 bytes from google.com (74.125.67.100): icmp_seq=2 ttl=53 time=117 ms
64 bytes from google.com (74.125.67.100): icmp_seq=3 ttl=53 time=118 ms
64 bytes from google.com (74.125.67.100): icmp_seq=4 ttl=53 time=117 ms
64 bytes from google.com (74.125.67.100): icmp_seq=5 ttl=53 time=118 ms

Si el la verificación de las rutas no es exitosa, entonces se debe revisar la configuración de las rutas en el archivo resolv.conf
[root@QUICO]# vi /etc/resolv.conf

Una vez verificado el DNS correctamente, a continuación se debe instalar el paquete rpm de rpmforge:
[root@QUICO ~] rpm -Uvh rpmforge-release-0.5.2-2.el5.rf.x86_64.rpm

para mayor info consultar la página de rpmforge:
http://dag.wieers.com/rpm/FAQ.php#B
Una vez instalado, el directorio yum.repo debe contener los siguientes archivos:
[root@QUICO yum.repos.d]# ls -ltr
total 24
-rw-r--r-- 1 root root 1128 Mar 20  2013 rpmforge.repo.rpmnew
-rw-r--r-- 1 root root  728 Mar 20  2013 mirrors-rpmforge-testing
-rw-r--r-- 1 root root  717 Mar 20  2013 mirrors-rpmforge-extras
-rw-r--r-- 1 root root  254 Oct 15 11:05 rhel-debuginfo.repo
-rw-r--r-- 1 root root 1113 Oct 15 11:34 rpmforge.repo
-rw-r--r-- 1 root root  811 Oct 15 11:38 mirrors-rpmforge
[root@QUICO yum.repos.d]# 

Posteriormente es necesario editar los siguientes archivos de configuración de rpmforge
archivo rpmforge.repo. 
En este archivo se indica la lista de los mirrors disponibles para descargar los archivos. En  su forma original, la lista apunta hacia el sitio web:  http://apt.sw.be/redhat/el5/en/mirrors-rpmforge. Sin embargo cuando se intenta utilizar el yum es posible que se despliegue el siguiente mensaje:

Could not retrieve mirrorlist http://apt.sw.be/redhat/el5/en/mirrors-rpmforge error was
[Errno 4] IOError:
Error: Cannot find a valid baseurl for repo: rpmforge

Este error indica que no es posible obetner la lista de mirror desde la dirección web. En ese caso se edita el archivo reemplazando la ruta por un archivo que se encuentra en el mismo directorio del servidor. 

Una buena medida es deshabilitando el valor del parametro original y habilitando con la ruta del archivo

#mirrorlist = http://apt.sw.be/redhat/el5/en/mirrors-rpmforge
mirrorlist = file:///etc/yum.repos.d/mirrors-rpmforge

El archivo debe quedar como aparece:
[root@QUICO yum.repos.d]# cat /etc/yum.repos.d/rpmforge.repo
### Name: RPMforge RPM Repository for RHEL 5 - dag
### URL: http://rpmforge.net/
[rpmforge]
name = RHEL $releasever - RPMforge.net - dag
baseurl = http://apt.sw.be/redhat/el5/en/$basearch/rpmforge
#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

[rpmforge-extras]
name = RHEL $releasever - RPMforge.net - extras
baseurl = http://apt.sw.be/redhat/el5/en/$basearch/extras
mirrorlist = http://apt.sw.be/redhat/el5/en/mirrors-rpmforge-extras
#mirrorlist = file:///etc/yum.repos.d/mirrors-rpmforge-extras
enabled = 0
protect = 0
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmforge-dag
gpgcheck = 1

[rpmforge-testing]
name = RHEL $releasever - RPMforge.net - testing
baseurl = http://apt.sw.be/redhat/el5/en/$basearch/testing
mirrorlist = http://apt.sw.be/redhat/el5/en/mirrors-rpmforge-testing
#mirrorlist = file:///etc/yum.repos.d/mirrors-rpmforge-testing
enabled = 0
protect = 0
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmforge-dag
gpgcheck = 1
[root@QUICO yum.repos.d]# 

NOTA: Los mirrors [rpmforge-extras] y [rpmforge-testing] se encuentran deshabilitados. Si se reuiere habilitar se debe cambiar el valor del parametro enabled a 1


Siguiente: Editar el archivo de lista de mirrors:

vi /etc/yum.repos.d/mirrors-rpmforge

comentar las lineas de tal forma que el archivo contenga la siguiente info visible:
#http://apt.sw.be/redhat/el5/en/$ARCH/rpmforge
#http://archive.cs.uu.nl/mirror/dag.wieers/redhat/el5/en/$ARCH/rpmforge
#http://ftp2.lcpe.uni-sofia.bg/freshrpms/pub/dag/redhat/el5/en/$ARCH/rpmforge
#http://ftp.heanet.ie/pub/freshrpms/pub/dag/redhat/el5/en/$ARCH/rpmforge
http://ftp-stud.fht-esslingen.de/dag/redhat/el5/en/$ARCH/rpmforge
#http://mirror.cpsc.ucalgary.ca/mirror/dag/redhat/el5/en/$ARCH/rpmforge
#http://mirrors.ircam.fr/pub/dag/redhat/el5/en/$ARCH/rpmforge
#http://rh-mirror.linux.iastate.edu/pub/dag/redhat/el5/en/$ARCH/rpmforge
#http://rpmfind.net/linux/dag/redhat/el5/en/$ARCH/rpmforge
http://fr2.rpmfind.net/linux/dag/redhat/el5/en/$ARCH/rpmforge

#http://wftp.tu-chemnitz.de/pub/linux/dag/redhat/el5/en/$ARCH/rpmforge

#http://www.mirrorservice.org/sites/apt.sw.be/redhat/el5/en/$ARCH/rpmforge

Una vez modificados los archivos de configuración, es posible realizar un test con el comando yum update.

Si ocurre el siguiente error

[root@QUICO ~]# yum update
Loaded plugins: rhnplugin, security
This system is not registered with RHN.
RHN support will be disabled.
rpmforge                                                                                                                                         | 1.9 kB     00:00     
http://apt.sw.be/redhat/el5/en/x86_64/rpmforge/repodata/primary.sqlite.bz2: [Errno 12] Timeout:
Trying other mirror.
http://ftp-stud.fht-esslingen.de/dag/redhat/el5/en/x86_64/rpmforge/repodata/primary.sqlite.bz2: [Errno 12] Timeout:
Trying other mirror.
http://fr2.rpmfind.net/linux/dag/redhat/el5/en/x86_64/rpmforge/repodata/primary.sqlite.bz2: [Errno 12] Timeout:
Trying other mirror.
http://apt.sw.be/redhat/el5/en/x86_64/rpmforge/repodata/primary.sqlite.bz2: [Errno 12] Timeout:
Trying other mirror.

Se debe Revisar nuevamente las rutas del servidor, ya que este error se es debido a que el server no puede sersolver el dominio indicado como "apt.sw.be".


Para actualizar toda la información acerca del repositorio aplicar los siguientes comandos en una línea:

[root@QUICO ~]# yum clean all && yum clean metadata && yum clean dbcache && yum makecache && yum update
Loaded plugins: rhnplugin, security
Cleaning up Everything
Loaded plugins: rhnplugin, security
0 metadata files removed
0 sqlite files removed
0 metadata files removed
Loaded plugins: rhnplugin, security
0 sqlite files removed
Loaded plugins: rhnplugin, security
This system is not registered with RHN.
RHN support will be disabled.
rpmforge                                                                                                                                         | 1.9 kB     00:00     
rpmforge/filelists_db                                                                                                                            | 6.1 MB     00:00     
rpmforge/other_db                                                                                                                                | 1.5 MB     00:00     
rpmforge/primary_db                                                                                                                              | 7.0 MB     00:00     
Metadata Cache Created
Loaded plugins: rhnplugin, security
This system is not registered with RHN.
RHN support will be disabled.
Skipping security plugin, no data
Setting up Update Process
Resolving Dependencies
Skipping security plugin, no data
--> Running transaction check
---> Package perl-Date-Manip.noarch 0:5.56-1.el5.rf set to be updated
---> Package python-pexpect.noarch 0:2.3-1.el5.rf set to be updated
---> Package rpmforge-release.x86_64 0:0.5.3-1.el5.rf set to be updated
--> Finished Dependency Resolution

Dependencies Resolved

========================================================================================================================================================================
 Package                                      Arch                               Version                                     Repository                            Size
========================================================================================================================================================================
Installing:
 perl-Date-Manip                              noarch                             5.56-1.el5.rf                               rpmforge                             211 k
     replacing  perl-DateManip.noarch 5.44-1.2.1

 python-pexpect                               noarch                             2.3-1.el5.rf                                rpmforge                             203 k
     replacing  pexpect.noarch 2.3-1.el5

Updating:
 rpmforge-release                             x86_64                             0.5.3-1.el5.rf                              rpmforge                              12 k

Transaction Summary
========================================================================================================================================================================
Install      2 Package(s)         
Update       1 Package(s)         
Remove       0 Package(s)         

Total download size: 426 k
Is this ok [y/N]: y
Downloading Packages:
(1/3): rpmforge-release-0.5.3-1.el5.rf.x86_64.rpm                                                                                                |  12 kB     00:00     
(2/3): python-pexpect-2.3-1.el5.rf.noarch.rpm                                                                                                    | 203 kB     00:00     
(3/3): perl-Date-Manip-5.56-1.el5.rf.noarch.rpm                                                                                                  | 211 kB     00:00     
------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Total                                                                                                                                    84 kB/s | 426 kB     00:05     
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing     : python-pexpect                                                                                                                                   1/6 
  Installing     : perl-Date-Manip                                                                                                                                  2/6 
  Updating       : rpmforge-release                                                                                                                                 3/6 
warning: /etc/yum.repos.d/rpmforge.repo created as /etc/yum.repos.d/rpmforge.repo.rpmnew
  Erasing        : pexpect                                                                                                                                          4/6 
  Erasing        : perl-DateManip                                                                                                                                   5/6 
  Cleanup        : rpmforge-release                                                                                                                                 6/6 

Installed:
  perl-Date-Manip.noarch 0:5.56-1.el5.rf                                              python-pexpect.noarch 0:2.3-1.el5.rf                                             

Updated:
  rpmforge-release.x86_64 0:0.5.3-1.el5.rf                                                                                                                              

Replaced:
  perl-DateManip.noarch 0:5.44-1.2.1                                                     pexpect.noarch 0:2.3-1.el5                                                    

Complete!
[root@QUICO ~]# 


De esta forma ya es posible instalar los paquetes requeridos a través de "yum"
[root@QUICO ~]# yum install fuse fuse-ntfs-3g
Loaded plugins: rhnplugin, security
This system is not registered with RHN.
RHN support will be disabled.
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package fuse-ntfs-3g.x86_64 0:2013.1.13-2.el5.rf set to be updated
--> Finished Dependency Resolution

Dependencies Resolved

========================================================================================================================================================================
 Package                                  Arch                               Version                                         Repository                            Size
========================================================================================================================================================================
Installing:
 fuse-ntfs-3g                             x86_64                             2013.1.13-2.el5.rf                              rpmforge                             586 k

Transaction Summary
========================================================================================================================================================================
Install      1 Package(s)         
Update       0 Package(s)         
Remove       0 Package(s)         

Total size: 586 k
Is this ok [y/N]: y
Downloading Packages:
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing     : fuse-ntfs-3g                                                                                                                                     1/1 

Installed:
  fuse-ntfs-3g.x86_64 0:2013.1.13-2.el5.rf                                                                                                                              

Complete!
[root@QUICO ~]# 

1 comentario: