Bueno, hoy me he encontrado con un (muy) antiguo server Red Hat 4 que no tenía yum instalado. Hace un tiempo ya me pasó algo parecido, así que he decidido crear un post para documentar cómo lo solucionamos.
Lo primero es verificar que no tenemos yum instalado. Para eso, como root, podemos ejecutar:
1 2 3 4 5 6 |
[root@myOldServer ~]# yum bash: yum: command not found [root@myOldServer ~]# whereis yum yum: [root@myOldServer ~]# rpm -q yum package yum is not installed |
Posteriormente, nos aseguramos de la versión y la arquitectura de nuestro servidor, para saber qué paquetes exactos necesitaremos:
1 2 3 4 |
[root@myOldServer ~]# uname -m x86_64 [root@myOldServer ~]# cat /etc/redhat-release Red Hat Enterprise Linux ES release 4 (Nahant Update 6) |
En mi caso, he buscado los rpm necesarios en rpmPBone. Para ello, nos dirigiremos a la web y en «Search» buscaremos por el paquete «yum», seleccionando RHEL 4, que es nuestra versión de SO. Saldrán decenas de resultados. En mi caso, me he decidido por la versión 2.4.3 «noarch» es decir, que es independiente de la arquitectura (que en nuestro caso es x86_64). Infórmate y mira cual es la versión que quieres tener. Si te sirve la misma que a mi, puedes descargarla directamente así:
1 |
[root@myOldServer ~]# wget ftp://ftp.muug.mb.ca/mirror/fedora/epel/4/i386/yum-2.4.3-0.5.el4.noarch.rpm |
Para saber qué paquetes adicionales deberemos instalar, he intentado instalar directamente el rpm de yum, el cual me ha devuelto las dependencias.
1 2 3 4 5 6 |
[root@myOldServer ~]# rpm -ivh yum-2.4.3-0.5.el4.noarch.rpm warning: yum-2.4.3-0.5.el4.noarch.rpm: V3 DSA signature: NOKEY, key ID 217521f6 error: Failed dependencies: python-elementtree is needed by yum-2.4.3-0.5.el4.noarch python-sqlite is needed by yum-2.4.3-0.5.el4.noarch urlgrabber is needed by yum-2.4.3-0.5.el4.noarch |
Así pues, en mi caso, deberé descargar e instalar los siguientes paquetes:
- python-elementtree
- python-sqlite
- urlgrabber
De nuevo mediante rpmPBone he descargado los rpm correspondientes a las dependencias. A continuación, he pasado a instalarlos, uno a uno, empezando por:
1 2 |
[root@myOldServer ~]# rpm -ivh python-elementtree-1.2.6-7.el4.rf.x86_64.rpm [root@myOldServer ~]# rpm -ivh python-urlgrabber-2.9.7-1.2.el4.rf.noarch.rpm |
El otro rpm tiene, a su vez, otras dependencias, que también he tenido que descargar e instalar.
1 2 3 4 |
[root@myOldServer ~]# rpm -ivh python-sqlite-1.0.1-1.2.el4.rf.x86_64.rpm warning: python-sqlite-1.0.1-1.2.el4.rf.x86_64.rpm: V3 DSA signature: NOKEY, key ID 6b8d79e6 error: Failed dependencies: libsqlite.so.0()(64bit) is needed by python-sqlite-1.0.1-1.2.el4.rf.x86_64 |
1 2 |
[root@myOldServer ~]# rpm -ivh sqlite-2.8.17-1.el4.rf.x86_64.rpm [root@myOldServer ~]# rpm -ivh python-sqlite-1.0.1-1.2.el4.rf.x86_64.rpm |
Finalmente, con todas las dependencias resueltas, ya he podido instalar yum:
1 2 3 4 |
[root@myOldServer ~]# rpm -ivh yum-2.4.3-0.5.el4.noarch.rpm warning: yum-2.4.3-0.5.el4.noarch.rpm: V3 DSA signature: NOKEY, key ID 217521f6 Preparing... ########################################### [100%] 1:yum ########################################### [100%] |
Repositorios
Una vez tenemos yum instalado, ya podremos pasar a instalar nuestros repositorios, como por ejemplo, EPEL para RHEL4 x86_64.
1 2 |
[root@myOldServer ~]# wget http://mirror.rackcentral.com.au/epel/4/x86_64/epel-release-4-10.noarch.rpm [root@myOldServer ~]# rpm -Uvh epel-release-4-10.noarch.rpm |
Ya estaremos listos para usar nuestro gestor de paquetes:
1 2 3 4 |
[root@myOldServer ~]# yum search gcc Searching Packages: Setting up repositories epel 100% |=========================| 3.4 kB 00:00 |
Fuentes:
http://nikitux.blogspot.com.es/2010/04/instalando-yum-en-red-hat-enterprise.html
Foto por Adams K.
Al instalar rpm -ivh python-elementtree-1.2.6-7.el4.rf.x86_64.rpm
me salen estos errores de dependencias:
libc.so.6()(64bit) se necesita para python-elementtree-1.2.6-7.el4.rf.x86_64
libc.so.6(GLIBC_2.2.5)(64bit) se necesita para python-elementtree-1.2.6-7.el4.rf.x86_64
libexpat.so.0()(64bit) se necesita para python-elementtree-1.2.6-7.el4.rf.x86_64
libpthread.so.0()(64bit) se necesita para python-elementtree-1.2.6-7.el4.rf.x86_64
Sabes que necesito instalar? Gracias
Hola Fran,
Al parecer necesitas instalar el paquete glibc-devel.
Ésto lo he hecho desde un PC que sí que tiene yum, ejecutando un «yum provides */libc.so», el cual me devuelve qué paquetes tienen ese determinado fichero.
¡Suerte!
Ok ha funcionado. Muchas Gracias
Buenas,
Después de seguir los pasos, me encuentro que no existe el fichero /etc/yum.conf. Lo he creado con la información por defecto y me sigue dando el error:
Config Error: Error accessing config file: /etc/yum.conf
He confirmado los permisos de acceso del fichero (777). No se si es un error de python.
¿Sabes qué puede estar pasando?
Gracias!
Hola. Mira lo que me acaba de pasar en un RHEL4:
server:~# whereis rpm
rpm:
server:~#
xDD