1. Gentoo y las actualizaciones
Aquí en la tierra de Gentoo, el concepto de actualización es muy distinto comparado al resto del mundo Linux. Probablemente ya sepa que nosotros no nos familiarizamos con el modo "clásico" de actualizar software: esperar una nueva versión, descargarla, grabarla, ponerla en el CDROM y luego seguir las instrucciones de actualización.
Ya conoce (siendo un usuario de Gentoo después de todo) que este proceso es extremadamente frustrante para aquellos usuarios avanzados que quieren tener su sistema siempre a la última. Seguramente incluso usuarios avanzados de otras distribuciones tengan la misma sensación, dada la popularidad y expansión de herramientas como apt o apt-rpm que hacen posible disponer de actualizaciones de forma rápida y frecuente. Sin embargo, ninguna distribución es más adecuada que Gentoo para satisfacer a este tipo de usuarios exigentes. Desde el principio Gentoo fue diseñada en torno al concepto de actualizaciones rápidas y graduales.
Lo ideal sería que instale una sola vez y no preocuparse de futuras versiones: solo seguir las instrucciones de la Introducción al sistema Portage del Manual Gentoo que explica cómo mantener su sistema al día. Aunque esa es la forma con la que normalmente funcionan las cosas, a veces los cambios se hacen en los paquetes base del sistema los cuales requieren de una actualización manual.
Una pregunta que se repite sobre el proceso de publicación de versiones de Gentoo es: "¿Por qué lanzar nuevas versiones con frecuencia si no están pensadas para ofrecer a sus usuarios la actualización del software?". Hay varias razones:
Cuando una versión incluye nuevas funcionalidades anteriormente incompatibles o proporciona una serie de paquetes y configuraciones críticas que modifican intensamente el comportamiento del sistema, decimos que dicha versión ofrece un nuevo perfil.
Un perfil (en inglés, profile) es una serie de ficheros de configuración almacenados en un subdirectorio dentro de /usr/portage/profiles. Éstos definen cosas como, por ejemplo, los ebuilds que están considerados como paquetes system, los parámetros USE por defecto, el mapeo por defecto de los los paquetes virtuales y la arquitectura en la que se ejecuta el sistema.
El perfil en uso se determina por el enlace simbólico /etc/make.profile el cual apunta a un subdirectorio dentro de /usr/portage/profiles en donde se almacenan todos los perfiles. Por ejemplo, el perfil por defecto de la versión 2008.0 para x86 se puede encontrar en /usr/portage/profiles/default-linux/x86/2008.0. Los ficheros del directorio precedente son también parte del perfil (y, por lo tanto, están compartidos por subperfiles diferentes). Ésta es la razón por la que los llamamos perfiles en cascada.
Los perfiles anticuados se guardan en /usr/portage/profiles junto con los actuales pero marcados como obsoletos. Cuando eso sucede, se añade un fichero llamado deprecated dentro del directorio del perfil obsoleto. El contenido de este fichero es el nombre del perfil al cual debería actualizarse; Portage emplea esta información para avisarle automáticamente cuando tenga que actualizar a un nuevo perfil.
Hay varias razones por la que se puede crear un perfil nuevo: la publicación de nuevas versiones de paquetes principales (como baselayout, gcc, o glibc) que son incompatibles con versiones previas, un cambio en los parámetros USE por defecto o en la relación entre los paquetes virtuales y los paquetes utilizados, o tal vez un cambio en la configuración principal del sistema.
2. Mantenerse al día con nuevas versiones
Versiones sin cambios de perfil
Si se anuncia una nueva versión de Gentoo que no incluya un nuevo perfil, puede entonces fingir lo ocurrido como si nunca hubiera pasado :).
Si actualiza sus paquetes instalados como se explica en el Manual Gentoo, su sistema quedará exactamente igual que si hubiera reinstalado utilizando una nueva versión.
Versiones con cambios de perfil
Si una nueva versión (como por ejemplo 2008.0 para x86) añade un perfil nuevo, tiene la posibilidad de migrar a este nuevo perfil.
Por supuesto, no está obligado a hacerlo; puede continuar utilizando el antiguo perfil y actualizar sólo sus paquetes como se explica en el Manual Gentoo.
Sin embargo, Gentoo recomienda encarecidamente la actualización del perfil si éste llegara a quedarse obsoleto. Cuando ésto ocurre, significa que los desarrolladores de Gentoo no planean soportarlo más. Con la tabla de debajo, puede comprobar rápidamente qué perfiles están soportados actualmente.
Si decide migrar al nuevo perfil, tendrá que realizar la actualización de forma manual. El modo de actualizar puede variar significativamente entre una versión y otra; depende del nivel de importancia de las modificaciones introducidas en el nuevo perfil.
En el más simple de los casos, sólo tendrá que cambiar el enlace simbólico /etc/make.profile. En el peor de los casos, puede que tenga que recompilar su sistema desde cero mientras hace un afinado baile vudú. La migración normalmente está cubierta en las notas de cada nueva versión. También puede encontrar instrucciones al final de esta guía.
Puede ver la lista de perfiles para su arquitectura que están soportados oficialmente por los desarrolladores de Gentoo en el momento en que haga emerge eselect y, posteriormente, ejecute el siguiente comando:
Listado de Código 2.1: Ver los perfiles soportados |
# eselect profile list
|
3. Instrucciones para actualización de perfil
Importante: Asegúrese de que su Portage esté actualizado antes de llevar a cabo cualquier cambio de perfil. |
En primer lugar, ejecute emerge eselect. La utilidad eselect le permitirá ver y seleccionar perfiles de forma sencilla, sin necesidad de crear o borrar manualmente enlaces simbólicos.
Listado de Código 3.1: Selección de perfil mediante eselect |
(Ver los perfiles disponibles) # eselect profile list (Seleccionar de la lista el número de perfil deseado) # eselect profile set <número> |
Si de todos modos prefiriera cambiar el perfil manualmente, entonces haga lo siguiente:
Listado de Código 3.2: Cambiar perfiles manualmente |
# rm /etc/make.profile # ln -s ../usr/portage/profiles/<perfil seleccionado> /etc/make.profile |
Nota: Existen subperfiles desktop y server para la mayoría de arquitecturas. Examine estos perfiles con cuidado ya que pueden servir mejor sus necesidades que los perfiles por defecto excesivamente mínimos. |
Nota: El subperfil developer (desarrollador) está específicamente pensado para labores de desarrollo de Gentoo Linux. No tiene como objetivo configurar un entorno general de desarrollo. |
Actualizar a 2008.0, 2007.0 ó 2006.1
Si tiene la intención de actualizar a estos perfiles, debería saber que estos esperan a que el sistema esté configurado con unas locales Unicode por defecto; concretamente que UNICODE="yes" esté definido en /etc/rc.conf. Para que esto funcione, debe tener creado unas locales Unicode para su sistema. Por favor, lea nuestra guía UTF-8 para aprender cómo crear las locales adecuadas.
Como alternativa, si no desea definir locales, debería entonces especificar UNICODE="no" en /etc/rc.conf y volver a hacer emerge de baselayout (o esperar hasta la próxima actualización de baselayout) con el parámetro USE -unicode. Puede definir -unicode sólo para baselayout o de modo global para todos los paquetes, añadiéndolo en su variable USE en /etc/make.conf.
Listado de Código 3.3: Opcional: eliminar el soporte Unicode |
(Borrar el soporte Unicode sólo para baselayout) # echo "sys-apps/baselayout -unicode" >> /etc/portage/package.use # emerge -a baselayout (Borrar el soporte Unicode en todo el sistema) # nano -w /etc/make.conf USE="-unicode" # emerge -a baselayout |
Nota: Si está actualizando a un perfil 2007.0 en la arquitectura Sparc, necesitará seguir la Guía de actualización de GCC, puesto que gcc-4 es el compilador predeterminado. |
Por último, siga las instrucciones generales para actualizar su perfil.
Para cambiar al perfil 2006.0, apunte el enlace simbólico /etc/make.profile a la nueva ubicación. Asegúrese de que su Portage está actualizado antes de cambiar su perfil.
Listado de Código 3.4: Cambiar a un perfil 2006.0 |
# rm /etc/make.profile # ln -s ../usr/portage/profiles/<perfil elegido> /etc/make.profile |
Para alpha - Los usuarios que utilicen un núcleo 2.4 o no quieran usar NPTL, deberían escoger el perfil default-linux/alpha/no-nptl. Dispone de mayor información en the alpha release notes.
Para ppc - La unión de los perfiles ppc32 y ppc64 es ya un hecho. El perfil ppc32 ha cambiado de tal modo que ahora se presenta sencillo y genérico, para cualquier propósito, ubicado en default-linux/ppc/ppc32. Este nuevo perfil está optimizado para uso de escritorio y se halla en default-linux/ppc/ppc32/2006.0. Hay varios subperfiles disponibles para procesadores G3 y G4; también se dispone de G3/Pegasos y G4/Pegasos para el Pegasos Open Desktop Workstation. Asegúrese de escoger el adecuado para su sistema cuando cambie a un perfil 2006.0.
sparc - Actualizar al perfil 2006.0/2.4 para los núcleos de la
rama 2.4 requiere de la intervención del usuario (desinstalar
cosas de java), además de un emerge -e world debido a la actualización de gcc.
Actualizar al perfil 2006.0 para los núcleos de la rama 2.6 que
no estén considerados como estables requiere también de una línea en
/etc/portage/package.unmask para desenmascarar una
versión 2.6 del paquete gentoo-sources, además de una
reconstrucción completa.
Para el resto de arquitecturas - No hay cambios importantes en este perfil. No es necesaria ninguna acción especial para realizar el cambio.
Para cambiar al perfil 2005.1, apunte el enlace simbólico /etc/make.profile a la nueva ubicación. Asegúrese de que su Portage está actualizado antes de cambiar su perfil.
Listado de Código 3.5: Cambiar a un perfil 2005.1 |
# rm /etc/make.profile # ln -s ../usr/portage/profiles/<perfil elegido> /etc/make.profile |
Para todas las arquitecturas - No hay cambios esenciales desde perfiles anteriores, por lo que no se necesitan realizar acciones específicas.
Para ppc - Con la versión 2005.1, los perfiles ppc y ppc64 se han unido y creado un número de subperfiles para subarquitecturas concretas. Asegúrese de elegir el subperfil correcto para su sistema cuando migre a un perfil 2005.1.
Con la llegada de la versión 2005.0, varias arquitecturas han decidido definir perfiles adicionales. Asegúrese de leer la descripción de dichos perfiles antes de decidir migrar a uno de ellos. Ahora la mayoría de arquitecturas también utilizan por defecto la rama 2.6 del núcleo cuando era la 2.4 la que se escogía anteriormente.
Algunas arquitecturas necesitan unas cuantas acciones más para llevar a cabo el cambio de un perfil a otro. Si es ese el caso, las guías paso-a-paso están enlazadas desde la siguiente tabla.
| Perfil | Descripción | Guía de actualización específica |
| default-linux/alpha/2005.0 | Perfil 2005.0 por defecto para Alpha con núcleos 2.6 | |
| default-linux/alpha/2005.0/2.4 | Perfil 2005.0 por defecto para Alpha con núcleos 2.4 | |
| default-linux/amd64/2005.0 | Perfil 2005.0 por defecto para AMD64 con núcleos 2.6 | |
| default-linux/amd64/2005.0/no-multilib | Perfil 2005.0 para AMD64 e instalaciones con multilib desactivado | |
| default-linux/arm/2005.0 | Perfil 2005.0 por defecto para ARM con núcleos 2.6 | |
| default-linux/hppa/2005.0 | Perfil 2005.0 por defecto para HPPA con núcleos 2.6 | |
| default-linux/hppa/2005.0/2.4 | Perfil 2005.0 para HPPA con núcleos 2.4 | |
| default-linux/mips/2005.0 | Perfil 2005.0 por defecto para MIPS | |
| default-linux/mips/cobalt/2005.0 | Perfil 2005.0 para Cobalt MIPS | |
| default-linux/mips/mips64/n32/2005.0 | Perfil 2005.0 para plataformas MIPS con soporte n32 | |
| default-linux/mips/mips64/ip28/2005.0 | Perfil 2005.0 específico para Indigo2 Impact 64-bit | |
| default-linux/mips/mips64/2005.0 | Perfil 2005.0 para MIPS 64-bit | |
| default-linux/ppc/2005.0 | Perfil 2005.0 por defecto para PPC con núcleos 2.6 | |
| default-linux/ppc64/2005.0 | Perfil 2005.0 por defecto para PPC64 con núcleos 2.6 | |
| default-linux/s390/2005.0 | Perfil 2005.0 por defecto para S390 | |
| default-linux/sparc/sparc32/2005.0 | Perfil 2005.0 por defecto para Sparc 32-bit | |
| default-linux/sparc/sparc64/2005.0 | Perfil 2005.0 por defecto para Sparc 64-bit | |
| default-linux/x86/2005.0 | Perfil 2005.0 por defecto para x86 con núcleos 2.6 | |
| default-linux/x86/2005.0/2.4 | Perfil 2005.0 para x86 con núcleos 2.4 |
Para cambiar al perfil seleccionado, apunte el enlace simbólico /etc/make.profile a la nueva ubicación. ¡Asegúrese de que su Portage está actualizado antes de cambiar su perfil!
Listado de Código 3.6: Cambiar a un perfil 2005.0 |
# rm /etc/make.profile # ln -s ../usr/portage/profiles/<perfil elegido> /etc/make.profile |
Si está ejecutando un sistema Linux 2.4 y quiere migrar a un núcleo 2.6, asegúrese de leer nuestra Guía Gentoo de migración al núcleo Linux 2.6.
Con la introducción de los perfiles 2004.3, los usuarios no van a ver enormes modificaciones en sus sistemas (vea los detalles más abajo). Sin embargo, los desarrolladores de Gentoo decidieron desplazar este nuevo perfil y deshacerse de un número considerable de otros viejos para acelerar la adopción de los perfiles en cascada, que no son más que los perfiles que siguen la nueva distribución del directorio /usr/portage/profiles; por ejemplo /usr/portage/profiles/default-linux/x86/2004.3 (soportado por Portage 2.0.51 o superior).
Para cambiar al perfil 2004.3, apunte el enlace simbólico /etc/make.profile a la nueva ubicación:
Aviso: ¡¡No se olvide de actualizar Portage antes de cambiar su perfil!! |
Listado de Código 3.7: Actualizar el enlace simbólico /etc/make.profile |
sustituya <arch> por su arquitectura # rm /etc/make.profile # ln -s ../usr/portage/profiles/default-linux/<arch>/2004.3 /etc/make.profile |
Para todas las arquitecturas - Como se dijo antes, no hay grandes cambios en este perfil. Sin embargo, debería observar que sys-apps/slocate y net-misc/dhcpcd ya no se consideran paquetes del sistema. Ésto significa que si ejecuta emerge --depclean, Portage intentará eliminarlos de su sistema. Si necesita alguno de estos paquetes, añádalos al fichero /var/lib/portage/world después de cambiar el perfil, o instálelos manualmente con emerge.
Para ppc - Ahora es sys-fs/udev el que se emplea por defecto en las nuevas instalaciones, en vez de sys-fs/devfs. Aunque esto no tiene efecto en los sistemas ya instalados.
Actualizar Portage para que soporte perfiles en cascada
Aunque esta sección no parezca que se integre bien en esta guía de actualización, es bastante importante. Cualquier perfil listado encima de esta sección requiere de una versión de Portage que soporte perfiles en cascada. Sin embargo, algunos perfiles obsoletos no permiten al usuario actualizar Portage o el usuario está utilizando un perfil que ya no se encuentra disponible - por lo que cualquier intento de actualizar Portage será fallido.
Para solucionar esto, los usuarios pueden crear un enlace simbólico temporal hacia el perfil obsoleto permitiéndoles así actualizar su Portage y poder continuar con el procedimiento de actualización propuesto en esta guía. Sustituya <arch> por su arquitectura correspondiente:
Listado de Código 3.8: Actualizar Portage por medio de un perfil obsoleto |
# rm /etc/make.profile # cd /etc # ln -sf ../usr/portage/profiles/obsolete/<arch> make.profile # emerge -n '>=sys-apps/portage-2.0.51' |
Para cambiar al perfil 2004.2, apunte el enlace simbólico /etc/make.profile a la nueva ubicación:
Aviso: ¡¡No se olvide de actualizar Portage antes de cambiar su perfil!! |
Listado de Código 3.9: Actualizar el enlace simbólico /etc/make.profile |
sustituya <arch> por su arquitectura # rm /etc/make.profile # ln -s ../usr/portage/profiles/default-linux/<arch>/2004.2 /etc/make.profile |
Para x86 - Este perfil cambia la implementación X11 de x11-base/xfree a x11-base/xorg-x11. Este cambio únicamente toca el valor por defecto y es sólo significativo para aquellos que todavía no tienen instalado un servidor X. Si ya tiene uno, ésto no le afectará lo más mínimo; es libre de cambiar de un servidor X a otro de la misma manera que antes.
Para amd64 - No hay cambios esenciales desde perfiles anteriores, por lo que no se necesitan realizar acciones específicas.
Para cambiar al perfil 2004.0, apunte el enlace simbólico /etc/make.profile a la nueva ubicación:
Listado de Código 3.10: Actualizar el enlace simbólico /etc/make.profile |
sustituya <arch> por su arquitectura # rm /etc/make.profile # ln -s ../usr/portage/profiles/default-<arch>-2004.0 /etc/make.profile |
Para todas las arquitecturas - No hay cambios esenciales desde perfiles anteriores, por lo que no se necesitan realizar acciones específicas.
Actualizar a 1.4 desde perfiles más viejos que éste
Las instrucciones para esta actualización son bastante enrevesadas, puede encontrarlas aquí.
El contenido de este documento está registrado bajo los términos de la licencia Creative Commons - Reconocimiento / Compartir Igual