conflicto con rpm

Horst H. von Brand vonbrand en inf.utfsm.cl
Mie Ene 21 11:59:50 CLST 2009


[Enviado a la lista, aunque me llego por el personal; es parte de la hebra
 de resolver este drama]

Juan Andres Ramirez <jandresaedo en gmail.com> wrote:
> 2009/1/20 Horst H. von Brand <vonbrand en inf.utfsm.cl>:
> > Juan Andres Ramirez <jandresaedo en gmail.com> wrote:
> >> 2009/1/19 Horst H. von Brand <vonbrand en inf.utfsm.cl>:
> >> > Juan Andres Ramirez <jandresaedo en gmail.com> wrote:
> 
> [...]
> 
> >> > Nucleo. No es demasiado relevante aca. Que hay en /etc/redhat-release?
> >>
> >> CentOS release 4.3 (Final), eso aparece.
> >
> > O sea, estas _seriamente_ atrasado en actualizaciones.

> Por la razón expuesta en este correo. Esta maquina la heredé y venía
> con todos estos problemas y más, con el tiempo he podido dejarla mas
> estable.

OK. Veremos que se puede hacer.

> >> >> Logré instalar una nueva version del Yum a mano,
> >
> >> > Exactamente como? Sacado de donde?
> >
> >> http://mirror.centos.org/centos/4.7/os/x86_64/CentOS/RPMS/ , de aqui lo
> >> saque.
> >
> > Lo instalaste como? Si aplicaste algun --force o --nodeps o similar, seguro
> > la embarraste mucho mas...
> 
> Segui sus instruciones y no aplique ningun --force o nodeps. Se
> instalo normalmente.

Bien.

> > Notese que yum depende de una lista de cosas adicionales... no _debiera_
> > ser critico en CentOS, pero es sana idea actualizar de todas formas.
> >
> >  yum deplist yum
> >
> > (si, salen varias versiones de algunos paquetes; elige la ultima)

> Esto no lo puedo aplicar porque cuando va a leer el repositorio local se
> pega.

OK, te la envio por el personal.

[...]

> >> >> Setting up repositories
> >> >> dag                       100% |=========================| 1.1 kB    00:00
> >> >
> >> > O sea, tienes habilitado al menos el repositorio dag ademas de base.
> >>
> >> Si.
> >
> > Quien sabe que cosas truchas vienen de alli...
> 
> Creo que saque de ahi el antivirus del e-mail clamav y el Spamassasin.
> De todas maneras saque el Dag, me quede con la base para descartar
> problemas con esto.

Esas cosas estan en CentOS en extras o asi; si no, estan en EPEL
(repositorio de cosas para "EL" (RHEL o CentOS) del proyecto Fedora)

[...]

> > Hum... esta colgado, pero no _tan_ colgado. Sera que esta vuelta loca (CPU
> > al 100%) haciendo algo?
> 
> Al parecer no aplico comando top para ver que esta sucediendo y lo que
> mas ocupa cpu es yum y apache.

Si aun corre y top muestra actividad, no esta "pegado"... Ya se me habia
olvidado lo asquerosamente lento que puede ser yum en versiones pre-Fedora
9 (o 10), y cuan mal se comprortan interactivamente nucleos CentOS 4 con
mucha carga. Peor si hay _muchas_ cosas nuevas que considerar. Tomate un
cafe mientras. O sal a dar una caminata, despeja la neurona ;-)

>  3488  root         25   0   454m  344m 4704   R   49.1   17.1
> 0:12.09  yum
>  3301  apache    25   0   1464   460  384      R   48.1    0.0
> 2:50.82    ps
>  3489  jandres    17   0   7232  2016  760     R   1.6      0.1
> 0:00.46     top
>    50   root         15   0     0      0    0            S   0.3
> 0.0    0:01.01    kswapd0
>     1    root        16    0   4752  556  464        S   0.0     0.0
> 0:09.44    init
>     2    root        34   19     0    0    0              R  0.0
> 0.0   0:00.08   ksoftirqd/0
>     3    root        5    -10     0    0    0              S  0.0
> 0.0   0:00.01   events/0

> > Intenta bajando las cosas e instalando a punta de "rpm -Fhv".
> 
> En eso estoy, updateando paquetes, tengo la lista de todos los
> paquetes que tengo(rpm -qa) y estoy haciendo update a mano no mas.

Urgh. Mi sugerencia es instalar lo suficiente de yum actual para que ande,
y luego tirarse a la piscina. Si falla, usar algo una estrategia del
estilo:

  yum list updates > /tmp/listita

y luego revisar /tmp/listita, actualizando cosas "no controversiales"
primero:

  yum -y update $(< /tmp/no-controversiales) > /tmp/resultado

si aparecen conflictos ver quienes son los causantes (o potenciales
culpables), eliminarlos de la lista no-controversiales, y
reintentar hasta tener un conjunto que se instala limpiamente.

Una vez que funciona, repetir el ejercicio desde el comienzo. Los
recalcitrantes ver si se pueden eliminar (al menos temporalmente) para
destrabar la actualizacion.


Una cosa que alguna vez hice a lo bruto fue armarme (a punta de consultar a
yum(1) por actualizaciones, y procesar la salida de eso con sed(1)) una
lista de cosas a instalar, y luego:

  for p in $(< /tmp/lista); do yum -y update $p; done

Se demoro literalmente horas (luego de haber actualizado las piezas
reconocibles que sabia no me iban a causar problemas, +/- una primera
iteracion de lo de arriba; lo que cubrio algo de 70% de lo que habia que
hacer).


Por suerte versiones mas nuevas de yum manejan --skip-broken, con lo que
evitan por si solas los conflictos insalvables...

Suerte!
-- 
Dr. Horst H. von Brand                   User #22616 counter.li.org
Departamento de Informatica                    Fono: +56 32 2654431
Universidad Tecnica Federico Santa Maria             +56 32 2654239
Casilla 110-V, Valparaiso, Chile 2340000       Fax:  +56 32 2797513



Más información sobre la lista de distribución Linux