Upgrading Gentoo/es

Este documento explica cómo las nuevas versiones de Gentoo afectan a instalaciones ya existentes.

Filosofía
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 lector de CDROM y luego seguir las instrucciones de actualización.

Ya sabe (después de todo es un usuario de) 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 se diseñó en torno al concepto de actualizaciones rápidas e incrementales.

Ideally, you install once and never bother with releases: just follow the instructions in A Portage Introduction in the Gentoo handbook that explain how to keep your system up to date. While that's the way things usually go, sometimes changes are made to the core system which require updates to be done manually.

Versiones y perfiles
Una pregunta que se repite sobre el proceso de publicación de versiones de Gentoo es: "¿Por qué liberar nuevas versiones frecuentemente si no están pensadas para ofrecer a sus usuarios la actualización del software?". Hay varias razones:


 * Una nueva versión supone nuevos CDs de Instalación con errores corregidos y nuevas funcionalidades
 * Una nueva versión proporciona un conjunto actualizado de paquetes GRP, por lo que aquellos usuarios que elijan "el modo rápido" de instalación (stage3 + paquetes precompilados) terminarán con un sistema que no está pasado de moda
 * Por último, una nueva versión puede, de cuando en cuando, implementar algunas funcionalidades que no eran compatibles en versiones anteriores

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 (profile) es una serie de ficheros de configuración almacenados en un subdirectorio dentro de que definen cosas como los ficheros ebuild que se consideran paquetes system, los ajustes USE por defecto, el mapeo por defecto de los paquetes virtuales y la arquitectura en la que se ejecuta el sistema.

The profile in use is determined by the symbolic link, which points to a subdirectory of which holds the profile files. For instance, the default 13.0 profile can be found at. The files in the parent directories are part of the profile as well (and are therefore shared by different subprofiles). This is why we call these cascaded profiles.

Los perfiles anticuados se guardan en junto con los actuales pero marcados como obsoletos. Cuando eso sucede, se añade un fichero llamado 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.

There are various reasons that a new profile may be created: the release of new versions of core packages (such as, , or ) that are incompatible with previous versions, a change in the default USE flags or in the virtual mappings, or maybe a change in system-wide settings.

Versiones sin cambios de perfil
Si se anuncia una nueva versión de Gentoo que no incluye un nuevo perfil entonces puede aparentar con seguridad que nunca ha ocurrido. :&#41;

Si actualiza los paquetes instalados como se explica en el manual de Gentoo, entonces su sistema quedará exactamente igual que si hubiera reinstalado utilizando la nueva versión.

Versiones con cambio de perfil
If a release (such as 13.0 for ) introduces a new profile, you have the choice to migrate to the new profile.

Naturalmente, no está obligado a hacerlo y puede continuar utilizando el perfil antiguo y actualizar únicamente sus paquetes como se explica en el manual de Gentoo.

Sin embargo, Gentoo recomienda encarecidamente la actualización del perfil si éste quedara obsoleto. Cuando ésto ocurre, significa que los desarrolladores de Gentoo no planean ofrecer soporte.

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, solo tendrá que cambiar el enlace simbólico. 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 en esta guía instrucciones para actualizar el perfil.

Perfiles soportados
You can view the list of profiles on your architecture officially supported by Gentoo developers when you and then run the following command:

Actualizar desde sistemas antiguos
Algunos sistemas son tan antiguos que no es puede simplemente cambiar el perfil. Los nuevos perfiles podrían necesitar versiones más recientes de Portage u otro software que no se puede instalar debido a que las definiciones de los paquetes (ebuilds) para esas versiones antiguas del software ya no están disponibles.

En este caso, el sistema debe recibir en primer lugar instantáneas del árbol de Portage más antiguas y actualizar al menos Portage (pero es preferible que se actualicen todos los paquetes del conjunto system), se incrementa gradualmente la fecha de las instantáneas del árbol Portage hasta que sea lo suficientemente reciente para poder seguir de nuevo las instrucciones de cambio de perfil:

Older snapshots are often still available on some mirrors on the Internet or on specific locations dedicated for this purpose. It is recommended to verify the integrity of those files to make sure they are not tampered with:

Aunque las claves de firmado debería haber expirado, la firma debería ser correnta.

Actualizar desde sistemas (demasiado) antiguos
En ocasiones, los sistemas son tan antiguos que es complicado actualizarlos. En el camino para su actualización puede que se requieran versiones intermedias de software (como portage) que ya no existen, y por tanto podría necesitar una actualización del árbol de portage en pasos (por ejemplo actualizaciones incrementales del árbol con pasos de tres o cuatro meses).

Para actualizar estos sistemas, puede utilizar un stage3 reciente para poner al día el sistema. Las instrucciones para realizar esto se dan en la sección Actualizar sistemas antiguos.

Instrucciones generales
First, run. The utility will let you view and select profiles easily, without needing to create or remove symlinks by hand.

Si de todos modos prefiere cambiar el perfil manualmente, entonces simplemente haga lo siguiente:

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 a una localización por defecto; concretamente que UNICODE="yes" esté definido en . Para que esto funcione, debe tener creadas unas localizaciones Unicode para su sistema. Por favor, lea el artículo sobre UTF-8 para aprender a crear las localizaciones adecuadas.

Alternatively, if you do not wish to set a locale, you should specify UNICODE="no" in, and re-emerge (or wait until your next baselayout update) with the   USE flag. You can set  just for, or you can set it globally for all packages by adding it to your USE variable in.

Si está actualizando a un perfil 2007.0 en la arquitectura Sparc, necesitará seguir la Guía de actualización de GCC, puesto que  es el compilador predeterminado.

Por último, siga las instrucciones generales de para actualizar su perfil.

Actualizar a 2006.0
Para cambiar al perfil 2006.0, apunte el enlace simbólico a la nueva ubicación. Asegúrese de que Portage está actualizado antes de cambiar su perfil.

- Users that use a 2.4 kernel or don't want to use NPTL should use the default-linux/alpha/no-nptl profile. More information is available in the alpha release notes.

- The merge of the ppc32 and ppc64 profiles went forward. The ppc32 profile has been changed in a way that offers a minimalistic generic profile for all purposes, located in default-linux/ppc/ppc32. The release-dependent profile is optimized for desktop-usage and located in default-linux/ppc/ppc32/2006.0. There are some subprofiles available for G3 and G4 processors, and G3/Pegasos and G4/Pegasos for the Pegasos Open Desktop Workstation. Make sure you choose the correct subprofile for your system when migrating to a 2006.0 profile.

- Upgrading to the 2.4 -kernel based 2006.0/2.4 profile requires manual user intervention (unmerging java stuff) and an because of the gcc upgrade. Upgrading to the 2.6 -kernel based 2006.0 profile which is not considered stable also requires an entry in to unmask a 2.6 version of  and a full rebuild.

Resto de arquitecturas - No hay cambios importantes en este perfil. No es necesaria ninguna acción especial para realizar el cambio.

Actualizar a 2005.1
Para cambiar al perfil 2005.1, apunte el enlace simbólico a la nueva ubicación. Asegúrese de que su Portage está actualizado antes de cambiar su perfil.

Todas las arquitecturas -No hay cambios esenciales en este perfil. No se necesitan realizar acciones específicas.

- With the 2005.1 release, the ppc and ppc64 profiles were merged and a number of subprofiles for specific subarchitectures were created. Make sure you choose the correct subprofile for your system when migrating to a 2005.1 profile.

Actualizar a 2005.0
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.

Para cambiar al perfil seleccionado, apunte el enlace simbólico a la nueva ubicación. ¡Asegúrese de que Portage está actualizado antes de cambiar su perfil!

Si está corriendo un sistema basado en Linux 2.4 pero quiere migrar a un núcleo basado en 2.6, asegúrese de leer nuestra Guía de migración a Linux 2.6.

Actualizar a 2004.3
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 antiguos para acelerar la adopción de los perfiles apilados, que no son más que los perfiles que siguen la nueva distribución del directorio, por ejemplo (soportado por Portage 2.0.51 y versiones posteriores).

Para cambiar al perfil 2004.3, apunte el enlace simbólico a la nueva ubicación:

All archs - As said above, there are no big changes introduced in this profile. However, it should be noted that and  are no longer considered system packages. This means that if you run, Portage will try to remove them from your system. If you need any of those packages, add them to after the profile switch, or manually emerge them.

- is now the default instead of  for newly installed machines. This has no effect on already installed machines, though.

Updating Portage to support cascading profiles
Aunque esta sección no parezca que se integre bien en esta guía de actualización, es muy 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 fallará.

To work around this problem, users can set a temporary symbolic link to the obsolete profile, allowing them to upgrade their Portage after which they can continue with the upgrade procedure set forth in this guide. Please substitute  with your respective architecture:

Actualizar a 2004.2
Para cambiar al perfil 2004.2, apunte el enlace simbólico a la nueva ubicación:

- This profile changes the default X11 implementation from (deprecated) to. This change only touches the default value, and is only relevant for those who have not installed an X server yet. If you already have one installed, then it will not affect you at all; you are free to switch from one X server to the other exactly as before.

- There are no fundamental changes from previous profiles, no specific action needs to be performed.

Actualizar a 2004.0
Para cambiar al perfil 2004.0, apunte el enlace simbólico a la nueva ubicación:

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 anteriores a éste
Las instrucciones para esta actualización son bastante enrevesadas, puede encontrarlas aquí.

La idea de la actualización
La idea del enfoque de esta actualización es que vamos a crear una jaula chroot intermedia de construcción en la que extraeremos un stage3 reciente. A continuación, utilizando las herramientas disponibles en la jaula del stage3, actualizaremos los paquetes del sistema vivo.

Preparar la jaula chroot intermedia para la construcción
En primer lugar creamos la localización de la jaula intermedia de construcción, digamos y extraemos un archivo stage3 reciente en ella.

A continuación creamos un punto de montaje dentro de este entorno chroot, en el cual montaremos el entorno vivo (antiguo) con la opción bind.

Ahora también se puede acceder al sistema vivo (antiguo) a través de. Esto nos permitirá acceder al sistema vivo (antiguo) y actualizar los paquetes incluso cuando están dentro de la jaula chroot intermedia de construcción.

Network, chroot and update
La nueva instalación necesita acceder a la red, por lo tanto, copie la información relacionada a través de la red:

Now chroot into the intermediate build location, and start updating vital packages on the live system, until the live system can be updated from within the live system (rather than through the intermediate build chroot).

Now start building packages onto the live system:

Keep this chrooted session open and try to update the live system. When failures occur, use this chrooted session to update packages using the build tools available in the intermediate build chroot (which includes recent, , etc.) Don't forget to prefix all commands with   within the chroot!