# [EMERGE]Bloqueos al actualizar sistema (PEND.)

## Jack Krauser

Hola chic@s =)

He pasado como dos meses sin aplicar una actualización del sistema ya que siempre me olvidaba, pero hoy me di tiempo de leer todo los cambios que había que hacer los cuales se me informaron al hacer un:

```
emerge --sync
```

Y me salen estos mensajes que ya lei (con emocion me encontré al encontrar la actualización a Gnome 3.8.1... Al fiiiiin):

```
JackKrauseri7Gentoo #  eselect news list
```

 *eselect wrote:*   

> 
> 
> News items:
> 
>   [1]      2009-04-18  Generation 1 Java Setup Deprecated
> ...

 

Apliqué el punto 10 que trata acerca del initframs (tema que aún no comprendo del todo pero que estoy tratando de digerir), el punto 11 lo haré en su momento pero más me interesa el punto 13 y solo por curiosidad le aplique un 

```
emerge -pv gnome
```

 para ver que tenía y pues me mostró un sin fin de bloqueos lo que obviamente implica leer la wiki de como actualizar a gnome 3

Bien, antes de aplicar cualquier cambio mejor decidí actualizar el sistema (supuse y supongo que al actualizar el sistema no se me actualiza automaticamente a gnome 3 sin hacer lo que se dice en la wiki), pero al hacer un 

```
JackKrauseri7Gentoo # emerge -avuDN world
```

Tengo otros bloqueos que no se como solucionar porque aún no entiendo del todo como solucionar este tipo de errores con respecto a emerge. Obviamente me he leído el handbook y otros lugares que hablan al respecto con el afán de no molestarles pero no es lo mismo la teoría que la práctica y es aquí donde creo que ustedes me pueden ayudar y el error que me bota es este:

 *emerge wrote:*   

> Total: 528 packages (295 upgrades, 154 new, 67 in new slots, 12 reinstalls, 8 uninstalls), Size of downloads: 2,107,335 kB
> 
> Fetch Restriction: 1 package
> 
> Conflict: 24 blocks
> ...

 

(Como se pueden fijar, tengo mucho que descargar solo por no aplicar las pequeñas actualizaciones a tiempo y de haberlo hecho tampoco creo tuviese estos problemas =/)

Y bueno, heme aquí estancado sin saber que hacer... Las únicas pistas que estoy viendo es que parece que está intentando instalar ciertas cosas que tienen que ver con gnome 3, por ejemplo "mail-client/evolution-3.8.5"... Pero bueno, solo son especulaciones mías...

Espero recibir vuestra ayuda y estaré eternamente agradecido =)

Saludos...

----------

## rivapic

Yo acabo de actualizar a gnome 3.8 y como tu tuve muchos bloqueos, te recomiendo que lo hagas por partes , primero como dice la guia migra a systemd, cuando ya estés con systemd como init elimina uno a uno los paquetes que te bloquean. Tienes 24 blocks, ese numero a medida que elimines ira bajando.  Mañana con mas tiempo puedo concretar mas

----------

## Jack Krauser

 *rivapic wrote:*   

> Yo acabo de actualizar a gnome 3.8 y como tu tuve muchos bloqueos, te recomiendo que lo hagas por partes , primero como dice la guia migra a systemd, cuando ya estés con systemd como init elimina uno a uno los paquetes que te bloquean. Tienes 24 blocks, ese numero a medida que elimines ira bajando.  Mañana con mas tiempo puedo concretar mas

 

Gracias rivapic por responder, te comento que eso fue precisamente lo que estaba haciendo pero debido a los bloqueos que me saltaron mejor pensé en actualizar el sistema (como dije, no lo había hecho hace fuuuuuu) y por eso puse este post)...

Al intentar instalar systemd me saltan los siguientes bloqueos:

```
JackKrauseri7Gentoo ~ # emerge -pv systemd
```

 *emerge wrote:*   

> Total: 12 packages (6 upgrades, 4 new, 2 in new slots, 1 uninstall), Size of downloads: 6,835 kB
> 
> Conflict: 4 blocks (1 unsatisfied)
> 
>  * Error: The above package list contains packages which cannot be
> ...

 

En este sentido, no se como solucionar estos bloqueos, si me enseñas como lo hiciste tu, de repente pueda resolver los bloqueos que me salten al instalar gnomer 3.8.1

Gracias por tus respuestas tan prontas man =)

PD: Obviamente ya hice las configuraciones en el kernel añadiendo lo que faltaba (dos o tres opciones) e instalando initframs mediante genkernel (hice la configuración del kernel manualmente)

EDITO: Soluciono esto al desinstalar los paquetes "sys-apps/openrc-0.11.8" y "sys-apps/kmod-15"????

----------

## i92guboj

No sé en qué fase de la actualización te encuentras ahora mismo, así que no sé si esto es relevante, pero ahí va...

Portage se ha hecho bastante más inteligente (y más lento, de paso) a la hora de calcular dependencias y resolver bloqueos. Es bastante posible que tu número de problemas sea bastante menor si antes de actualizar nada más actualizas portage con "emerge -uva portage".

Tras eso, lo mejor será ir viéndolos uno a uno. Si la lista es muy larga, empieza actualizando componentes sueltos, o simplemente el set @system. Luego iremos andando a partir de ahí y viendo cada fallo según aparezca.

----------

## Jack Krauser

 *i92guboj wrote:*   

> No sé en qué fase de la actualización te encuentras ahora mismo, así que no sé si esto es relevante, pero ahí va...
> 
> Portage se ha hecho bastante más inteligente (y más lento, de paso) a la hora de calcular dependencias y resolver bloqueos. Es bastante posible que tu número de problemas sea bastante menor si antes de actualizar nada más actualizas portage con "emerge -uva portage".
> 
> Tras eso, lo mejor será ir viéndolos uno a uno. Si la lista es muy larga, empieza actualizando componentes sueltos, o simplemente el set @system. Luego iremos andando a partir de ahí y viendo cada fallo según aparezca.

 

Gracias i92guboj por contestar....

Te comento que normalmente actualizo portage cuando el comando emerge --sync me lo pide, lo cual en este caso no sucedio, pero para salir de dudas lo estoy haciendo y tengo lo siguiente:

```
JackKrauseri7Gentoo ~ # emerge -uva portage
```

 *emerge wrote:*   

> * IMPORTANT: 2 config files in '/etc/portage' need updating.
> 
>  * See the CONFIGURATION FILES section of the emerge
> 
>  * man page to learn how to update config files.
> ...

 

Listo, como no paso nada (bueno paso algo, "fileRecording sys-apps/portage in "world" favorites", pero no una actualización como pensaba que sucedería) supongo que portage ya está actualizado ya que al volverlo a ejecutar sale lo siguiente:

 *emerge wrote:*   

> * IMPORTANT: 2 config files in '/etc/portage' need updating.
> 
>  * See the CONFIGURATION FILES section of the emerge
> 
>  * man page to learn how to update config files.
> ...

 

Me tiene interesado (intrigado más bien) el "set" que pusiste: "@system" o como yo lo he leído como "palabras clave" (solo conozco de "@world") y me gustaría saber que "set" existen dentro de Gentoo, creo que me sería bastante útil conocerlas para un mejor manejo/control de portage a la hora de que me salgan este tipo de bloqueos...

Eeeeen fin, siguiendo tus consejos pues voy a actualizar "@system":

NOTA: Justamente aquí ocurre algo interesante, si uso la siguente orden:

```
JackKrauseri7Gentoo # emerge -avuDN @system
```

 *emerge wrote:*   

> ......
> 
> Total: 167 packages (144 upgrades, 13 new, 5 in new slots, 5 reinstalls, 5 uninstalls), Size of downloads: 570,428 kB
> 
> Fetch Restriction: 1 package
> ...

 

Pero si uso la siguiente orden:

```
JackKrauseri7Gentoo # emerge -avu @system
```

 *emerge wrote:*   

> * IMPORTANT: 2 config files in '/etc/portage' need updating.
> 
>  * See the CONFIGURATION FILES section of the emerge
> 
>  * man page to learn how to update config files.
> ...

 

En cambio ahora si me deja actualizar =/... Aún no actualizo hasta entender porque las dos órdenes difieren entre si y en éste caso me gustaría saber cuál mismo aplicar...

NOTA2: Tu escribiste

 *i92guboj wrote:*   

> No sé en qué fase de la actualización te encuentras ahora mismo

 

No he sabido que se manejen las actualizaciones por fases (supongo que es una forma de decir), pero si no me equivoco te refieres a que primero se actualiza el árbol de portage con --sync, luego (en mi caso) si lo pide actualizo portage, y de ahí si actualizo lo que quiera actualizar/instalar/desinstalar

----------

## i92guboj

 *Jack Krauser wrote:*   

>  *i92guboj wrote:*   
> 
> Te comento que normalmente actualizo portage cuando el comando emerge --sync me lo pide, lo cual en este caso no sucedio, pero para salir de dudas lo estoy haciendo y tengo lo siguiente:
> 
> ```
> ...

 

Efectivamente, nada pendiente por ahí.

 *Quote:*   

> 
> 
>  *emerge wrote:*   * IMPORTANT: 2 config files in '/etc/portage' need updating.
> 
>  * See the CONFIGURATION FILES section of the emerge
> ...

 

Esto lo puedes ver con "emerge --list-sets. El set @system es lo básico para que Gentoo funcione, se correspondería de forma muy cercana con lo que va en un stage3 de instalación.

 *Quote:*   

> 
> 
> Eeeeen fin, siguiendo tus consejos pues voy a actualizar "@system":
> 
> NOTA: Justamente aquí ocurre algo interesante, si uso la siguente orden:
> ...

 

La diferencia es -DN.

-D hace que portage no solo actualice dependencias inmediatas, sino dependencias de dependencias (deep) de los paquetes incluídos en el set @world. Eso a su vez hace que la lista de archivos a instalar sea mayor (en algunos casos mucho mayor), y, por tanto, que haya más posibilidades de colisión entre paquetes o algún otro tipo de problema.

EDITADO:-N hace que portage re-emerja también los paquetes con cambios en sus USE flag, aunque no sea imprescindible para instalar los nuevos que se pretenda instalar, o para actualizar el paquete o set que se quiera actualizar. Eso también puede aumentar la lista de paquetes a instalar de forma considerable.

Ambas flags son rutinarias, y por norma general es bueno usarlas al hacer una actualización del sistema. Pero cuando hay problemas es mejor ir paso a paso. Aunque en algún momento del proceso habrá que lanzar emerge con -DN y asegurarse de que todo está bien, por supuesto.

===

En todo caso, usando el comando que te digo arriba actualizarás lo más inmediato, lo demás siempre hay tiempo para arreglarlo. Al menos, la lista de paquetes a actualizar disminuirá, así que daño no te va a hacer  :Smile: 

----------

## opotonil

 *Quote:*   

> 
> 
> Al intentar instalar systemd me saltan los siguientes bloqueos: 
> 
> Código:
> ...

 

En el caso de sys-apps/kmod entiendo que simplemente esta diciendo que necesitas activar la USE tools del ebuild, por otra parte sys-apps/openrc no termino de entender que pretende pero por lo que veo hay una versión estable mas reciente, así que yo lo primero que intentaría es actualizar primero sys-apps/openrc y después volver ha intentar instalar systemd.

Salu2.

PD: No se si es manía mía o realmente es recomendable pero en casos como:

 *Quote:*   

> 
> 
> Código:
> 
> JackKrauseri7Gentoo ~ # emerge -uva portage
> ...

 

Me gusta utilizar la opción --oneshot para no llenar @word con dependencias o en este caso, imagino, que mas que dependencias ebuilds que ya forman parte de otro set (@system): emerge --oneshot -uva portage

A parte si dice "IMPORTANT: 2 config files in '/etc/portage' need updating." empezaría actualizando las configuraciones con etc-update o dispatch-conf.

----------

## Jack Krauser

Gracias i92guboj por toda tu ayuda, cada vez esto se va haciendo más claro y ya mes estoy sientiendo un experto en portage   :Very Happy:   (jajajaja ya quisiera)

 *i92guboj wrote:*   

> 
> 
> Esto lo puedes ver con "emerge --list-sets. El set @system es lo básico para que Gentoo funcione, se correspondería de forma muy cercana con lo que va en un stage3 de instalación.

 

Me da curiosidad ver cuales son los sets que tiene Gentoo así que 

```
JackKrauseri7Gentoo # emerge --list-sets
```

 *emerge wrote:*   

> downgrade
> 
> installed
> 
> live-rebuild
> ...

 

Pregunta1: ¿En donde puedo conseguir información del significado de cada uno de ellos? (quiero aprender  :Very Happy: )

 *i92guboj wrote:*   

> 
> 
> La diferencia es -DN.
> 
> -D hace que portage no solo actualice dependencias inmediatas, sino dependencias de dependencias (deep) de los paquetes incluídos en el set @world. Eso a su vez hace que la lista de archivos a instalar sea mayor (en algunos casos mucho mayor), y, por tanto, que haya más posibilidades de colisión entre paquetes o algún otro tipo de problema.
> ...

 

Si estaba consciente del significado de -D pero no comprendia el alcance en si ya que:

 *HandBook wrote:*   

> Portage buscará entonces las nuevas versiones de las aplicaciones que explícitamente haya instalado (las listadas en /var/lib/portage/world), sin embargo, no revisa minuciosamente sus dependencias. Si desea actualizar también esas dependencias, añada la opción --deep

 

No me dejó muy claro que digamos del alcance de -D (o --deep para los que gusten así)

 *i92guboj wrote:*   

> 
> 
> En todo caso, usando el comando que te digo arriba actualizarás lo más inmediato, lo demás siempre hay tiempo para arreglarlo. Al menos, la lista de paquetes a actualizar disminuirá, así que daño no te va a hacer 

 

Es justamente lo que estoy haciendo mientras escribo esto y el resultado final fue:

 *emerge wrote:*   

> 
> 
> !!! existing preserved libs:
> 
> >>> package: media-video/ffmpeg-1.0.7
> ...

 

Hasta aquí todo va muy bien (ya apliqué lo que me dice portage que haga "emerge @preserved-rebuild" pero sigue saliendo el mismo mensaje)

Pregunta2: Y ahora, ¿qué debo seguir haciendo?

NOTA: Como parte de la actualización de @system pues le toco a gcc actualizarse y si que se ha sabido demorar una eternidad, normalmente hago las actualizaciones cuando me voy a dormir y no noto el trabajo que se está haciendo

----------

## Jack Krauser

 *opotonil wrote:*   

> 
> 
> En el caso de sys-apps/kmod entiendo que simplemente esta diciendo que necesitas activar la USE tools del ebuild, por otra parte sys-apps/openrc no termino de entender que pretende pero por lo que veo hay una versión estable mas reciente, así que yo lo primero que intentaría es actualizar primero sys-apps/openrc y después volver ha intentar instalar systemd. 

 

O.o en serio que no me había fijado, a mi parecer era como si estuviese en chino pero si uno le pone atención está ahí, creo que tienes razón, empezaré por poner las USE que me falten

 *opotonil wrote:*   

> 
> 
> PD: No se si es manía mía o realmente es recomendable pero en casos como:
> 
>  *Quote:*   
> ...

 

Una vez leí acerca del --oneshot pero perdí el artículo y no recordaba cual era el uso, pero en mis actualizaciones no lo he usado... Hay alguna forma de saber el contenido de @system y de los demás set?

 *opotonil wrote:*   

> 
> 
> emerge escribió:
> 
> * IMPORTANT: 2 config files in '/etc/portage' need updating. 
> ...

 

Leyendo el man (tal cual me recomienda emerge que lo haga), nunca logré entender como actualizar mis ficheros de configuración, pero justo antes de que publicarás tu respuesta, había leído algo acerca de etc-update y dispatch-conf en el handbook lo cual dice así:

 *HandBook wrote:*   

> Ha de ser cuidadoso, ya que utilizar etc-update es sensiblemente menos seguro que dispatch-conf

 

Creo que empezaré a usar dispatch-conf para actualizar esos ficheros  :Very Happy: 

----------

## quilosaq

 *Jack Krauser wrote:*   

> ... Hay alguna forma de saber el contenido de @system y de los demás set?
> 
> ...

 

```
emerge --info @system
```

También funciona con el resto de sets.

----------

## quilosaq

 *Jack Krauser wrote:*   

> ...
> 
> Pregunta1: ¿En donde puedo conseguir información del significado de cada uno de ellos? (quiero aprender :D)
> 
> ...

 

En esta guía (en inglés) tienes más información:

http://dev.gentoo.org/~zmedico/portage/doc/portage.html#config-set-defaults

----------

## quilosaq

 *opotonil wrote:*   

> ...
> 
>  *Quote:*   emerge escribió:
> 
> Total: 12 packages (6 upgrades, 4 new, 2 in new slots, 1 uninstall), Size of downloads: 6,835 kB 
> ...

 

Yo entiendo otra cosa.

Lo que dice es que no puedes tener instalado a la vez openrc-0.11.8 y kmod-15. El primero ya lo tienes instalado y el segundo se necesita instalar como dependencia de systemd-208-r2 (que también tiene que instalarse). Resumiendo tienes que elegir entre quedarte con openrc o pasarte a systemd. Este cambio no es trivial y puede dejarte el sistema roto. Seguro que hay una guía para esto.

----------

## rivapic

Con esto solucionaras el mensaje "existing preserved libs"

```
emerge -C oracle-jdk-bin ffmpeg && emerge oracle-jdk-bin ffmpeg
```

----------

