Manual de Gentoo Linux : Instalar Gentoo

From Gentoo Wiki
Jump to:navigation Jump to:search



Introducción

Bienvenido

¡Bienvenidos a Gentoo! Gentoo es un sistema operativo gratuito basado en Linux que se puede optimizar y personalizar automáticamente para casi cualquier aplicación o necesidad. Está construido sobre un ecosistema de software libre y no oculta a sus usuarios lo que hay bajo el capó.

Franqueza

Las principales herramientas de Gentoo están construidas a partir de lenguajes de programación simples. Portage, el sistema de mantenimiento de paquetes de Gentoo, está escrito en Python. Ebuilds, que proporcionan definiciones de paquetes para Portage están escritos en bash. Se anima a nuestros usuarios a revisar, modificar y mejorar el código fuente de todas las partes de Gentoo.

De forma predeterminada, los paquetes sólo se parchean cuando es necesario para corregir errores o proporcionar interoperabilidad dentro de Gentoo. Se instalan en el sistema compilando el código fuente proporcionado por proyectos externos en formato binario (aunque también se incluye soporte para paquetes binarios precompilados). La configuración de Gentoo se realiza a través de archivos de texto.

Por las razones anteriores y otras: la "franqueza" está incorporada como un "principio de diseño".

Elección

La "elección" es otro "principio de diseño" de Gentoo.

Al instalar Gentoo, la elección se ve claramente a lo largo del Manual. Los administradores del sistema pueden elegir entre dos sistemas de inicio totalmente compatibles (el propio OpenRC de Gentoo y el systemd de Freedesktop.org), la estructura de partición para los discos de almacenamiento, qué sistemas de archivos usar en el disco( s), un perfil del sistema de referencia, elimine o agregue funciones a nivel global (en todo el sistema) o específico de cada paquete a través de indicadores USE, cargador de arranque, utilidad de administración de red y mucho, mucho más.

Como filosofía de desarrollo, Los autores de Gentoo intentan evitar forzar a los usuarios a utilizar un perfil de sistema o entorno de escritorio específico. Si se ofrece algo en el ecosistema GNU/Linux, es probable que esté disponible en Gentoo. Si no, nos encantaría que lo estuviera. Para solicitudes de nuevos paquetes, presente una petición o cree su propio repositorio de ebuilds.

Potencia

Ser un sistema operativo basado en código fuente permite que Gentoo pueda ser portado a nuevos conjuntos de instrucciones de arquitectura de procesador y también permite que todos los paquetes instalados sean ajustados. Esta fortaleza hace emerger otro “principio de diseño” de Gentoo: la “potencia”.

Un administrador de sistemas que haya instalado y personalizado Gentoo con éxito habrá compilado un sistema operativo personalizado a partir del código fuente. Todo el sistema operativo se puede ajustar a nivel binario a través de los mecanismos incluidos en el archivo make.conf de Portage. Si así lo desea, se pueden realizar ajustes por paquete o por grupos de paquetes. De hecho, se pueden agregar o eliminar conjuntos completos de funciones utilizando indicadores USE.

Es muy importante que el lector del Manual comprenda que estos principios de diseño son los que hacen que Gentoo sea único. Con los principios de gran potencia, muchas opciones y franqueza extrema resaltados, se debe emplear rigor, reflexión e intencionalidad al usar Gentoo.

Cómo se estructura la instalación

La instalación de Gentoo puede verse como un procedimiento de diez pasos. Después de cada paso se alcanza cierto estado:

Paso Resultado
1 El usuario dispone de un entorno de trabajo listo para instalar Gentoo.
2 La conexión a Internet estará preparada para instalar Gentoo.
3 Los discos duros están inicializados para alojar la instalación Gentoo.
4 El entorno de instalación está preparado y el usuario puede entrar en una jaula chroot.
5 Los paquetes principales, que son los mismos en toda instalación Gentoo, están instalados.
6 El núcleo Linux está instalado.
7 Se crean la mayoría de los archivos de configuración del sistema.
8 Las herramientas del sistema necesarias están instaladas.
9 Se ha instalado y configurado el cargador de arranque apropiado.
10 El entorno Gentoo Linux recién instalado está preparado para ser explorado.

Siempre que se presenta cierta elección, se tratará de explicar en el manual los pros y los contras de cada opción. Aunque el texto continuará con una opción por defecto (Identificada con "Por defecto:" en el título). No crea que esta opción por defecto es la recomendada por Gentoo. Es, sin embargo y así lo creemos en Gentoo por la que la mayoría de los usuarios optará.

Algunas veces se puede seguir un paso opcional. Estos pasos están marcados como "Opcional: " y por tanto no son necesarios para instalar Gentoo. Sin embargo, algunos pasos opcionales dependen de una decisión tomada previamente. Le informaremos cuando se dé el caso, tanto cuando tome la decisión, como cuando se describa el paso opcional.

Opciones de instalación para Gentoo

Gentoo se puede instalar de formas muy diversas. Se puede descargar e instalar desde un medio de instalación oficial de Gentoo como nuestras imágenes ISO arrancables. Los medios se pueden instalar desde un dispositivo de almacenamiento USB o se pude acceder a ellos a través de un entorno arrancado desde red. Alternativamente, se puede instalar Gentoo desde medios no oficiales como una distribución ya instalada o un disco que no contenga Gentoo (por ejemplo Knoppix).

Este documento cubre la instalación utilizando un medio de instalación oficial de Gentoo o, en algunos casos, instalación por red.

Note
Para encontrar ayuda acerca de otros procedimientos de instalación, incluyendo el uso de medios arrancables ajenos a Gentoo, por favor, lea nuestra guía sobre métodos alternativos de instalación.

También ofrecemos un documento de consejos y trucos para instalar Gentoo que también puede ser de utilidad.

Problemas

Si encuentra algún problema durante la instalación (o con el documento de instalación), por favor, visite nuestro sistema de seguimiento de incidencias y compruebe si el problema es ya conocido. Si no lo es, por favor, cree un informe sobre él para que podamos echarle un vistazo. No tema a los desarrolladores a los que se les han asignado los informes de error, (normalmente) no se comen a nadie.

Aunque este documento es específico de la arquitectura puede contener referencias a otras arquitecturas ya que muchas partes del manual de Gentooo utilizan texto que es idéntico para todas las arquitecturas (con el fin de evitar la duplicación de esfuerzos). Estas referencias se conservan mínimamente para evitar confusiones.

Si hay alguna duda sobre si el problema es o no un problema del usuario (algún error cometido a pesar de haber leído la documentación cuidadosamente) o un problema de software (algún error que cometimos a pesar de haber probado la instalación/documentación cuidadosamente), todo el mundo es bienvenido a unirse al canal #gentoo (webchat) en irc.libera.chat. Por supuesto, cualquier otro es bienvenido también, ya que nuestro canal de chat cubre el amplio espectro de Gentoo.

Hablando de esto, si tiene cualquier pregunta adicional concerniente a Gentoo, eche un vistazo al artículo FAQ. También están disponibles las FAQs en los Foros de Gentoo.






Requisitos del hardware

Antes de continuar con el proceso de instalación, se deben cumplir los requisitos mínimos de hardware para instalar Gentoo exitosamente para la arquitectura del sistema .

Minimal CD LiveDVD
CPU
Memory
Disk space
Swap space

Medios de instalación de Gentoo Linux

Tip
Aunque se recomienda utilizar el medio de arranque oficial de Gentoo durante la instalación, es posible utilizar otros entornos de instalación. Sin embargo, no hay garantía de que contengan los componentes necesarios. Si se utiliza un entorno de instalación alternativo, vaya a Preparación de los discos.

El CD mínimalista de instalación

El CD de instalación mínima de Gentoo es una pequeña imagen de arranque: un entorno Gentoo autónomo. Esta imagen es mantenida por Desarrolladores Gentoo y está diseñada para permitir que cualquier usuario con conexión a Internet instale Gentoo. Durante el proceso de arranque, se detecta el hardware y se cargan automáticamente los controladores adecuados.

Las versiones de CD de instalación mínima se denominan con el formato: install-<arch>-minimal-<marca de tiempo de lanzamiento>.iso.

El LiveDVD ocasional de Gentoo

Ocasionalmente, se crea una imagen de DVD especial que se puede usar para instalar Gentoo. Las instrucciones de este capítulo se centran en el CD minimalista, por lo que las cosas pueden ser un poco diferentes al arrancar desde el LiveDVD. Sin embargo, el LiveDVD (o cualquier otro entorno oficial Gentoo Linux) admite la obtención de un indicador de root simplemente invocando sudo su - o sudo -i en una terminal.

Entonces, ¿Qué son los stages?

Un archivo de stage es un archivo que sirve como semilla para un entorno Gentoo.

Los archivos de stage 3 se pueden descargar desde releases//autobuilds/ en cualquiera de los mirrors oficiales de Gentoo. Las stages se actualizan con frecuencia y, por lo tanto, no se incluyen en las imágenes live oficiales.

Tip
Por ahora, los archivos stage se pueden ignorar. Se describirán con mayor detalle más adelante cuando sean necesarios
Note
Históricamente, el manual describía los pasos de instalación para archivos stage con versiones inferiores a 3. Estas stages contenían entornos inadecuados para instalaciones típicas y ya no están cubiertos en el manual.

Descargar

Obtener los medios

El medio de instalación predeterminado utilizado por Gentoo Linux son los CD de instalación mínima, que proporcionan un entorno Gentoo Linux muy pequeño y de arranque. Este entorno contiene las herramientas necesarias para instalar Gentoo. Las imágenes en sí se pueden descargar desde la página de descargas (recomendado) o navegando manualmente a la ubicación ISO en una de las muchas mirrors disponibles.

Navegando por los mirrors de Gentoo

Si descarga desde un mirroe, los CD de instalación mínima se pueden encontrar en:

  1. Conéctese al mirror, normalmente usando uno local que se encuentre en mirrors de fuentes de Gentoo.
  2. Navegue hasta el directorio releases/.
  3. Seleccione el directorio para la arquitectura adecuada (por ejemplo /).
  4. Seleccione el directorio autobuilds/.
  5. Para las arquitecturas amd64 and x86 seleccione, bien el directorio current-install-amd64-minimal/, bien el directorio current-install-x86-minimal/ (respectivamente). Para las demás arquitecturas, navegar al directorio current-iso/.
Note
Algunas arquitecturas como arm, mips y s390 no tendrán CDs mínimos de instalación. Por el momento El proyecto de ingeniería de liberaciones de Gentoo no ofrece el soporte para la construcción de ficheros .iso para estas arquitecturas.

Dentro de esta localización el fichero del medio de instalación es el que tiene el sufijo .iso. Por ejemplo, eche un vistazo a la siguiente lista:

CODE Ejemplo de listado de archivos descargables en releases/amd64/autobuilds/current-install-amd64-minimal/
[TXT]	install-amd64-minimal-20231112T170154Z.iso.asc	        2023-11-12 20:41        488
[TXT]	install-amd64-minimal-20231119T164701Z.iso.asc	        2023-11-19 18:41        488
[TXT]	install-amd64-minimal-20231126T163200Z.iso.asc	        2023-11-26 18:41        488
[TXT]	install-amd64-minimal-20231203T170204Z.iso.asc	        2023-12-03 18:41        488
[TXT]	install-amd64-minimal-20231210T170356Z.iso.asc	        2023-12-10 19:01        488
[TXT]	install-amd64-minimal-20231217T170203Z.iso.asc	        2023-12-17 20:01        488
[TXT]	install-amd64-minimal-20231224T164659Z.iso.asc	        2023-12-24 20:41        488
[TXT]	install-amd64-minimal-20231231T163203Z.iso.asc	        2023-12-31 19:01        488
[ ]     install-amd64-minimal-20240107T170309Z.iso              2024-01-07 20:42        466M
[ ]     install-amd64-minimal-20240107T170309Z.iso.CONTENTS.gz	2024-01-07 20:42        9.8K
[ ]     install-amd64-minimal-20240107T170309Z.iso.DIGESTS      2024-01-07 21:01        1.3K
[TXT]   install-amd64-minimal-20240107T170309Z.iso.asc	        2024-01-07 21:01        488
[ ]     install-amd64-minimal-20240107T170309Z.iso.sha256       2024-01-07 21:01        660
[TXT]	latest-install-amd64-minimal.txt                        2024-01-08 02:01        653

En el ejemplo anterior, el archivo install-amd64-minimal-20240107T170309Z.iso es el CD de instalación mínima. Pero como puede verse, también existen otros archivos relacionados:

  • Un archivo .CONTENTS.gz que es un archivo de texto comprimido con gz que enumera todos los archivos disponibles en el medio de instalación. Este archivo puede ser útil para verificar si un firmware o controladores específicos están disponibles en el medio de instalación antes de descargarlo.
  • Un archivo .DIGESTS que contiene el hash del propio archivo ISO, en varios formatos/algoritmos de hash. Este archivo se puede utilizar para verificar la integridad del archivo ISO.
  • Un archivo .asc que es una firma criptográfica del archivo ISO. Esto se puede utilizar para verificar la integridad y autenticidad de la imagen: que la descarga haya sido proporcionada por el equipo de ingeniería de lanzamientos de Gentoo, libre de manipulaciones.

Ignore por ahora los otros ficheros que aparecen en esta localización, éstos se usarán más adelante en la instalación. Descargue el fichero .iso y, si desea verificar la descarga, descargue también el fichero .iso.asc para el fichero .iso.

Tip
El archivo .DIGESTS solo es necesario si la firma en el archivo .iso.asc no está verificada.

Verificar los ficheros descargados

Note
Este paso es opcional y no es necesario para instalar Gentoo Linux. Sin embargo, se recomienda realizarlo y con él se asegura que el fichero que se ha descargado no está corrupto y que de hecho lo ha generado el equipo de Infraestructura de Gentoo.

El archivo .asc proporciona una firma criptográfica del ISO. Al validarlo, uno puede asegurarse de que el archivo de instalación lo proporciona el equipo de ingeniería de lanzamientos de Gentoo y está intacto y sin modificaciones.

Verificación basada en Microsoft Windows

En primer lugar, para verificar la firma criptográfica, se pueden utilizar herramientas como GPG4Win. Después de la instalación se necesita importar las claves públicas del equipo de Ingeniería de Lanzamientos de Gentoo. La lista de claves está disponible en la página de firmas. Una vez importadas, el usuario puede verificar la firma en el fichero .asc.

Verificación en sistemas basados en Linux

En un sistema Linux, el método más común para verificar la firma criptográfica es el uso del software app-crypt/gnupg. Con este paquete instalado, se pueden utilizar la siguiente órden para verificar la firma criptográfica en el fichero .asc.

Tip
Al importar claves de Gentoo, verifique que la huella digital (BB572E0E2D182910) coincida.

Las claves de Gentoo se pueden descargar desde hkps://keys.gentoo.org usando las huellas digitales disponibles en la página de firmas:

user $gpg --keyserver hkps://keys.gentoo.org --recv-keys 13EBBDBEDE7A12775DFDB1BABB572E0E2D182910

Alternativamente, puede utilizar en su lugar el WKD para descargar la clave:

user $gpg --auto-key-locate=clear,nodefault,wkd --locate-key releng@gentoo.org
gpg: key 9E6438C817072058: public key "Gentoo Linux Release Engineering (Gentoo Linux Release Signing Key) <releng@gentoo.org>" imported
gpg: key BB572E0E2D182910: public key "Gentoo Linux Release Engineering (Automated Weekly Release Key) <releng@gentoo.org>" imported
gpg: Total number processed: 2
gpg:               imported: 2
gpg: no ultimately trusted keys found
pub   dsa1024 2004-07-20 [SC] [expires: 2025-07-01]
      D99EAC7379A850BCE47DA5F29E6438C817072058
uid           [ unknown] Gentoo Linux Release Engineering (Gentoo Linux Release Signing Key) <releng@gentoo.org>
sub   elg2048 2004-07-20 [E] [expires: 2025-07-01]

O si utiliza medios de lanzamiento oficiales de Gentoo, importe la clave desde /usr/share/openpgp-keys/gentoo-release.asc (proporcionada por sec-keys/openpgp-keys-gentoo-release):

user $gpg --import /usr/share/openpgp-keys/gentoo-release.asc
gpg: directory '/home/larry/.gnupg' created
gpg: keybox '/home/larry/.gnupg/pubring.kbx' created
gpg: key DB6B8C1F96D8BF6D: 2 signatures not checked due to missing keys
gpg: /home/larry/.gnupg/trustdb.gpg: trustdb created
gpg: key DB6B8C1F96D8BF6D: public key "Gentoo ebuild repository signing key (Automated Signing Key) <infrastructure@gentoo.org>" imported
gpg: key 9E6438C817072058: 3 signatures not checked due to missing keys
gpg: key 9E6438C817072058: public key "Gentoo Linux Release Engineering (Gentoo Linux Release Signing Key) <releng@gentoo.org>" imported
gpg: key BB572E0E2D182910: 1 signature not checked due to a missing key
gpg: key BB572E0E2D182910: public key "Gentoo Linux Release Engineering (Automated Weekly Release Key) <releng@gentoo.org>" imported
gpg: key A13D0EF1914E7A72: 1 signature not checked due to a missing key
gpg: key A13D0EF1914E7A72: public key "Gentoo repository mirrors (automated git signing key) <repomirrorci@gentoo.org>" imported
gpg: Total number processed: 4
gpg:               imported: 4
gpg: no ultimately trusted keys found

A continuación, verifique la firma criptográfica:

user $gpg --verify install--minimal-20141204.iso.DIGESTS.asc
gpg: Signature made Fri 05 Dec 2014 02:42:44 AM CET
gpg:                using RSA key 0xBB572E0E2D182910
gpg: Good signature from "Gentoo Linux Release Engineering (Automated Weekly Release Key) <releng@gentoo.org>" [unknown]
gpg: WARNING: This key is not certified with a trusted signature!
gpg:          There is no indication that the signature belongs to the owner.
Primary key fingerprint: 13EB BDBE DE7A 1277 5DFD  B1BA BB57 2E0E 2D18 2910

Para estar completamente seguro de que todo está en su sitio, verifique que la huella digital coincide con la huella digital que se muestra en la página de firmas.

Note
En general, es una buena práctica marcar una clave importada como confiable, una vez que esté seguro de que es confiable. Cuando se verifican las claves confiables, gpg no dirá "desconocido" ni advertirá sobre que la firma no es confiable.

Grabar el medio de arranque

Por supuesto, sólo con descargar un archivo ISO, no se puede iniciar la instalación de Gentoo Linux. El archivo ISO debe escribirse en un dispositivo de arranque. Esto generalmente requiere que la imagen se extraiga a un sistema de archivos o se escriba directamente en un dispositivo.

Escribir un USB de arranque

La mayoría de los sistemas modernos admiten el arranque desde un dispositivo USB.

Escribiendo con Linux

dd normalmente está disponible en la mayoría de las distribuciones de Linux y se puede usar para escribir el medio de arranque de Gentoo en una unidad USB.

Determinar la ruta del dispositivo USB

Antes de escribir, se debe determinar la ruta al dispositivo de almacenamiento deseado.

dmesg mostrará información detallada que describe el dispositivo de almacenamiento a medida que se agrega al sistema:

root #dmesg
[268385.319745] sd 19:0:0:0: [sdd] 60628992 512-byte logical blocks: (31.0 GB/28.9 GiB)

Alternativamente, se puede usar lsblk para mostrar los dispositivos de almacenamiento disponibles:

root #lsblk
sdd           8:48   1  28.9G  0 disk
├─sdd1        8:49   1   246K  0 part
├─sdd2        8:50   1   2.8M  0 part
├─sdd3        8:51   1 463.5M  0 part
└─sdd4        8:52   1   300K  0 part

Una vez que se ha determinado el nombre del dispositivo, se puede agregar al prefijo de ruta /dev/ para obtener la ruta del dispositivo /dev/sdd.

Tip
Se recomienda usar la ruta del dispositivo base, es decir sdd frente a sdd1, ya que el medio de arranque de Gentoo contiene un esquema de partición GPT completo.
Escribir con dd
Warning
Asegúrese de verificar la ruta de destino (of=target) antes de ejecutar dd, ya que se sobrescribirá.

Con la ruta del dispositivo (/dev/sdd) y el medio de arranque install-amd64-minimal-<marca de tiempo de lanzamiento>.iso listos:

root #dd if=install-amd64-minimal-<marca de tiempo de lanzamiento>.iso of=/dev/sdd bs=4096 status=progress && sync
Note
if= especifica el archivo de entrada, of= especifica el archivo de salida, que en este caso , es un dispositivo.
Tip
bs=4096 se utiliza ya que acelera las transferencias en la mayoría de los casos, status=progress muestra estadísticas de transferencia.

Grabar un disco

See also
Puede encontrar un conjunto de instrucciones más elaborado en CD/DVD/BD_writing#Image_writing.

Grabación con Microsoft Windows 7 y superior

Las versiones de Microsoft Windows 7 y superiores pueden montar y grabar imágenes ISO en medios ópticos sin el requisito de software de terceros. Simplemente inserte un disco grabable, busque los archivos ISO descargados, haga clic con el botón derecho en el archivo en el Explorador de Windows y seleccione "Grabar imagen de disco".

Grabar con Linux

La utilidad cdrecord del paquete app-cdr/cdrtools puede grabar imágenes ISO en Linux.

Para grabar el archivo ISO en el CD usando el dispositivo /dev/sr0 (este es el primer dispositivo de CD en el sistema, sustituir con el dispositivo apropiado si es necesario):

user $cdrecord dev=/dev/sr0 install--minimal-20141204.iso

Los usuarios que prefieran una interfaz gráfica de usuario puede utilizar K3B, parte del kde-apps/k3b. En K3B, vaya a Herramientas y utilice Grabar Imagen de CD.

Arrancar

Note
This is a placeholder for architecture-specific booting information

Configuración adicional del hardware

Cuando el medio de instalación arranca, trata de detectar todos los dispositivos hardware y carga los módulos del núcleo adecuados para dar soporte a ese hardware. En la gran mayoría de los casos, hace muy buen trabajo. Sin embargo, en algunos casos puede que no cargue automáticamente los módulos del núcleo necesitados por el sistema. Si la detección automática de PCI perdió algunos de los dispositivos hardware del sistema, se tendrán que cargar manualmente los módulos del núcleo adecuados.

En el siguiente ejemplo se carga el módulo 8139too (que soporta ciertos tipos de interfaces de red):

root #modprobe 8139too

Opcional: Cuentas de Usuario

Si otras personas necesitan tener acceso al entorno de la instalación, o se necesita lanzar órdenes como un usuario que no sea root en el medio de instalación (por ejemplo para chatear usando con irssi sin privilegios de root por razones de seguridad), entonces se necesita crear una cuenta de usuario y definir la contraseña de root para que sea robusta.

Para cambiar la contraseña de root, utilice la utilidad passwd:

root #passwd
Nueva contraseña: (Introduzca la nueva contraseña)
Vuelva a escribir la nueva contraseña: (Introduzca la contraseña)

Para crear una cuenta de usuario, en primer lugar introduzca las credenciales de la nueva cuenta seguidas de la contraseña. Las órdenes useradd y passwd se utilizan para esta tarea.

En el siguiente ejemplo, se crea un usuario llamado juan:

root #useradd -m -G users juan
root #passwd juan
Nueva contraseña: (Introduzca la contraseña de juan)
Vuelva a escribir la nueva contraseña: (Introduzca de nuevo la contraseña de juan)

Para cambiar del (actual) usuario root a la cuenta del usuario recién creado, utilice la orden su:

root #su - juan

Opcional: Ver la documentación mientras se realiza la instalación

TTYs

Para ver el manual de Gentoo desde un TTY durante la instalación, primero cree una cuenta de usuario como se describe arriba, luego presione Alt+F2 para ir a una nueva terminal (TTY) e inicie sesión como el usuario recién creado. Siguiendo el principio de privilegio mínimo, es una buena práctica evitar navegar por la web o, en general, realizar cualquier tarea con privilegios superiores a los necesarios. La cuenta root tiene control total del sistema y, por lo tanto, debe usarse con moderación.

Durante la instalación, se puede usar en navegador web links para navegar por el manual de Gentoo. Por supuesto, solo desde el momento en que se dispone de conexión a Internet.

user $links https://wiki.gentoo.org/wiki/Handbook:Parts/es

Para volver al terminal original, pulse Alt + F1.

Tip
Cuando se inicia en los entornos mínimos de Gentoo o de administración de Gentoo, estarán disponibles siete TTY. Se pueden cambiar presionando Alt y luego una tecla de función entre F1-F7. Puede resultar útil cambiar a una nueva terminal mientras se espera que se complete el trabajo, para abrir documentación, etc.

GNU Screen

La utilidad Screen se incluye por defecto en los medios de instalación oficiales de Gentoo. Puede ser más eficiente para los entusiastas más experimentados utilizar screen para ver las instrucciones de instalación utilizando varios paneles en lugar del método de tener múltiples TTYs mencionado arriba.

Opcional: Iniciar el demonio SSH

Para permitir que otros usuarios tengan acceso al sistema durante la instalación (tal vez para ofrecer ayuda durante la misma o incluso hacerlo de forma remota), se necesita crear una cuenta de usuario (como se documentó anteriormente) y se debe inicar el demonio SSH.

Para iniciar el demonio SSH en un inicio de OpenRC, lance la siguiente orden:

root #rc-service sshd start
Note
Si los usuarios inician sesión en el sistema, verán un mensaje de que la clave de host para este sistema debe ser confirmada (a través de lo que se denomina huella digital). Este comportamiento es típico y se puede esperar para las conexiones iniciales a un servidor SSH. Sin embargo, más adelante, cuando se configura el sistema y alguien inicia sesión en el sistema recién creado, el cliente SSH le advertirá que la clave de host ha sido cambiada. Esto se debe a que el usuario que ahora inicia sesión - para SSH - en un servidor diferente (es decir, el sistema Gentoo recién instalado en lugar del entorno vivo de la instalación está usando actualmente). Siga las instrucciones que aparecen en la pantalla y luego reemplace la clave de host en el sistema cliente.

Para poder utilizar sshd, la red debe funcionar correctamente. Continúe con el capítulo sobre Configuración de la red






Configuración automática de la red

¿Es posible que simplemente funcione?

Si el sistema está conectado a una red Ethernet con un enrutador IPv6 o un servidor DHCP, es muy probable que la red del sistema se haya configurado automáticamente. Si no se requiere una configuración avanzada adicional, se puede probar la conectividad a Internet.

Usar DHCP

DHCP (Protocolo de configuración dinámica de host) ayuda en la configuración de la red y puede proporcionar automáticamente la configuración para una variedad de parámetros que incluyen: dirección IP, máscara de red, rutas, servidores DNS, servidores NTP, etc.

DHCP requiere que un servidor se ejecute en el mismo segmento de "Capa 2" ("Ethernet") que el cliente que solicita una "concesión". DHCP se utiliza a menudo en redes RFC1918 ("privadas"), pero también se utiliza para adquirir información de IP pública de los ISP.

Tip
El medio de arranque oficial de Gentoo ejecuta dhcpcd automáticamente al inicio. Este comportamiento se puede desactivar agregando el argumento nodhcp al medio de arranque en la linea de comando del núcleo.

Si aún no se está ejecutando, dhcpcd se puede iniciar en enp1s0 con:

root #dhcpcd enp1s0

Algunos administradores de red requieren que el sistema utilice el nombre de host y el nombre de dominio proporcionados por el servidor DHCP. En ese caso, utilice:

root #dhcpcd -HD enp1s0

Para detener dhcpcd, se puede utilizar -x:

root #dhcpcd -x
sending signal Term to pid 10831
waiting for pid 10831 to exit
See also
Uso de Dhcpcd

Probar la red

Una ruta "predeterminada" correctamente configurada es un componente crítico de la conectividad a Internet; la configuración de la ruta se puede verificar con:

root #ip route
default via 192.168.0.1 dev enp1s0

Si no hay definida ninguna ruta "predeterminada", la conectividad a Internet no está disponible y se requiere configuración adicional.

La conectividad básica a Internet se puede confirmar con un ping:

root #ping -c 3 1.1.1.1
Tip
Es útil comenzar haciendo ping a una dirección IP conocida en lugar de a un nombre de host. Esto puede aislar los problemas de DNS de los problemas básicos de conectividad a Internet.

El acceso HTTPS saliente y la resolución DNS se pueden confirmar con:

root #curl --location gentoo.org --output /dev/null

A menos que curl informe un error u otras pruebas fallen, el proceso de instalación puede continuar con preparación del disco.

Si curl informa un error, pero los pings vinculados a Internet funcionan, DNS puede necesitar configuración.

Si no se ha establecido la conectividad a Internet, primero se debe verificar la información de la interfaz, luego:

Obtener información de la interfaz

Si la conexión en red no funciona de inmediato, se deben tomar medidas adicionales para habilitar la conectividad a Internet. Generalmente, el primer paso es enumerar las interfaces de red del host.

El comando ip, que forma parte del paquete sys-apps/iproute2, se puede utilizar para consultar y configurar las redes del sistema.

El argumento link se puede utilizar para mostrar enlaces de interfaz de red:

root #ip link
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
4: enp1s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
    link/ether e8:40:f2:ac:25:7a brd ff:ff:ff:ff:ff:ff

El argumento address se puede utilizar para consultar la información de la dirección del dispositivo:

root #ip address
2: enp1s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether e8:40:f2:ac:25:7a brd ff:ff:ff:ff:ff:ff
    inet 10.0.20.77/22 brd 10.0.23.255 scope global enp1s0
       valid_lft forever preferred_lft forever
    inet6 fe80::ea40:f2ff:feac:257a/64 scope link 
       valid_lft forever preferred_lft forever

El resultado de este comando contiene información para cada interfaz de red del sistema. Las entradas comienzan con el índice del dispositivo, seguido del nombre del dispositivo: enp1s0.

Tip
Si no se muestra ninguna interfaz aparte de lo (loopack), entonces el hardware de red está defectuoso o el controlador de la interfaz no se ha cargado en el kernel. Ambas situaciones van más allá del alcance de este Manual. Por favor solicite soporte en contacto #gentoo (webchat).

Para mantener la coherencia, el manual asumirá que la interfaz de red principal se llama enp1s0.

Note
Como resultado del cambio hacia nombres de interfaz de red predecibles, el nombre de la interfaz en el sistema puede ser bastante diferente a la antigua convención de nomenclatura eth0. Los medios de arranque modernos de Gentoo utilizan nombres de interfaz con prefijos como eno0, ens1 o enp5s0.

Opcional: configuración específica de la aplicación

Los siguientes métodos generalmente no son necesarios, pero pueden resultar útiles en situaciones en las que se requiere configuración adicional para la conectividad a Internet.

Opcional: Configurar proxys web

Si se accede a internet a través de un proxy web, será necesario definir la información del proxy para que Portage acceda correctamente al proxy para cada protocolo admitido. Portage observa las variables de entorno http_proxy, ftp_proxy y RSYNC_PROXY para descargar paquetes a través de su wget y rsync mecanismos de recuperación.

Ciertos navegadores web en modo texto, como links, también pueden utilizar variables de entorno que definen la configuración del proxy web; en particular para el acceso HTTPS, también será necesario definir la variable de entorno https_proxy. Si bien Portage se verá afectado sin pasar parámetros adicionales en tiempo de ejecución durante la invocación, links requerirá que se establezcan configuraciones de proxy.

En la mayoría de los casos, es suficiente definir variables de entorno utilizando el nombre de host del servidor. En el siguiente ejemplo, se supone que el host del servidor proxy se llama proxy.gentoo.org y el puerto es 8080.

Note
El símbolo # en los siguientes comandos es un comentario. Se ha agregado solo para mayor claridad y no es necesario escribirlo al ingresar los comandos.

Para definir un proxy HTTP (para tráfico HTTP y HTTPS):

root #export http_proxy="http://proxy.gentoo.org:8080" # Se aplica a Portage y a Links
root #export https_proxy="http://proxy.gentoo.org:8080" # Sólo aplica para Links

Si el proxy HTTP requiere autenticación, establezca un nombre de usuario y contraseña con la siguiente sintaxis:

root #export http_proxy="http://username:password@proxy.gentoo.org:8080" # Se aplica a Portage y a Links
root #export https_proxy="http://username:password@proxy.gentoo.org:8080" # Sólo aplica para Links

Inicie links usando los siguientes parámetros para soporte de proxy:

user $links -http-proxy ${http_proxy} -https-proxy ${https_proxy}

Para definir un proxy FTP para Portage y/o links:

root #export ftp_proxy="ftp://proxy.gentoo.org:8080" # Se aplica a Portage y a Links

Inicie links usando el siguiente parámetro para un proxy FTP:

user $links -ftp-proxy ${ftp_proxy}

Para definir un proxy RSYNC para Portage:

root #export RSYNC_PROXY="proxy.gentoo.org:8080" # Se aplica a Portage; Links no admite un proxy rsync

Usar pppoe-setup para ADSL

Si se requiere PPPoE para acceder a Internet, el medio de arranque de Gentoo incluye el script pppoe-setup para simplificar la configuración de ppp.

Durante la configuración, pppoe-setup solicitará:

  • El nombre de la interfaz Ethernet conectada al módem ADSL.
  • El nombre de usuario y contraseña de PPPoE.
  • IP del servidor DNS.
  • Si se necesita o no un firewall.
root #pppoe-setup
root #pppoe-start

En caso de error, se deben verificar las credenciales en /etc/ppp/pap-secrets o /etc/ppp/chap-secrets. Si las credenciales son correctas, se debe verificar la selección de la interfaz Ethernet para PPPoE.

Usar PPTP

Si se necesita compatibilidad con PPTP, se puede utilizar pptpclient, pero requiere configuración antes de su uso.

Edite /etc/ppp/pap-secrets o /etc/ppp/chap-secrets para que contenga la combinación correcta de nombre de usuario y contraseña:

root #nano /etc/ppp/chap-secrets

Ajuste ahora /etc/ppp/options.pptp si es necesario:

root #nano /etc/ppp/options.pptp

Una vez completada la configuración, ejecute pptp (junto con las opciones que no se pudieron configurar en options.pptp) para conectar el servidor:

root #pptp <server ipv4 address>

Configuración de WEP

Warning
No utilice WEP a menos que sea la única opción. WEP prácticamente no proporciona seguridad en una red abierta.
Important
El comando iw solo está disponible en las siguientes arquitecturas: amd64, x86, arm, arm64 , ppc, ppc64 y riscv.

Si está empleando una tarjeta inalámbrica (802.11), quizá necesite configurar sus opciones antes seguir. Para revisar la configuración inalámbrica actual de su tarjeta, puede utilizar iw. Al ejecutar iw se debería mostrar algo como esto:

root #iw dev wlp9s0 info
Interface wlp9s0
	ifindex 3
	wdev 0x1
	addr 00:00:00:00:00:00
	type managed
	wiphy 0
	channel 11 (2462 MHz), width: 20 MHz (no HT), center1: 2462 MHz
	txpower 30.00 dBm

Para comprobar la conexión actual:

root #iw dev wlp9s0 link
Not connected.

o

root #iw dev wlp9s0 link
Connected to 00:00:00:00:00:00 (on wlp9s0)
	SSID: GentooNode
	freq: 2462
	RX: 3279 bytes (25 packets)
	TX: 1049 bytes (7 packets)
	signal: -23 dBm
	tx bitrate: 1.0 MBit/s
Note
Algunas tarjetas inalámbricas pueden tener un nombre de dispositivo como wlan0 o ra0 en lugar de wlp9s0. Lanzar ip link para determinar el nombre correcto del dispositivo.

Para la mayoría de los usuarios, solo hay dos ajustes necesarios para conectarse, el ESSID (también conocido como nombre de red inalámbrica) y, opcionalmente, la clave WEP.

  • En primer lugar, asegurarse de que la interfaz está activa:
root #ip link set dev wlp9s0 up
  • Para conectar a una red abierta llamada NodoGentoo:
root #iw dev wlp9s0 connect -w NodoGentoo
  • Para conectar con una clave WEP hexadecimal, anteponer la clave con d::
root #iw dev wlp9s0 connect -w GentooNode key 0:d:1234123412341234abcd
  • Para conectar con una clave WEP ASCII:
root #iw dev wlp9s0 connect -w GentooNode key 0:alguna-contraseña
Note
Si la red inalámbrica está configurada para usar claves WPA o WPA2, tendrá que usar wpa_supplicant. Para más información acerca de la configuración de redes inalámbricas en Gentoo Linux, por favor lea el capítulo de redes inalámbricas del Manual Gentoo.

Puede volver a comprobar la configuración inalámbrica utilizando iw dev wlp9s0 link. Una vez que tenga la conexión funcionando, puede continuar configurando las opciones de red de nivel IP como se describe en la siguiente sección (Comprender la terminología de red) o utilizar la herramienta net-setup como se describió anteriormente.

Usar net-setup

En los casos en los que la configuración automática de la red no tiene éxito, el medio de arranque de Gentoo proporciona scripts para ayudar en la configuración de la red. net-setup se puede utilizar para configurar información de red inalámbrica e IP,s estáticas.

root #net-setup enp1s0

net-setup hará algunas preguntas sobre el entorno de red y utilizará esa información para configurar wpa_supplicant o direccionamiento estático.

Important
El estado de la red debe ser probado después de realizar cualquier paso de configuración. En caso de que los scripts de configuración no funcionen, se requiere configuración de red manual.

Conceptos básicos de Internet e IP

Si todo lo anterior falla, la red debe configurarse manualmente. Esto no es particularmente difícil, pero debe hacerse con reflexión. Esta sección sirve para aclarar la terminología y presentar a los usuarios conceptos básicos de redes relacionados con la configuración manual de una conexión a Internet.

Tip
Algunos CPE (Equipo proporcionado por el operador) combinan las funciones de un enrutador, punto de acceso, módem, servidor DHCP y servidor DNS en una sola unidad. Es importante diferenciar las funciones de un dispositivo del aparato físico.

Interfaces y direcciones

Las interfaces de red son representaciones lógicas de dispositivos de red. Una interfaz necesita una dirección para comunicarse con otros dispositivos en la red. Si bien sólo se requiere una única dirección, se pueden asignar varias direcciones a una única interfaz. Esto es especialmente útil para configuraciones de doble pila (IPv4 + IPv6).

Para mantener la coherencia, este manual asumirá que la interfaz enp1s0 utilizará la dirección 192.168.0.2.

Important
Las direcciones IP se pueden configurar arbitrariamente. En consecuencia, es posible que varios dispositivos utilicen la misma dirección IP, lo que genera un conflicto de direcciones. Los conflictos de direcciones se deben evitar utilizando DHCP o SLAAC.
Tip
IPv6 normalmente utiliza la configuración StateLess Address AutoConfiguration (SLAAC) para la configuración de direcciones. En la mayoría de los casos, configurar manualmente las direcciones IPv6 es una mala práctica. Si se prefiere un sufijo de dirección específico, se pueden usar tokens de identificación de interfaz.

Redes y CIDR

Una vez elegida una dirección, ¿cómo sabe un dispositivo cómo hablar con otros dispositivos?

Las direcciones IP están asociadas con redes. Las redes IP son rangos lógicos contiguos de direcciones.

La notación Enrutamiento entre dominios sin clases o CIDR se utiliza para distinguir los tamaños de red.

  • El valor CIDR, a menudo anotado comenzando con /, representa el tamaño de la red.
    • La fórmula 2 ^ (32 - CIDR) se puede utilizar para calcular el tamaño de la red.
    • Una vez calculado el tamaño de la red, el número de nodos utilizables se debe reducir en 2.
      • La primera IP de una red es la Dirección de red y la última suele ser la Dirección de difusión. Estas direcciones son especiales y no pueden ser utilizadas por hosts normales.
Tip
Los valores CIDR más comunes son /24 y /32, que representan 254 nodos y un solo nodo respectivamente.

Un CIDR de /24 es el tamaño de red predeterminado de-facto. Esto corresponde a una máscara de subred de 255.255.255.0, donde los últimos 8 bits están reservados para las direcciones IP de los nodos de una red.

La notación: 192.168.0.2/24 se puede interpretar como:

  • La dirección 192.168.0.2
  • En la red 192.168.0.0
  • Con un tamaño de 254 (2 ^ (32 - 24) - 2)
    • Las IP,s utilizables están en el rango 192.168.0.1 - 192.168.0.254
  • Con una dirección de difusión de 192.168.0.255
    • En la mayoría de los casos, la última dirección de una red se utiliza como "dirección de difusión", pero esto se puede cambiar.

Con esta configuración, un dispositivo debería poder comunicarse con cualquier host en la misma red (192.168.0.0).

Internet

Una vez que un dispositivo está en una red, ¿cómo sabe cómo hablar con dispositivos en Internet?

Para comunicarse con dispositivos fuera de las redes locales, se debe utilizar enrutamiento. Un enrutador es simplemente un dispositivo de red que reenvía tráfico a otros dispositivos. El término ruta predeterminada o puerta de enlace normalmente se refiere a cualquier dispositivo de la red actual que se utilice para el acceso a la red externa.

Tip
Es una práctica estándar hacer que la puerta de enlace sea la primera o la última IP de una red.

Si hay un enrutador conectado a Internet disponible en 192.168.0.1, se puede utilizar como ruta predeterminada, proporcionando acceso a Internet.

Para resumir:

  • Las interfaces deben configurarse con una dirección y una información de red, como el valor CIDR.
  • El acceso a la red local se utiliza para acceder a un enrutador en la misma red.
  • Se configura la ruta predeterminada, por lo que el tráfico destinado a redes externas se reenvía a la puerta de enlace, proporcionando acceso a Internet.

El Sistema de Nombres de Dominio

Recordar IP,s es difícil. El Sistema de Nombres de Dominio fue creado para permitir el mapeo entre Nombres de Dominio y direcciones IP.

Los sistemas Linux utilizan /etc/resolv.conf para definir servidores de nombres que se utilizarán para la resolución DNS.

Tip
Muchos enrutadores también pueden funcionar como servidores DNS, y el uso de un servidor DNS local puede aumentar la privacidad y acelerar las consultas mediante el almacenamiento en caché.

Muchos ISP ejecutan un servidor DNS que generalmente se anuncia en la puerta de enlace a través de DHCP. El uso de un servidor DNS local tiende a mejorar la latencia de las consultas, pero la mayoría de los servidores DNS públicos arrojarán los mismos resultados, por lo que el uso del servidor se basa en gran medida en las preferencias.

Configuración de red manual

Configuración de dirección de interfaz

Important
Al configurar manualmente las direcciones IP, se debe considerar la topología de la red local. Las direcciones IP se pueden configurar arbitrariamente; Los conflictos pueden causar interrupciones en la red.

Para configurar enp1s0 con la dirección 192.168.0.2 y CIDR /24:

root #ip address add 192.168.0.2/24 dev enp1s0
Tip
El inicio de este comando se puede acortar a ip a.

Configuración de ruta predeterminada

La configuración de la dirección y la información de red para una interfaz configurará rutas link, lo que permitirá la comunicación con ese segmento de red:

root #ip route
192.168.0.0/24 dev enp1s0 proto kernel scope link src 192.168.0.2
Tip
Este comando se puede abreviar a ip r.

La ruta default se puede configurar en 192.168.0.1 con:

root #ip route add default via 192.168.0.1

Configuración DNS

La información del servidor de nombres normalmente se adquiere mediante DHCP, pero se puede configurar manualmente agregando entradas nameserver a /etc/resolv.conf.

Warning
Si dhcpcd se está ejecutando, los cambios en Template:Ruta no se mantendrán. El estado se puede comprobar con ps x | grep dhcpcd.

nano está incluido en el medio de arranque de Gentoo y puede usarse para editar /etc/resolv.conf con:

root #nano /etc/resolv.conf

Las líneas que contienen la palabra clave nameserver seguida de la dirección IP del servidor DNS se consultan en orden de definición:

FILE /etc/resolv.confUsar Quad9 DNS.
nameserver 9.9.9.9
nameserver 149.112.112.112
FILE /etc/resolv.confUsar Cloudflare DNS.
nameserver 1.1.1.1
nameserver 1.0.0.1

El estado del DNS se puede verificar haciendo ping a un nombre de dominio:

root #ping -c 3 gentoo.org

Una vez que se haya verificado la conectividad [[Handbook:Parts/Instalación/Redes|]], continúe con Preparación de los discos.






Introducción a los dispositivos de bloque

Dispositivos de bloque

Examinaremos de forma detallada los aspectos de Gentoo Linux así como Linux en general que tengan que ver con discos, incluyendo dispositivos de bloques, particiones y sistemas de archivos de Linux. Una vez familiarizados con las entrañas de los discos y sistemas de archivos, podemos establecer las particiones y sistemas de archivos para la instalación.

Para empezar, veamos los dispositivos de bloque. Los discos SCSI y Serial ATA (SATA) aparecen ambos etiquetados entre los dispositivos gestionados como /dev/sda, /dev/sdb, /dev/sdc, etc. En los equipos mas modernos, los discos de estado sólido NVMe sobre PCI Express tienen nombres de dispositivo como /dev/nvme0n1, /dev/nvme0n2, etc..

La siguiente tabla ayudará a los lectores a saber dónde encontrar un tipo concreto de dispositivo de bloque en su sistema:

Tipo de dispositivo Nombre del dispositivo por defecto Notas y consideraciones
IDE, SATA, SAS, SCSI, o USB flash /dev/sda Se puede encontrar desde aproximadamente 2007 hasta la actualidad, es quizá el mas comunmente usado en Linux. Estos tipos de dispositivos pueden se conectados

via bus SATA, SCSI, USB como almacenamiento de bloque. Como ejemplo, la primera partición en el primer dispositivo SATA es nombrada /dev/sda1.

NVM Express (NVMe) /dev/nvme0n1 Lo último en tecnología de estado sólido, los discos NVMe son conectados al bus PCI Express y tienen la mejor velocidad de transferencia de bloques del mercado. Equipos desde alrededor de 2014 hasya la actualidad pueden tener soporte para el hardware NVMe. La primera partición en el primer dispositivo NVMe en nombrada /dev/nvme0n1p1.
MMC, eMMC, and SD /dev/mmcblk0 Los dispositivos embedded MMC, tarjetas SD, y otros tipos de tarjetas de memoria pueden ser útiles para el almacenamiento de datos. No obstante, es posible que muchos sistemas no permitan el arranque desde este tipo de dispositivos. Se segiere no usar estos dispositivos para instalaciones Linux activas; más bien considere usarlos para transferir archivos, que es la idea de diseño típica. Alternativamente, este tipo de almacenamiento podría resultar útil para copias de seguridad de archivos o instantáneas a corto plazo.

Los dispositivos de bloque mencionados anteriormente representan una interfaz abstracta de disco. Las aplicaciones pueden hacer uso de estas interfaces para interactúar con el disco duro de la máquina sin tener que saber el tipo de unidad que tiene: SATA, SCSI, o cualquier otra. La aplicación puede simplemente dirigirse al almacenamiento en el disco como a una serie de bloques contiguos de acceso aleatorio de 4096-bytes (4K).

Introduction to block devices

Block devices

Note
Placeholder for introduction to block devices specific to that architecture

Designing a partition scheme

Note
Placeholder for designing a partition scheme specific to that architecture

Crear los sistemas de archivos

Warning
Cuando utilice una unidad SSD o NVMe, es aconsejable comprobar si hay actualizaciones de firmware. Algunos SSD Intel en particular (600p y 6000p) requieren una actualización de firmware para posible corrupción de datos inducida por patrones de uso de E/S de XFS. El problema está en el nivel de firmware y no en ningún fallo del sistema de archivos XFS. La utilidad smartctl puede ayudar a verificar el modelo del dispositivo y la versión del firmware.

Introducción

Ahora que ya se han creado las particiones, es el momento de crear en ellas un sistema de archivos. En la próxima sección se describen los distintos sistemas de archivos soportados en Linux. Los lectores que ya sepan los sistemas de archivos que pueden usar deben ir a Aplicar un sistema de archivos a una partición. En caso contrario siga leyendo para conocer los sistemas de archivos disponibles...

Sistemas de archivos

Linux ofrece soporta para varias docenas de sistemas de archivos, aunque muchos de ellos se utilizan para desplegar situaciones específicas. Solo algunos de los sistemas de archivos estables se pueden encontrar en la arquitectura . Se recomienda leer acerca de los sistemas de archivos y el estado de soporte en el que se encuentran antes de seleccionar uno demasiado experimental para particiones importantes. XFS es el sistema de archivos recomendado para la mayoría de situaciones y plataformas. Abajo se muestra una lista que no es exhaustiva

btrfs
Sistema de archivos de nueva generación. Proporciona funciones avanzadas como instantáneas, autorreparación mediante sumas de comprobación, compresión transparente, subvolúmenes y RAID integrado. No se garantiza que los núcleos anteriores a 5.4.y sean seguros de usar con btrfs en producción porque las correcciones para problemas graves solo están presentes en las versiones más recientes de las ramas del núcleo LTS. RAID 5/6 y grupos de cuotas no son seguros en todas las versiones de btrfs.
ext4
Ext4 es un sistema de archivos confiable y multiuso para todas las plataformas, aunque carece de características modernas como reflinks.
f2fs
El sistema de archivos compatible con Flash fue creado originalmente por Samsung para su uso con memoria flash NAND. Es una opción decente al instalar Gentoo en tarjetas microSD, unidades USB u otros dispositivos de almacenamiento basados en flash.
XFS
Sistema de archivos con registro de metadatos que viene con un sólido conjunto de funciones y está optimizado para la escalabilidad. Se ha actualizado continuamente para incluir características modernas. El único inconveniente es que las particiones XFS aún no se pueden reducir, aunque se está trabajando en ello. Es notable que XFS admite enlaces de referencia y copia en escritura (CoW), lo cual es particularmente útil en sistemas Gentoo debido a la cantidad de compilaciones que completan los usuarios. XFS es el sistema de archivos moderno y multiuso recomendado para todas las plataformas. Requiere una partición de al menos 300 MB.
VFAT
También conocido como FAT32, es compatible con Linux pero no admite la configuración de permisos estándar de UNIX. Se utiliza principalmente para interoperabilidad/intercambio con otros sistemas operativos (Microsoft Windows o macOS de Apple), pero también es necesario para algunos firmware del gestor de arranque del sistema (como UEFI). Los usuarios de sistemas UEFI necesitarán una EFI System Partition formateada con VFAT para poder arrancar.
NTFS
Este sistema de archivos de "Nueva Tecnología" es el sistema de archivos insignia de Microsoft Windows desde Windows NT 3.1. De manera similar a VFAT, no almacena la configuración de permisos de UNIX ni los atributos extendidos necesarios para que BSD o Linux funcionen correctamente, por lo que no debe usarse como sistema de archivos raíz en la mayoría de los casos. Debe usarse "sólo" para interoperabilidad o intercambio de datos con sistemas Microsoft Windows (tenga en cuenta el énfasis en "sólo").

Puede encontrar información más extensa sobre los sistemas de archivos en el Filesystem Article mantenido por la comunidad.

Creación de un sistema de archivos en una partición

Note
Asegúrese de instalar el paquete de utilidades de espacio de usuario correspondiente para el sistema de archivos elegido antes de reiniciar. Habrá un recordatorio para hacerlo cerca del final del proceso de instalación.

Para crear un sistema de archivos en una partición o volumen, existen utilidades de espacio de usuario disponibles para todos los sistemas de archivos. Hacer clic en el nombre del sistema de archivos de la tabla de abajo para obtener información de cada sistema de archivos:

Sistema de archivos Comando de creación ¿Dentro del entorno live? Paquete
btrfs mkfs.btrfs Si sys-fs/btrfs-progs
ext4 mkfs.ext4 Si sys-fs/e2fsprogs
f2fs mkfs.f2fs Si sys-fs/f2fs-tools
xfs mkfs.xfs Si sys-fs/xfsprogs
vfat mkfs.vfat Si sys-fs/dosfstools
NTFS mkfs.ntfs Si sys-fs/ntfs3g
Important
El manual recomienda nuevas particiones como parte del proceso de instalación, pero es importante tener en cuenta que ejecutar cualquier comando mkfs borrará todos los datos contenidos en la partición. Cuando sea necesario, asegúrese de realizar una copia de seguridad adecuada de todos los datos que existan antes de crear algunos sistemas de archivos.

Por ejemplo, para tener la partición raíz () como como se usa en la estructura de partición de ejemplo, los siguientes comandos deberían ser usados:

root #mkfs.

Sistema de archivos de partición del sistema EFI

La partición del sistema EFI () debe estar formateada como FAT32:

root #mkfs.vfat -F 32

Sistema de archivos de partición de arranque BIOS heredado

Los sistemas que arrancan a través de BIOS heredado con una etiqueta de disco MBR/DOS pueden usar cualquier formato de sistema de archivos admitido por el gestor de arranque.

Por ejemplo, para formatear con XFS:

root #mkfs.xfs

Particiones ext4 pequeñas

Cuando se utiliza el sistema de archivos ext4 en una partición pequeña (menos de 8 GiB), el sistema de archivos debe crearse con las opciones adecuadas para reservar suficientes inodos. Esto se puede especificar usando la opción -T small:

root #mkfs.ext4 -T small /dev/<device>

Hacerlo cuadruplicará el número de inodos para un sistema de archivos determinado, ya que su "bytes por inodo" se reduce de uno cada 16 kB a uno cada 4 kB.

Activar la partición de intercambio

mkswap es la orden utilizada para inicializar particiones de intercambio:

root #mkswap

Para activar la partición, use swapon:

root #swapon

Este paso de 'activación' sólo es necesario porque la partición de intercambio se creó recientemente dentro del entorno live. Una vez que se haya reiniciado el sistema, siempre que la partición de intercambio esté definida correctamente dentro de fstab u otro mecanismo de montaje, el espacio de intercambio se activará automáticamente.

Montar la partición raíz

Note
Las instalaciones que se iniciaron anteriormente, pero que no finalizaron el proceso de instalación, pueden reanudar la instalación desde este punto del manual. Utilice este enlace como enlace permanente: Las instalaciones reanudadas comienzan aquí.

Es posible que a ciertos entornos live les falte el punto de montaje sugerido para la partición raíz de Gentoo (), o puntos de montaje para particiones adicionales creadas en la sección de particionamiento:

root #mkdir --parents

Solo para instalaciones con EFI, el ESP debe montarse en alguna ubicación de la partición raíz:

root #mkdir --parents

Continúe creando puntos de montaje adicionales necesarios para cualquier partición adicional (personalizada) creada durante los pasos anteriores utilizando el comando mkdir.

Una vez creados los puntos de montaje, es hora de hacer que las particiones sean accesibles mediante el comando mount.

Monte la partición raíz:

root #mount

Continúe montando particiones adicionales (personalizadas) según sea necesario usando el comando mount.

Note
Si necesita que su /tmp/ resida en una partición separada, asegúrese de cambiar los permisos después de montarla:
root #chmod 1777 /tmp
Lo mismo debe ser aplicado a /var/tmp.

Más adelante en las instrucciones, se montará el sistema de archivos proc (una interfaz virtual con el núcleo), así como otros pseudosistemas de archivos del núcleo. Pero primero se debe extraer el archivo de stage de Gentoo.






Elegir un empaquetado de stage

Tip
En las arquitecturas compatibles, se recomienda que los usuarios que se orientan a un entorno de sistema operativo de escritorio (gráfico) utilicen un archivo de stage con el término desktop dentro del nombre. Estos archivos incluyen paquetes como sys-devel/llvm y dev-lang/rust-bin y el ajuste del indicador USE que mejorará enormemente el tiempo de instalación.

El archivo de stage actúa como semilla de una instalación de Gentoo. Los archivos de stage son generados con Catalyst por el Equipo de Ingeniería de Lanzamiento. Los archivos de stage se basan en perfiles específicos y contienen un sistema casi completo.

Al elegir un archivo de stage, es importante elegir uno con perfiles correspondientes al tipo de sistema deseado.

Important
Si bien es posible realizar cambios importantes en el perfil después de que se haya establecido una instalación, el cambio requiere un considerable esfuerzo y consideraciones y está fuera del alcance de este manual de instalación. Cambiar los sistemas de inicio es difícil, pero cambiar de no-multilib a multilib requiere un amplio conocimiento de Gentoo y de la cadena de herramientas de bajo nivel.
Tip
La mayoría de los usuarios no deberían necesitar utilizar las opciones de archivos comprimidos 'avanzadas'; son para configuraciones de software o hardware atípicas o avanzadas.

OpenRC

OpenRC es un sistema de inicio basado en dependencias (responsable de iniciar los servicios del sistema una vez que se ha iniciado el núcleo) que mantiene compatibilidad con el programa de inicio proporcionado por el sistema, que normalmente se encuentra en /sbin/init. Es el sistema de inicialización nativo y original de Gentoo, pero también lo implementan algunas otras distribuciones de Linux y sistemas BSD.

OpenRC no funciona como reemplazo del archivo /sbin/init por defecto y es 100% compatible con los guiones de inicio de Gentoo. Esto significa que puede ser una solución para ejecutar las docenas de daemons en el repositorio de ebuilds de Gentoo.

systemd

systemd es un reemplazo moderno de init y rc de estilo SysV para sistemas Linux. La mayoría de las distribuciones Linux lo utilizan como sistema de inicio principal. systemd es totalmente compatible con Gentoo y funciona para el propósito previsto. Si aún le parece que falta algo en el Manual para ser una guia de instalación con systemd, revise el artículo de systemd antes de solicitar ayuda.

Multilibrería (32 y 64 bits)

Note
No todas las arquitecturas tienen una opción multilib. Muchas solo ejecutan código nativo. Multilib se aplica más comúnmente a amd64.

El perfil multilib utiliza bibliotecas de 64 bits cuando es posible y solo recurre a las versiones de 32 bits cuando es estrictamente necesario por motivos de compatibilidad. Esta es una excelente opción para la mayoría de instalaciones porque proporciona una gran flexibilidad para la personalización en el futuro.

Tip
El uso de multilib hace que sea más fácil cambiar de perfil más adelante, en comparación con no-multilib

No multilibrería (64 bits puros)

Warning
Los lectores que acaban de empezar con Gentoo no deben elegir un empaquetado sin multilib a menos que sea absolutamente necesario. Migrar de un sistema no-multilib a uno multilib requiere un conocimiento extremadamente bueno de Gentoo y de la cadena de herramientas de nivel inferior (incluso puede hacer que nuestros desarrolladores de la cadedena de herramientas se estremezcan un poco). No es para miedosos y está más allá del alcance de esta guía.

La selección de un archivo empaquetado no-multilib como base del sistema proporciona un entorno de sistema operativo completo de 64 bits - sin software de 32 bits. Esto efectivamente hace que la capacidad de cambiar a perfiles multilib sea engorrosa, aunque aún técnicamente posible.

Descargar el empaquetado de stage (tarball)

Ajustar la Fecha/Hora correcta

Los archivos de stage generalmente se obtienen mediante HTTPS, lo que requiere una relativa precisión en la hora del sistema. La desviación del reloj puede impedir que las descargas funcionen y puede causar errores impredecibles si la hora del sistema se ajusta en una cantidad considerable después de la instalación.

La fecha y hora actuales se pueden verificar con date:

root #date
Mon Oct  3 13:16:22 PDT 2021

Si la fecha/hora mostrada tiene más de unos pocos minutos de diferencia, debe actualizarse utilizando uno de los siguientes métodos.

Automático

Usar NTP para corregir la desviación del reloj suele ser más fácil y confiable que configurar manualmente el reloj del sistema.

chronyd, parte de net-misc/chrony, se puede utilizar para actualizar el reloj del sistema a UTC con:

root #chronyd -q
Important
Los sistemas sin un reloj en tiempo real (RTC) funcional deben sincronizar el reloj del sistema en cada inicio del sistema y, a partir de entonces, en intervalos regulares. Esto también es conveniente para sistemas con RTC, ya que la batería podría fallar y se puede acumular la desviación del reloj.
Warning
El tráfico NTP estándar en no autenticado, es importante verificar los datos de tiempo obtenidos de la red.

Manual

Cuando el acceso NTP no está disponible, se puede usar date para configurar manualmente el reloj del sistema.

Note
Se recomienda la hora UTC para todos los sistemas Linux. Posteriormente, se define una zona horaria del sistema, que cambia el desplazamiento cuando se muestra la fecha.

El siguiente formato de argumento se utiliza para establecer la hora: MMDDhhmmAAAA sintaxis ('Mes, Día, hora, 'minuto y Y Año).

Por ejemplo, para ajustar la fecha y hora a las 13:16 horas del 3 de octubre del 2021, ejecute:

root #date 100313162021

Antes de descargar el archivo de stage, el directorio actual debe configurarse en la ubicación del soporte utilizado para la instalación (muy probablemente /mnt/gentoo):

root #cd /mnt/gentoo

Navegadores gráficos

Los usuarios que utilicen entornos con navegadores web gráficos no tendrán problema en copiar el URL de un archivo de stage desde la sección de descargas del sitio web principal. Simplemente seleccione la pestaña apropiada, haga clic con el botón secundario del ratón en el archivo de stage, entonces Copiar la ruta del enlace para copiar el enlace al portapapeles, a continuación pegue el enlace para la utilidad wget en la línea de órdenes para descargar el archivo de stage:

root #wget <URL_DEL_ARCHIVO_DE_STAGE_PEGADA>

Navegadores en la línea de órdenes

Los usuarios de Gentoo más tradicionales o los 'históricos' que trabajen exclusivamente con la línea de órdenes puede que prefieran utilizar links (www-client/links), un navegador no gráfico dirigido por menús. Para descargar un stage, navegue a la lista de servidores réplica de Gentoo de esta forma:

root #links https://www.gentoo.org/downloads/mirrors/

Para usar un proxy HTTP con links, pase la URL con la opción -http-proxy:

root #links -http-proxy proxy.server.com:8080 https://www.gentoo.org/downloads/mirrors/

Junto a links existe también el navegador lynx (www-client/lynx). Al igual que links es un navegador de consola pero sin menús.

root #lynx https://www.gentoo.org/downloads/mirrors/

Si necesita pasar a través de un proxy, exporte las variables http_proxy y ftp_proxy:

root #export http_proxy="http://proxy.server.com:port"
root #export ftp_proxy="http://proxy.server.com:port"

Seleccione un servidor réplica cercano. Normalmente bastará con los servidores HTTP, sin embargo también están disponibles otros protocolos. Entre en el directorio releases//autobuilds/. En él deberían aparecer todos los archivos de stage disponibles (quizá almacenados en subdirectorios con el nombre de cada subarquitectura). Seleccione uno y pulse d para descargarlo.

Una vez haya finalizada la descarga del archivo de stage, es posible verificar la integridad y validar los contenidos del archivo de stage. Los interesados pueden ir a la siguiente sección.

Aquellos que no estén interesados en verificar y validar el archivo de stage pueden cerrar el navegador de línea de comandos presionando q e ir directamente a la sección Descomprimir el archivo de stage.

Verificar y validar

Note
La mayoría de los stages ahora tienen sufijo explícitamente con el tipo de sistema de inicio (openrc o systemd), aunque en algunas arquitecturas aún pueden faltar por ahora.

Al igual que con los CDs minimalistas de instalación, hay descargas disponibles para verificar y validar el archivo stage. Aunque estos pasos se pueden omitir, estos archivos se ofrecen a aquéllos usuarios que se preocupan por la integridad del archivo o archivos que se acaban de descargar. Los archivos adicionales están disponibles en la raíz del directorio mirrors. Busque la ubicación adecuada para la arquitectura del hardware y el perfil del sistema y descargue los archivos asociados .CONTENTS.gz, .DIGESTS y .sha256.

root #wget https://distfiles.gentoo.org/releases/
  • .CONTENTS.gz: un archivo comprimido que contiene una lista de todos los archivos dentro del archivo de stage.
  • .DIGESTS: contiene sumas de comprobación del archivo de stage utilizando varios algoritmos hash criptográficos.
  • .sha256: contiene una suma de comprobación SHA256 firmada con PGP del archivo de stage. Es posible que este archivo no esté disponible para descargar para todos los archivos de stage.

Se pueden utilizar herramientas y utilidades criptográficas como openssl, sha256sum o sha512sum para comparar la salida con las sumas de verificación proporcionadas en el archivo .DIGESTS.

Para verificar la suma de comprobación SHA512 con openssl:

root #openssl dgst -r -sha512 stage3--<release>-<init>.tar.xz

dgst indica al comando openssl que utilice el subcomando Message Digest, -r imprime el resultado del resumen en formato coreutils y -sha512 selecciona el resumen SHA512.

Para verificar la suma de comprobación BLAKE2B512 con openssl:

root #openssl dgst -r -blake2b512 stage3--<release>-<init>.tar.xz

Compare las salidas de los comandos de suma de comprobación con los valores correspondientes de hash y nombre de archivo contenidos en el archivo .DIGESTS. Los valores correspondientes deben coincidir con el resultado de los comandos de suma de comprobación; de lo contrario, el archivo descargado está dañado y debe descartarse y volverse a descargar.

Para verificar el hash SHA256 de un archivo .sha256 asociado usando la utilidad sha256sum:

root #sha256sum --check stage3--<release>-<init>.tar.xz.sha256

La opción --check indica a sha256sum que lea una lista de archivos esperados y hashes asociados, y luego imprima un "OK" asociado para cada archivo que se calcule correctamente o un "FAILED" para archivos en los que no ocurra.

Al igual que con el archivo ISO, la firma criptográfica del archivo tar.xz se puede verificar usando gpg para garantizar que no se haya realizado ninguna manipulación en el archivo empaquetado.

Para las imágenes live oficiales de Gentoo, el paquete sec-keys/openpgp-keys-gentoo-release proporciona claves de firma PGP para lanzamientos automatizados. Las claves primero deben importarse a la sesión del usuario para poder utilizarlas para la verificación:

root #gpg --import /usr/share/openpgp-keys/gentoo-release.asc

Para todas las imágenes live no oficiales que ofrecen gpg y wget en el entorno live, se puede recuperar e importar un paquete que contiene claves de Gentoo:

root #wget -O - https://qa-reports.gentoo.org/output/service-keys.gpg | gpg --import

Verifique la firma del empaquetado y, opcionalmente, los archivos de suma de comprobación asociados:

root #gpg --verify stage3--<release>-<init>.tar.xz.asc
root #gpg --verify stage3--<release>-<init>.tar.xz.DIGEST
root #gpg --verify stage3--<release>-<init>.tar.xz.sha256

Si la verificación tiene éxito, aparecerá "Good signature from" en la salida de los comandos anteriores.

Las huellas digitales de las claves OpenPGP utilizadas para firmar los medios de lanzamiento se pueden encontrar en la página de firmas de medios de lanzamiento.

Instalar un archivo de stage

Una vez que el archivo stage se haya descargado y verificado, se puede extraer usando tar:

root #tar xpvf --xattrs-include='*.*' --numeric-owner

Antes de extraer verifique las opciones:

  • x extract, indica a tar que extraiga el contenido del archivo.
  • p preservar permisos.
  • v salida v'erbose.
  • f file, proporciona a tar el nombre del archivo de entrada.
  • --xattrs-include='*.*' Conserva los atributos extendidos en todos los espacios de nombres almacenados en el archivo.
  • --numeric-owner Asegúrese de que los ID de usuario y grupo de los archivos que se extraen del empaquetado sigan siendo los mismos que pretendía el equipo de ingeniería de lanzamiento de Gentoo (incluso si los usuarios aventureros no están usando entornos live oficiales de Gentoo para el proceso de instalación).

Ahora que el archivo stage está desempaquetado, continúe con Configurara las opciones de compilación.

Configurar las opciones de compilación

Introducción

Para optimizar el sistema, es posible establecer variables que afecten al comportamiento de Portage, el administrador de paquetes con soporte oficial de Gentoo. Todas esas variables se pueden configurar como variables de entorno (usando export), pero la configuración a través de export no es permanente.

Note
Técnicamente, las variables se pueden exportar a través del perfil del shell o archivos rc, sin embargo, esa no es la mejor manera para la administración básica del sistema.

Portage lee el archivo make.conf cuando se ejecuta, lo que cambiará su comportamiento durante su ejecución dependiendo de los valores guardados en el archivo. make.conf puede considerarse el archivo de configuración principal de Portage, así que trate su contenido con cuidado.

Tip
Puede encontrar una lista comentada de todas las variables posibles en /mnt/gentoo/usr/share/portage/config/make.conf.example. Se puede encontrar documentación adicional sobre make.conf ejecutando man 5 make.conf.

Para una instalación exitosa de Gentoo, solo se deben configurar las variables que se mencionan a continuación.

Use su editor favorito (en esta guía usaremos nano) para modificar las variables de optimización que discutiremos en adelante.

root #nano /mnt/gentoo/etc/portage/make.conf

Observando el archivo make.conf.example es obvio cual es su estructura: las líneas que son comentarios comienzan con #, el resto definen variables usando la sintaxis VARIABLE="valor". Varias de estas variables se discuten a continuación.

CFLAGS y CXXFLAGS

Las variables CFLAGS y CXXFLAGS definen los parámetros de optimización para los compiladores GCC de C y de C++ respectivamente. Aunque generalmente se definen aquí, obtendrá el máximo rendimiento si optimiza estos parámetros para cada programa por separado. La razón es que cada programa es diferente. Sin embargo, no es manejable definir estos indicadores en el archivo make.conf.

En make.conf deberá definir los parámetros de optimización que se ajusten a su sistema de forma general. No coloque parámetros experimentales en esta variable; un nivel demasiado alto de optimización puede hacer que los programas funcionen mal (cuelgues, o incluso peor, funcionamientos erróneos).

No explicaremos todas las opciones posibles de optimización. Si quiere conocerlas todas, lea los Manuales en línea GNU o la página información de gcc (info gcc). El archivo make.conf.example también contiene una gran cantidad de ejemplos e información; no olvide leerlo también.

El primer parámetro es -march= o -mtune=, el cual especifica el nombre de la arquitectura destino. Las posibles opciones se describen en el archivo make.conf.example (como comentarios). Un valor frecuentemente utilizado es native ya que indica al compilador que seleccione la arquitectura destino del sistema actual (en el que se está realizando la instalación).

Seguida de esta, está el parámetro -O (que es una O mayúscula, no un cero), que especifica la clase optimización de gcc. Las clases posibles son s (para tamaño optimizado), 0 (cero - para no optimizar), 1, 2 o incluso 3 para la optimización de velocidad (cada clase tiene los mismos parámetros que la anterior, más algunos extras). -O2 es la recomendación por defecto. Es conocido que -O3 provoca problemas cuando se utiliza globalmente en el sistema, por esto se recomienda quedarse con -O2.

Otros parámetros de optimización bastante populares son los -pipe (usar tuberías en lugar de archivos temporales para la comunicación entre las diferentes etapas de compilación). No tiene ningún impacto sobre le código generado, pero usa más memoria. En sistemas con poca memoria, el proceso del compilador podría ser terminado. En ese caso, no use este parámetro.

Usar -fomit-frame-pointer (el cual no mantiene el puntero de marco en un registro para aquellas funciones que no lo necesiten) podría tener graves repercusiones en la depuración de errores en aplicaciones.

Cuando defina las variables CFLAGS y CXXFLAGS, debería combinar varios parámetros de optimización en una sóla cadena. Los valores por defecto que trae el archivo de stage deberían ser suficientemente buenos. Lo siguiente es simplemente un ejemplo:

CODE Ejemplo de CFLAGS y CXXFLAGS variables
# Configuraciones del compilador a aplicar en cualquier lenguaje
COMMON_CFLAGS=""
# Use los mismos valores en ambas variables
CFLAGS="${COMMON_FLAGS}"
CXXFLAGS="${CFLAGS}"
Tip
A pesar de que el artículo sobre la optimización de GCC contiene más información sobre cómo las distintas opciones de compilación pueden afectar a un sistema, el artículo sobre CFLAGS seguras puede resultar más práctico para los que se inician en la optimización de su sistema.

MAKEOPTS

La variable MAKEOPTS define cuántas compilaciones paralelas deben ocurrir al instalar un paquete. A partir de la versión 3.0.31 de Portage[1], si no se define, el comportamiento predeterminado de Portage es establecer el valor de trabajos en MAKEOPTS al mismo número de hilos de procesamiento devueltos por nproc.

Además, a partir de Portage 3.0.53[2], si no se define, el comportamiento predeterminado de Portage es establecer el valor promedio de carga en < var>MAKEOPTS al mismo número de hilos de procesamiento devueltos por nproc.

Una buena opción es el menor de: el número de hilos de procesamiento que tiene la CPU o la cantidad total de RAM del sistema dividida por 2 GiB.

Warning
El uso de una gran cantidad de trabajos puede afectar significativamente el consumo de memoria. Una buena recomendación es tener al menos 2 GiB de RAM para cada trabajo especificado (por ejemplo, -j6 requiere al menos 12 GiB). Para evitar quedarse sin memoria, reduzca el número de trabajos para que se ajusten a la memoria disponible.
Tip
Cuando se utilizan emerges en paralelo (--jobs), la cantidad efectiva de trabajos ejecutados puede crecer exponencialmente (hasta hacer que los trabajos se multipliquen por los trabajos de los emerges). Esto se puede solucionar ejecutando una configuración distcc solo para localhost que limitará el número de instancias del compilador por host.
FILE /etc/portage/make.confEjemplo de declaracion de MAKEOPTS
# Si no se define, el comportamiento predeterminado de Portage es:
# - establece el valor de los trabajos MAKEOPTS en el mismo número de hilos de procesamiento devueltos por `nproc`
# - establece el valor promedio de carga MAKEOPTS en el mismo número de hilos de procesamiento devueltos por `nproc`
# Reemplace '4' según corresponda para el sistema (mínimo (RAM/2 GB, subprocesos)), o déjela sin configurar.
MAKEOPTS="-j4 -l4"

Busque MAKEOPTS en man 5 make.conf para obtener más detalles.

Preparados, listos, ¡ya!

Actualice /mnt/gentoo/etc/portage/make.conf con sus propios parámetros y guarde los cambios (los usuarios de nano deben presionar usar Ctrl+o para guardar los cambios y después Ctrl+x para salir).

Referencias






Enjaulamiento

Copiar la información DNS

Aún queda una cosa que hacer antes de entrar en el nuevo entorno, copiar la información sobre los DNS en /etc/resolv.conf. Necesita hacer esto para asegurarse de que la red continúe funcionando después de entrar en el nuevo entorno. /etc/resolv.conf contiene los servidores de nombres para su red.

Para copiar esta información, se recomienda pasar la opción --dereference en la orden cp.Esto asegura que, si /etc/resolv.conf es un enlace simbólico, se copia el archivo al que apunta el enlace y no el propio enlace. En caso contrario, en el nuevo entorno, el enlace simbólico podría apuntar a un archivo inexistente (ya que lo mas probable es que los archivos apuntados no estén disponible dentro del nuevo entorno).

root #cp --dereference /etc/resolv.conf /etc/

Montar los sistemas de archivos necesarios

En unos momentos, la raíz de Linux se cambiará a la nueva ubicación.

Los sistemas de archivos que deben estar disponibles son:

  • /proc/ es un pseudosistema de archivos. Parecen archivos normales, pero el kernel de Linux los genera sobre la marcha.
  • /sys/ es un pseudosistema de archivos, como /proc/ que alguna vez estuvo destinado a reemplazarlo, y está más estructurado que /proc/
  • /dev/ es un sistema de archivos normal que contiene todos los dispositivos. Está parcialmente administrado por el administrador de dispositivos de Linux (generalmente udev)
  • /run/ es un sistema de archivos temporal utilizado para archivos generados en tiempo de ejecución, como archivos PID o bloqueos.

La ubicación /proc/ se montará en /mnt/gentoo/proc/ mientras que los otros serán montados mediante enlace. Esto último quiere decir que, por ejemplo, /mnt/gentoo/sys/ será realmente el actual /sys/ (será sólo un segundo punto de entrada al mismo sistema de archivos) mientras que /mnt/gentoo/proc/ es un nuevo montaje (instancia por así decirlo) del sistema de archivos.

Tip
Si utiliza el medio de instalación de Gentoo, este paso se puede reemplazar con simplemente: arch-chroot /mnt/gentoo.
root #mount --types proc /proc /mnt/gentoo/proc
root #mount --rbind /sys /mnt/gentoo/sys
root #mount --make-rslave /mnt/gentoo/sys
root #mount --rbind /dev /mnt/gentoo/dev
root #mount --make-rslave /mnt/gentoo/dev
root #mount --bind /run /mnt/gentoo/run
root #mount --make-slave /mnt/gentoo/run
Note
Las operaciones --make-rslave son necesarias para dar soporte a systemd mas adelante en la instalación.
Warning
Cuando se utilicen medios de instalación que no sean de Gentoo, podría no ser suficiente. Algunas distribuciones crean el enlace simbólico /dev/shm a /run/shm/ el cual ya no será válido después del chroot. Hacer que /dev/shm/ sea un apropiado montaje tmpfs puede resolver este problema:
root #test -L /dev/shm && rm /dev/shm && mkdir /dev/shm
root #mount --types tmpfs --options nosuid,nodev,noexec shm /dev/shm

Asegúrese también de asignale permisos 1777:

root # chmod 1777 /dev/shm /run/shm

Entrar en el nuevo entorno

Ahora que todas las particiones están inicializadas y el sistema base instalado, es hora de entrar en el nuevo entorno de instalación haciendo chrooting en él. Esto significa que la sesión cambiará su raíz (la ubicación de mayor nivel que puede ser accedida) desde el entorno de instalación actual (CD de instalación u otro medio de instalación) hasta el sistema de instalación (es decir, las particiones inicializadas). De ahí el nombre, change root (cambiar raíz) o chroot.

El enjaulamiento (chroot) se hace en tres pasos:

  1. Se cambia la raíz desde / (en el medio de instalación) a /mnt/gentoo/ (en las particiones) utilizando chroot o arch-chroot, si está disponible.
  2. Se cargan en memoria algunas definiciones (ofrecidas por /etc/profile) mediante la orden source.
  3. Se redefine el símbolo de espera de órdenes (prompt) primario que nos hará recordar que nos encontramos en un entorno enjaulado (chroot).
root #chroot /mnt/gentoo /bin/bash
root #source /etc/profile
root #export PS1="(chroot) ${PS1}"

Desde este momento, todas las acciones realizadas lo serán en el nuevo entorno Gentoo Linux.

Tip
Si la instalación de Gentoo se interrumpe en algún momento posterior, debería ser posible 'continuarla' desde este paso. ¡No es necesario particionar los discos otra vez! Simplemente monte la partición raíz y siga los pasos anteriores comenzando desde copiar la información DNS hasta entrar en el nuevo entorno. Esto también se utiliza para arreglar problemas con el cargador de arranque. Mas información en el artículo chroot.

Preparándose para un gestor de arranque

Ahora que se ha entrado en el nuevo entorno, es necesario prepararlo para el gestor de arranque. Será importante tener montada la partición correcta cuando llegue el momento de instalar el gestor de arranque.

Sistemas UEFI

Para los sistemas UEFI, se formateó con el sistema de archivos FAT32 y se utilizará como partición del sistema EFI (ESP). Cree un nuevo directorio (si aún no se ha creado) y luego monte ESP allí:

root #mkdir # Puede haber sido creado en un paso anterior.
root #mount

Sistemas DOS/Legacy BIOS

Para sistemas DOS/BIOS heredado, el gestor de arranque se instalará en el directorio , por lo tanto, móntelo de la siguiente manera:

root #mount

Configurar Portage

Repositorio de ebuilds de Gentoo

Un segundo paso importante en la selección de servidores replica consiste en configurar el repositorio de ebuilds de Gentoo a través del archivo /etc/portage/repos.conf/gentoo.conf. Este archivo contiene la información de sincronización necesaria para actualizar el repositorio de paquetes (la colección de ebuilds y archivos relacionados que contienen toda la información que Portage necesita para descargar e instalar paquetes de software).

La configuración del repositorio se puede hacer en unos sencillos pasos. Primero, si no existe, cree el directorio repos.conf:

root #mkdir --parents /etc/portage/repos.conf

Luego, copie el archivo de configuración del repositorio de Gentoo proporcionado por Portage al directorio (recien creado) repos.conf:

root #cp /usr/share/portage/config/repos.conf /etc/portage/repos.conf/gentoo.conf

Visualícelo con un editor de texto o usando la orden cat. El contenido del archivo debe estar en formato .ini y tener este aspecto:

FILE /mnt/gentoo/etc/portage/repos.conf/gentoo.conf
[DEFAULT]
main-repo = gentoo
 
[gentoo]
location = /var/db/repos/gentoo
sync-type = rsync
sync-uri = rsync://rsync.gentoo.org/gentoo-portage
auto-sync = yes
sync-rsync-verify-jobs = 1
sync-rsync-verify-metamanifest = yes
sync-rsync-verify-max-age = 24
sync-openpgp-key-path = /usr/share/openpgp-keys/gentoo-release.asc
sync-openpgp-key-refresh-retry-count = 40
sync-openpgp-key-refresh-retry-overall-timeout = 1200
sync-openpgp-key-refresh-retry-delay-exp-base = 2
sync-openpgp-key-refresh-retry-delay-max = 60
sync-openpgp-key-refresh-retry-delay-mult = 4
sync-webrsync-verify-signature = yes
sync-git-verify-commit-signature = yes

El valor de la variable sync-uri predeterminado listado anteriormente determinará la ubicación del servidor mirror en función de una rotación. Esto ayudará a aliviar el estrés del ancho de banda en la infraestructura de Gentoo y proporcionará un sistema de seguridad en caso de que un mirror específico esté fuera de línea. Se recomienda conservar el URI predeterminado a menos que se utilice en su lugar un mirror local o privado.

Tip
La especificación para la API del complemento de sincronización de Portage se puede encontrar en la página del proyecto Portage Sync.

Instalar una instantánea de repositorio de ebuilds de Gentoo desde la web

El siguiente paso es instalar una instantánea del repositorio de ebuilds de Gentoo. Esta instantánea contiene una colección de ficheros que informa a Portage sobre los títulos de software disponibles (para su instalación), qué perfiles puede seleccionar el administrador del sistema, artículos de noticias específicas de paquetes o perfiles, etc.

Se recomienda utilizar emerge-webrsync para aquéllos que se encuentren detrás de cortafuegos restrictivos (utiliza los protocolos HTTP/FTP para descargar la instantánea) y ahorra ancho de banda de red. Los lectores que no tengan limitaciones en el ancho de banda pueden saltar a la siguiente sección.

Esto recuperará la última instantánea (que se libera todo los días) desde uno de los servidores réplica de Gentoo e instalarla en el sistema:

root #emerge-webrsync
Note
Durante esta operación, emerge-webrsync podría indicar que la ubicación / no existe. Esto es normal y no debe preocupar - la herramienta creará la ubicación.

A partir de este punto Portage podría indicar que se recomienda realizar algunas actualizaciones. Esto es debido a que algunos paquetes de sistema que se han instalado mediante un archivo stage disponen de versiones más actuales y ahora Portage detecta los nuevos paquetes consultando la instantánea del repositorio. Por el momento se pueden ignorar las actualizaciones de los paquetes hasta que la instalación de Gentoo haya finalizado.


Opcional: Seleccionar los servidores réplica

Para descargar el código fuente rápidamente, se recomienda seleccionar un mirror rápido y geográficamente cercano. Portage buscará en el archivo make.conf la variable GENTOO_MIRRORS y utilizará los mirrors enumerados allí. Es posible navegar a la lista de réplicas de Gentoo y buscar una réplica (o varias réplicas) cerca de la ubicación física del sistema (ya que éstas suelen ser las más rápidas).

Una herramienta llamada mirrorselect proporciona una bonita interfaz de texto para consultar y seleccionar más rápidamente los mirrors adecuados. Simplemente navegue hasta los mirrors de su elección y presione Template:Tecla para seleccionar uno o más mirrors.

root #emerge --ask --verbose --oneshot app-portage/mirrorselect
root #mirrorselect -i -o >> /etc/portage/make.conf

Alternativamente, hay una lista de réplicas activas disponible en línea.

Opcional: Actualizar el repositorio de ebuilds de Gentoo

Puede actualizar el repositorio de ebuilds de Gentoo a la última versión. La orden emerge-webrsync anterior habrá instalado una instantanea muy reciente (normalmente inferior a 24 horas) de manera que claramente este paso es opcional.

Supongamos que es necesario disponer de las últimas actualizaciones de un paquete (hasta 1 hora), entonces utilice emerge --sync. Este comando utilizará el protocolo rsync para actualizar el repositorio ebuild de Gentoo (que se obtuvo anteriormente a través de emerge-webrsync) al estado más reciente.

root #emerge --sync

En terminales lentos, como ciertos frame buffers o consolas serie, se recomienda utilizar la opción --quiet para acelerar el proceso:

root #emerge --sync --quiet

Leer los elementos de noticias

Cuando se sincroniza el repositorio de ebuilds de Gentoo, Portage puede mostrar mensajes informativos de salida similares a los siguientes:

* IMPORTANT: 2 news items need reading for repository 'gentoo'.
* Use eselect news to read news items.

Los elementos de noticias se crearon para ofrecer un medio de comunicación en el que se incluyeran mensajes críticos a los usuarios a través del repositorio de ebuilds de Gentoo. Para gestionarlos necesitará utilizar eselect news. La aplicación eselect es una utilidad específica de Gentoo que presenta una interfaz de gestión común para la administración del sistema. En este caso se ha pedido a eselect que use el módulo news.

Para el módulo news hay tres operaciones que son las mas usadas:

  • Con list se muestra un sumario de las noticias disponibles
  • Con read se leen las noticas
  • Con purge se pueden eliminar noticias que una vez leidas ya no sea necesario volverlas a leer mas.
root #eselect news list
root #eselect news read

Se puede obtener más información sobre el lector de noticias en la página del manual:

root #man news.eselect

Elegir el perfil adecuado

Tip
Los perfiles de escritorio no son exclusivos para entornos de escritorio. También son adecuados para administradores de ventanas mínimos como i3 o sway.

Un perfil (profile) es uno de los bloques de construcción en cualquier sistema Gentoo. No solamente especifica unos valores predeterminados para USE, CFLAGS , y otras variables importantes, también bloquea sistema para ciertos rangos de versiones de algunos paquetes. Estas configuraciones son todas mantenidas por los desarrolladores de Portage de Gentoo.

Se puede ver el perfil que el sistema está utilizado actualmente con eselect, en este caso usando el módulo profile:

root #eselect profile list
Available profile symlink targets:
  [1]   default/linux// *
  [2]   default/linux///desktop
  [3]   default/linux///desktop/gnome
  [4]   default/linux///desktop/kde
Note
La salida de la orden anterior es solo un ejemplo y cambiará a lo largo del tiempo.
Note
Para usar systemd, seleccione un perfil que tenga "systemd" en el nombre y viceversa, si no

También hay subperfiles de escritorio disponibles para algunas arquitecturas que incluyen paquetes de software comúnmente necesarios para una experiencia de escritorio.

Warning
Las actualizaciones de perfil no deben tomarse a la ligera. Al seleccionar el perfil inicial, utilice el perfil correspondiente a la misma versión que el utilizado inicialmente por el archivo de stage (por ejemplo, ). Cada nueva versión del perfil se anuncia a través de una noticia que contiene instrucciones de migración; asegúrese de seguir cuidadosamente las instrucciones antes de cambiar a un perfil más nuevo.

Después de revisar los perfiles disponibles para la arquitectura , los usuarios pueden elegir usar un perfil diferente para el sistema:

root #eselect profile set 2
Note
This is a placeholder for architecture-specific profile information
Note
El subperfil developer es específico para desarrolladores de Gentoo Linux y no está dirigido a usuarios comunes.

Opcional: agregar un host de paquetes binarios

Desde diciembre de 2023, el equipo de Ingeniería de Lanzamiento de Gentoo ha ofrecido un host de paquetes binarios oficial (coloquialmente abreviado simplemente como "binhost") para que lo utilice la comunidad general para recuperar e instalar. paquetes binarios (binpkgs).[1]

Agregar un host de paquetes binarios permite a Portage instalar paquetes compilados y firmados criptográficamente. En muchos casos, agregar un host de paquetes binarios disminuirá "considerablemente" el tiempo medio para la instalación del paquete y agregará muchos beneficios cuando se ejecuta Gentoo en sistemas más antiguos, más lentos o con poca potencia.

Configuración del repositorio

La configuración del repositorio para un binhost se encuentra en el directorio /etc/portage/binrepos.conf/ de Portage, que funciona de manera similar a la configuración mencionada en la sección repositorio de ebuilds de Gentoo.

Al definir un host de binarios, hay dos aspectos importantes a considerar:

  1. La arquitectura y perfiles dentro del valor sync-uri importan y deben alinearse con la arquitectura de ordenadores respectiva ( en este caso) y el perfil del sistema seleccionado en la sección Elegir el perfil correcto.
  2. Seleccionar un mirror rápido y geográficamente cercano generalmente acortará el tiempo de recuperación. Revise la herramienta mirrorselect mencionada en la sección Opcional: Seleccionar mirrors o revise el lista en línea de mirrors donde se pueden descubrir los valores de URL.

FILE /etc/portage/binrepos.conf/gentoobinhost.confEjemplo de host de paquetes binarios basado en CDN
[binhost]
priority = 9999
sync-uri = https://distfiles.gentoo.org/releases/<arch>/binpackages/<profile>/x86-64/

Instalación de paquetes binarios

Portage compilará paquetes desde el código fuente de forma predeterminada. Se le puede indicar que utilice paquetes binarios de las siguientes maneras:

  1. La opción --getbinpkg se puede pasar al invocar el comando emerge. Este método de instalación de paquetes binarios es útil para instalar sólo un paquete binario en particular.
  2. Cambiar el valor predeterminado del sistema a través de la variable FEATURES de Portage, que se expone a través del archivo /etc/portage/make.conf. La aplicación de este cambio de configuración hará que Portage consulte al host del paquetes binarios los paquetes que se solicitarán y volverá a compilar localmente cuando no se encuentren resultados.

Por ejemplo, para que Portage instale siempre los paquetes binarios disponibles:

FILE /etc/portage/make.confConfigurar Portage para utilizar paquetes binarios de forma predeterminada
# Agregar getbinpkg a la lista de valores dentro de la variable FEATURES
FEATURES="${FEATURES} getbinpkg"
# Requerir firmas
FEATURES="${FEATURES} binpkg-request-signature"

Ejecute también getuto para que Portage configure el conjunto de claves necesario para la verificación:

root #getuto

Las funciones adicionales de Portage se analizarán en el siguiente capítulo del manual.

Opcional: configurar la variable USE

La variable USE es una de las más importantes que Gentoo proporciona a sus usuarios. Muchos programas se pueden compilar con o sin soporte opcional para ciertas cosas. Por ejemplo, algunos programas se pueden compilar con soporte para GTK+, o con soporte para QT. Otros programas se pueden compilar con o sin soporte SSL. Algunos programas incluso se pueden compilar con soporte framebuffer (svgalib) en lugar de soporte X11 (servidor X).

La mayoría de las distribuciones compilan sus paquetes con tanto soporte como sea posible, aumentando el tamaño de los programas y el tiempo de inicio, sin mencionar una enorme cantidad de dependencias. Con Gentoo, los usuarios pueden definir para qué opciones se debe compilar un paquete. Aquí es donde entra en juego USE.

En la variable USE se definen palabras clave que son transformadas en opciones de compilación. Por ejemplo ssl compilará los programas que lo requieran con soporte SSL.-X quitara el soporte para el servidor X (nótese el signo menos delante). gnome gtk -kde -qt5 compilará los programas con soporte para GNOME (y GTK), pero sin soporte para KDE (y Qt), haciendo su sistema completamente adaptado para GNOME (siempre que se use una arquitectura que lo soporte).

La configuración USE predeterminada se coloca en los archivos make.defaults del perfil de Gentoo utilizado por el sistema. Gentoo utiliza un complejo sistema de herencia para los perfiles del sistema, que no se tratará en profundidad durante el proceso de instalación. La forma más sencilla de comprobar la configuración USE actualmente activa es ejecutar emerge --info y seleccionar la línea que comienza con USE:

root #emerge --info | grep ^USE
USE="X acl alsa amd64 berkdb bindist bzip2 cli cracklib crypt cxx dri ..."
Note
El ejemplo anterior está truncado la lista actual de valores para USE es mucho mucho mas larga.

Puede encontrar una descripción completa sobre la variable USE en el propio sistema en /profiles/use.desc.

root #less /profiles/use.desc

Dentro de la orden less puede desplazarse arriba y abajo utilizando las teclas y y salir pulsando q.

Como ejemplo, se muestran algunas opciones USE para un sistema basado en KDE con DVD, ALSA y soporte para grabar CDs:

root #nano /etc/portage/make.conf
FILE /etc/portage/make.confConfigurar ajuste para KDE/Plasma con soporte para DVD, ALSA y grabación de CDs
USE="-gtk -gnome qt5 kde dvd alsa cdr"

Cuando se define un valor USE en /etc/portage/make.conf, se "agrega" a la lista de valores USE del sistema. Los valores USE se pueden eliminar globalmente agregando un signo menos - delante del valor en la lista. Por ejemplo, para deshabilitar la compatibilidad con entornos gráficos X, se puede configurar -X:

FILE /etc/portage/make.confIgnorar valores por defecto para USE
USE="-X acl alsa"
Warning
Aunque es posible, configurar -* (que deshabilitará todos los valores USE excepto los especificados en make.conf) está "firmemente" desaconsejado y es imprudente. Los desarrolladores de ebuilds eligen ciertos valores USE predeterminados en ebuilds para evitar conflictos, mejorar la seguridad y evitar errores, entre otras razones. Deshabilitar "todos" los valores USE anulará el comportamiento predeterminado y puede causar problemas importantes.

CPU_FLAGS_*

Algunas arquitecturas (incluidas AMD64/X86, ARM, PPC) tienen una variable USE_EXPAND llamada CPU_FLAGS_<ARCH>, donde <ARCH> se reemplaza con el nombre de la arquitectura del sistema relevante.

Important
¡No te confundas! Los sistemas AMD64 y X86 comparten una arquitectura común, por lo que el nombre de variable adecuado para los sistemas AMD64 es CPU_FLAGS_X86.

Se usa para configurar la construcción para compilar en código ensamblador específico u otro intrínseco, generalmente escritos a mano o de otra manera adicional, y no es lo mismo que pedirle al compilador que genere un código optimizado para una determinada característica de la CPU (por ejemplo, -march=).

Los usuarios deben establecer esta variable además de configurar su COMMON_FLAGS como deseen.

Se necesitan algunos pasos para configurar esto:

root #emerge --ask --oneshot app-portage/cpuid2cpuflags

Inspeccione la salida manualmente si tiene curiosidad:

root #cpuid2cpuflags

Luego copie la salida en package.use:

root #echo "*/* $(cpuid2cpuflags)" > /etc/portage/package.use/00cpu-flags

VIDEO_CARDS

La variable VIDEO_CARDS USE_EXPAND debe configurarse adecuadamente según las GPU disponibles. No es necesario configurar VIDEO_CARDS para una instalación de solo consola.

A continuación se muestra un ejemplo de una variable VIDEO_CARDS configurada correctamente. Sustituya el nombre del controlador que se utilizará.

FILE /etc/portage/make.conf
VIDEO_CARDS="amdgpu radeonsi"

Los detalles de varias GPU se pueden encontrar en los artículos AMDGPU, Intel, Nouveau (Open Source) o NVIDIA (Propietario).

Opcional: Configurar la variable ACCEPT_LICENSE

A partir de la Propuesta de mejora 23 de Gentoo Linux (GLEP 23), se creó un mecanismo para permitir a los administradores de sistemas la capacidad de "regular el software que instalan con respecto a las licencias... Algunos quieren un sistema libre de cualquier software que no esté aprobado por OSI; otros simplemente sienten curiosidad por saber qué licencias aceptan implícitamente."[2] Con la motivación de tener un control más granular sobre del tipo de software que se ejecuta en un sistema Gentoo, nació la variable ACCEPT_LICENSE.

Durante el proceso de instalación, Portage considera los valores establecidos dentro de la variable ACCEPT_LICENSE para determinar si los paquetes solicitados cumplen con la determinación del administrador del sistema de una licencia aceptable. Aquí radica un problema: el repositorio de ebuilds de Gentoo está lleno de miles de ebuilds, lo que resulta en cientos de distintas licencias de software... ¿Implica esto que el administrador del sistema apruebe individualmente todas y cada una de las nuevas licencias de software? Afortunadamente no; GLEP 23 también describe una solución a este problema, un concepto llamado grupos de licencias.

Para facilitar la administración del sistema, se han agrupado licencias de software que son legalmente similares, cada una según su tipo. Las definiciones de los grupos de licencias están disponibles para su visualización y son administradas por el proyecto Licencias Gentoo. Los grupos de licencias están precedidos sintácticamente por un símbolo @, mientras que una licencia individual no lo está, lo que permite distinguirlos fácilmente en la variable ACCEPT_LICENSE.

Algunos grupos de licencias comunes incluyen:

Una lista de licencias de software agrupadas según su tipo.
Nombre Descripción
@GPL-COMPATIBLE Licencias compatibles con GPL aprobadas por la Free Software Foundation [a_license 1]
@FSF-APPROVED Licencias de software libre aprobadas por la FSF (incluye @GPL-COMPATIBLE)
@OSI-APPROVED Licencias aprobadas por la Open Source Initiative [a_license 2]
@MISC-FREE Licencias varias que probablemente sean software libre, es decir, que sigan la Definición de software libre [a_license 3] pero no están aprobadas ni por la FSF ni por la OSI
@FREE-SOFTWARE Combina @FSF-APPROVED, @OSI-APPROVED, y @MISC-FREE.
@FSF-APPROVED-OTHER Licencias aprobadas por la FSF para "documentación libre" y "trabajos de uso práctico además de software y documentación" (incluidas las fuentes tipográficas)
@MISC-FREE-DOCS Licencias varias para documentos libres y otros trabajos (incluidas fuentes tipográficas) que siguen la definición libre [a_license 4] pero NO están listadas en @FSF-APPROVED-OTHER.
@FREE-DOCUMENTS Combina @FSF-APPROVED-OTHER y @MISC-FREE-DOCS.
@FREE Metaconjunto de todas las licencias con libertad de usar, compartir, modificar y compartir modificaciones. Combina @FREE-SOFTWARE y @FREE-DOCUMENTS.
@BINARY-REDISTRIBUTABLE Licencias que permitan al menos la redistribución gratuita del software en formato binario. Incluye @FREE.
@EULA Acuerdos de licencia que intentan quitarle sus derechos. Son más restrictivos que "todos los derechos reservados" o requieren aprobación explícita.

Los valores de licencia aceptables actualmente establecidos en todo el sistema se pueden ver a través de:

user $portageq envvar ACCEPT_LICENSE
@FREE

Como se ve en el resultado, el valor predeterminado es permitir que solo se instale el software que se ha agrupado en la categoría @FREE.

Se pueden definir licencias específicas o grupos de licencias para un sistema en las siguientes ubicaciones:

  • Para todo el sistema dentro del perfil seleccionado: esto establece el valor predeterminado.
  • Para todo el sistema dentro del archivo /etc/portage/make.conf. Los administradores del sistema anulan el valor predeterminado del perfil con el contenido de este archivo.
  • Por paquete dentro del archivo /etc/portage/package.license.
  • Por paquete dentro de un directorio de archivos Template:Ruta.

La licencia predeterminada para todo el sistema en el perfil se anula con el contenido de /etc/portage/make.conf:

FILE /etc/portage/make.confAceptar licencias con ACCEPT_LICENSE para todo el sistema
# Anula el valor predeterminado ACCEPT_LICENSE del perfil
ACCEPT_LICENSE="-* @FREE @BINARY-REDISTRIBUTABLE"

Opcionalmente, los administradores del sistema también pueden definir licencias aceptadas por paquete como se muestra en el siguiente directorio de archivos de ejemplo. Tenga en cuenta que será necesario crear el directorio package.license si aún no existe:

root #mkdir /etc/portage/package.license

Los detalles de la licencia de software para un paquete Gentoo individual se almacenan dentro de la variable LICENSE del ebuild asociado. Un paquete puede tener una o varias licencias de software, por lo que podría ser necesario especificar varias licencias aceptables para un único paquete.

FILE /etc/portage/package.license/kernelAceptar licencias por paquete
app-arch/unrar unRAR
sys-kernel/linux-firmware @BINARY-REDISTRIBUTABLE
sys-firmware/intel-microcode intel-ucode
Important
La variable LICENSE en un ebuild es sólo una indicación para los desarrolladores y usuarios de Gentoo. No es una declaración legal y no hay garantía de que refleje la realidad. Se recomienda no confiar únicamente en la interpretación que haga el desarrollador de ebuilds de la licencia de un paquete de software; sino que verifique el paquete en profundidad, incluidos todos los archivos que se han instalado en el sistema.

Actualizar el conjunto @world

La actualización del conjunto @world del sistema es opcional y es poco probable que se realicen cambios funcionales a menos que se hayan realizado uno o más de los siguientes pasos opcionales:

  1. Se ha seleccionado un perfil objetivo diferente del archivo de stage.
  2. Se han configurado indicadores USE adicionales para los paquetes instalados.

Los lectores que estén realizando una 'ejecución rápida de instalación de Gentoo' pueden omitir con seguridad las actualizaciones del conjunto @world hasta después de que su sistema se haya reiniciado en el nuevo entorno de Gentoo.

Los lectores que estén realizando una ejecución lenta pueden hacer que Portage realice actualizaciones para cambios de paquetes, perfiles y/o indicadores USE en este momento:

root #emerge --ask --verbose --update --deep --newuse @world

Eliminar paquetes obsoletos

Es importante hacer siempre depclean después de las actualizaciones del sistema para eliminar paquetes obsoletos. Revise el resultado cuidadosamente con emerge --depclean --pretend para ver si alguno de los paquetes que se van a eliminar debe conservarse si los usa personalmente. Para conservar un paquete que de otro modo se eliminaría, utilice emerge --noreplace foo.

root #emerge --ask --pretend --depclean

Si está satisfecho, proceda con la limpieza de dependencias real:

root #emerge --ask --depclean
Tip
Si se seleccionó un perfil objetivo de entorno de escritorio desde un archivo de stage que no es de escritorio, el proceso de actualización de @world podría extender en gran medida la cantidad de tiempo necesario para el proceso de instalación. Aquellos que tienen poco tiempo pueden actuar según esta 'regla general': cuanto más corto sea el nombre del perfil, menos específico será el conjunto @world del sistema. Cuanto menos específico sea el conjunto @world, menos paquetes requerirá el sistema. P.ej.:
  • Seleccionar default/linux/amd64/ probablemente requerirá que se actualicen menos paquetes, mientras que
  • Seleccionar default/linux/amd64//desktop/gnome/systemd probablemente requerirá la instalación de más paquetes ya que el perfil de destino tiene unos conjuntos @system y @profile mas grandes: dependencias que dan soporte al entorno de escritorio GNOME.


Zona horaria

Note
Este paso no se aplica a los usuarios de musl libc. Los usuarios que no sepan lo que eso significa deben realizar este paso.
Warning
Por favor, evite las zonas horarias listadas en /usr/share/zoneinfo/Etc/GMT* ya que sus nombres no indican las zonas esperadas. Por ejemplo, GMT-8 es en realidad GMT+8.

Seleccione la zona horaria para su sistema. Busque las zonas horarias disponibles en /usr/share/zoneinfo/:

root #ls -l /usr/share/zoneinfo
total 352
drwxr-xr-x 2 root root   1120 Jan  7 17:41 Africa
drwxr-xr-x 6 root root   2960 Jan  7 17:41 America
drwxr-xr-x 2 root root    280 Jan  7 17:41 Antarctica
drwxr-xr-x 2 root root     60 Jan  7 17:41 Arctic
drwxr-xr-x 2 root root   2020 Jan  7 17:41 Asia
drwxr-xr-x 2 root root    280 Jan  7 17:41 Atlantic
drwxr-xr-x 2 root root    500 Jan  7 17:41 Australia
drwxr-xr-x 2 root root    120 Jan  7 17:41 Brazil
-rw-r--r-- 1 root root   2094 Dec  3 17:19 CET
-rw-r--r-- 1 root root   2310 Dec  3 17:19 CST6CDT
drwxr-xr-x 2 root root    200 Jan  7 17:41 Canada
drwxr-xr-x 2 root root     80 Jan  7 17:41 Chile
-rw-r--r-- 1 root root   2416 Dec  3 17:19 Cuba
-rw-r--r-- 1 root root   1908 Dec  3 17:19 EET
-rw-r--r-- 1 root root    114 Dec  3 17:19 EST
-rw-r--r-- 1 root root   2310 Dec  3 17:19 EST5EDT
-rw-r--r-- 1 root root   2399 Dec  3 17:19 Egypt
-rw-r--r-- 1 root root   3492 Dec  3 17:19 Eire
drwxr-xr-x 2 root root    740 Jan  7 17:41 Etc
drwxr-xr-x 2 root root   1320 Jan  7 17:41 Europe
...
root #ls -l /usr/share/zoneinfo/Europe/
total 256
-rw-r--r-- 1 root root 2933 Dec  3 17:19 Amsterdam
-rw-r--r-- 1 root root 1742 Dec  3 17:19 Andorra
-rw-r--r-- 1 root root 1151 Dec  3 17:19 Astrakhan
-rw-r--r-- 1 root root 2262 Dec  3 17:19 Athens
-rw-r--r-- 1 root root 3664 Dec  3 17:19 Belfast
-rw-r--r-- 1 root root 1920 Dec  3 17:19 Belgrade
-rw-r--r-- 1 root root 2298 Dec  3 17:19 Berlin
-rw-r--r-- 1 root root 2301 Dec  3 17:19 Bratislava
-rw-r--r-- 1 root root 2933 Dec  3 17:19 Brussels
...

Supuesto de zona horaria como Europe/Brussels.

OpenRC

El nombre de la zona horaria deseada se puede escribir en /etc/timezone:

root #echo "Europe/Brussels" > /etc/timezone

Finalmente, el paquete sys-libs/timezone-data se puede reconfigurar, actualizando /etc/localtime, según la entrada /etc/timezone:

root #emerge --config sys-libs/timezone-data
Note
La biblioteca C del sistema utiliza el archivo /etc/localtime para conocer la zona horaria en la que se encuentra el sistema.

systemd

Se emplea una manera ligeramente diferente cuando se utiliza systemd. Se genera un enlace simbólico:

root #ln -sf ../usr/share/zoneinfo/Europe/Brussels /etc/localtime

Después, cuando systemd se esté ejecutando, la zona horaria y las configuraciones relacionadas se pueden configurar con el comando timedatectl.

Configurar localizaciones

Note
Este paso no se aplica a los usuarios de musl libc. Los usuarios que no saben lo que eso significa deben realizar este paso.

Generación de localizaciones

La mayoría de usuarios necesitarán usar únicamente una o dos localizaciones (locales) en su sistema.

Las localizaciones no sólo especifican el idioma que el usuario debe usar para interactuar con sistema, sino también las reglas para ordenar cadenas, presentar fechas y horas, etc. Los nombres de las localizaciones son sensibles a mayúsculas y deben se escritas exactamente como se ha indicado. Una lista completa de las localizaciones disponibles se puede encontrar en el archivo /usr/share/i18n/SUPPORTED.

Las localizaciones soportadas por un sistema debe estar definidas en el archivo /etc/locale.gen.

root #nano /etc/locale.gen

Las siguientes localizaciones son un ejemplo de como disponer tanto de Inglés (Estados Unidos) como de Alemán (Alemán/Alemania) junto con los formatos de caracteres (como UTF-8).

FILE /etc/locale.genHabilitar las localizaciones US y ES con los formatos de carácter apropiados
en_US ISO-8859-1
en_US.UTF-8 UTF-8
es_ES ISO-8859-1
es_ES.UTF-8 UTF-8
Warning
Muchas aplicaciones requieren al menos una configuración regional UTF-8 para costruirse correctamente.

El siguiente paso es ejecutar la orden locale-gen. Esta ordene genera las localizaciones especificadas en el archivo /etc/locale.gen.

root #locale-gen

Para verificar que las localizaciones seleccionadas están ahora disponibles, ejecute locale -a.

En instalaciones con systemd, se puede usar localectl, p. ej. localectl set-locale ... o localectl list-locales.

Selección de localización

Una vez hecho esto, es el momento de establecer la configuración regional de todo el sistema. Nuevamente se usa eselect, ahora con el módulo locale.

Con eselect locale list se muestran las opciones disponibles:

root #eselect locale list
Available targets for the LANG variable:
  [1]  C
  [2]  C.utf8
  [3]  en_US
  [4]  en_US.iso88591
  [5]  en_US.utf8
  [6]  de_DE
  [7]  de_DE.iso88591
  [8]  de_DE.utf8
  [9] POSIX
  [ ]  (free form)

Con eselect locale set <NÚMERO> se puede seleccionar la localización correcta:

root #eselect locale set 2

Se puede realizar también manualmente usando el archivo /etc/env.d/02locale y para systemd el archivo /etc/locale.conf:

FILE /etc/env.d/02localeDefinición de la localización del sistema manualmente
LANG="de_DE.UTF-8"
LC_COLLATE="C.UTF-8"

La configuración de localizaciones previene mensajes de advertencia o error durante la compilación del núcleo y otro software más adelante durante la instalación.

Ahora recargue sus variables de entorno:

root #env-update && source /etc/profile && export PS1="(chroot) ${PS1}"

Para obtener orientación adicional acerca del proceso de selección de configuración regional, lea también la Guía de localización y la guía UTF-8.

Referencias






Opcional: Instalar firmware y/o microcódigo

Firmware

Linux Firmware

Antes de comenzar a configurar las secciones del núcleo, es conveniente tener en cuenta que algunos dispositivos físicos requieren la instalación de firmware adicional, a veces no compatible con FOSS, en el sistema antes de que funcionen correctamente. Este suele ser el caso de las interfaces de red inalámbrica que se encuentran comúnmente en las computadoras de escritorio y portátiles. Los chips de video modernos de proveedores como AMD, Nvidia e Intel, a menudo también requieren archivos de firmware externos para ser completamente funcionales. La mayoría del firmware para dispositivos hardware modernos se puede encontrar en el paquete sys-kernel/linux-firmware.

Se recomienda tener instalado el paquete sys-kernel/linux-firmware antes del reinicio inicial del sistema para tener el firmware disponible en caso de que sea necesario:

root #emerge --ask sys-kernel/linux-firmware
Note
La instalación de determinados paquetes de firmware suele requerir la aceptación de las licencias de firmware asociadas. Si es necesario, visite la sección de manejo de licencias del Manual para obtener ayuda sobre cómo aceptar licencias.

Es importante tener en cuenta que los símbolos del núcleo que se construyen como módulos (M) cargarán sus archivos de firmware asociados desde el sistema de archivos cuando el núcleo los cargue. No es necesario incluir los archivos de firmware del dispositivo dentro de la imagen binaria del núcleo para los símbolos cargados como módulos.

Architecture specific firmware

Note
Placeholder for architecture-specific firmware information

Microcódigo

Además del específico para el hardware de gráficos y las interfaces de red, las CPUs también pueden requerir actualizaciones de firmware. Normalmente, este tipo de firmware se conoce como microcódigo. A veces se necesitan revisiones más recientes del microcódigo para parchear la inestabilidad, los problemas de seguridad u otros errores diversos en el hardware de la CPU.

Las actualizaciones de microcódigo para las CPUs de AMD se distribuyen dentro del paquete sys-kernel/linux-firmware mencionado anteriormente. El microcódigo para CPUs Intel se puede encontrar dentro del paquete sys-firmware/intel-microcode, que deberá instalarse por separado. Consulte el artículo sobre microcódigo para obtener más información sobre cómo aplicar actualizaciones de microcódigo.

Configuración y compilación del núcleo

Ahora es el momento de configurar y compilar las fuentes del núcleo. A efectos de instalación, se presentarán tres estrategias para la gestión del núcleo; sin embargo, en cualquier momento posterior a la instalación, se puede cambiar de estrategia.

Clasificadas de menor a mayor complicación:

Estrategia de automatización total: Núcleos de distribución
Un Núcleo de distribución se usa para configurar, compilar e instalar automáticamente el núcleo Linux, sus módulos asociados y (opcionalmente, pero habilitado por defecto) un archivo initramfs. Las actualizaciones futuras del núcleo están completamente automatizadas, ya que se manejan a través del administrador de paquetes, como cualquier otro paquete del sistema. Es posible proporcionar un archivo de configuración del núcleo personalizado si es necesaria la personalización. Este es el proceso menos complicado y es perfecto para los nuevos usuarios de Gentoo debido a que funciona de forma inmediata y ofrece una participación mínima por parte del administrador del sistema.
Estrategia híbrida: Genkernel
Las nuevas fuentes del núcleo se instalan a través del administrador de paquetes del sistema. Los administradores del sistema usan la herramienta genkernel de Gentoo para configurar, compilar e instalar automáticamente el kernel de Linux, sus módulos asociados y (opcionalmente, pero no habilitado por defecto) un archivo initramfs archivo. Es posible proporcionar un archivo de configuración del núcleo personalizado si es necesaria la personalización. La configuración, compilación e instalación futuras del núcleo requieren la participación del administrador del sistema en la forma de ejecutar eselect kernel, genkernel y potencialmente otros comandos para cada actualización.
Estrategia completamente manual
Las nuevas fuentes del núcleo se instalan a través del administrador de paquetes del sistema. El núcleo se configura, construye e instala manualmente usando eselect kernel y una serie de comandos make. Las futuras actualizaciones del núcleo repiten el proceso manual de configuración, creación e instalación de los archivos del núcleo. Este es el proceso más complicado, pero ofrece el máximo control sobre el proceso de actualización del núcleo.

El eje alrededor del cual se construyen todas las distribuciones es el núcleo Linux. Es la capa entre los programas del usuario y el hardware del sistema. Aunque el manual proporciona a sus usuarios varias fuentes posibles del núcleo, hay disponible una lista más completa y con descripciones más detalladas en la página de descripción general del núcleo.

Tip
Kernel installation tasks such as, copying the kernel image to /boot or the EFI System Partition, generating an initramfs and/or Unified Kernel Image, updating bootloader configuration, can be automated with installkernel. Users may wish to configure and install sys-kernel/installkernel before proceeding. See the Kernel installation section below for more more information.

Instalar las fuentes del núcleo

Note
Esta sección solo es relevante cuando se usa lo siguiente genkernel (híbrido) o configuración manual de la gestión del núcleo.

The use of sys-kernel/installkernel is not strictly required, but highly recommended. When this package is installed, the kernel installation process will be delegated to installkernel. This allows for installing several different kernel versions side-by-side as well as managing and automating several tasks relating to kernel installation described later in the handbook. Install it now with:

root #emerge --ask sys-kernel/installkernel

Al instalar y compilar el núcleo para sistemas basados en , Gentoo recomienda el paquete sys-kernel/.

Elija una fuente del núcleo adecuada e instálela usando emerge:

root #emerge --ask sys-kernel/

Esto instalará las fuentes del núcleo Linux en /usr/src/ usando la versión específica del kernel en el nombre de la ruta. No creará un enlace simbólico de forma automática a no ser que la USE=symlink esté habilitada en el paquete de fuentes del núcleo elegido.

Es una convencion que se mantenga el enlace simbólico /usr/src/linux, de modo que se refiera a las fuentes que correspondan con el núcleo que se está ejecutando actualmente. Sin embargo, este enlace simbólico no se creará por defecto. Una manera fácil de crear el enlace simbólico es utilizar el módulo kernel de eselect.

Para obtener más información sobre la finalidad del enlace simbólico y cómo administrarlo, consulte Kernel/Upgrade/es.

Primero, enumere todos los núcleos instalados:

root #eselect kernel list
Available kernel symlink targets:
  [1]   linux-

Para crear un enlace simbólico llamado linux, use:

root #eselect kernel set 1
root #ls -l /usr/src/linux
lrwxrwxrwx    1 root   root    12 Oct 13 11:04 /usr/src/linux -> linux-

Alternativa: Genkernel

Note
In case it was missed, this section requires the kernel sources to be installed. Be sure to obtain the relevant kernel sources, then return here for the rest of section.

Si una configuración completamente manual parece demasiado desafiante, los administradores del sistema deberían considerar usar genkernel como un enfoque híbrido para el mantenimiento del núcleo.

Genkernel proporciona un archivo de configuración de núcleo genérico, automáticamente genera el kernel (núcleo), initramfs y los módulos asociados, y luego instala los archivos binarios resultantes en las ubicaciones apropiadas . Esto da como resultado una compatibilidad con el hardware mínima y genérica para el primer arranque del sistema y permite un control adicional de actualizaciones y personalización de la configuración del núcleo en el futuro.

Queda avisado: si bien el uso de genkernel para mantener el núcleo brinda a los administradores del sistema un mayor control de actualización sobre el núcleo del sistema, initramfs y otras opciones, "requerirán" un compromiso de tiempo y esfuerzo para materializar las futuras actualizaciones del núcleo a medida que se lanzan nuevas fuentes. Aquellos que busquen un enfoque de no intervención para el mantenimiento del núcleo deberían usar un núcleo de distribución.

Para mayor claridad, es un "concepto erróneo" creer que genkernel genera automáticamente una configuración del núcleo "personalizada" para el hardware en el que se ejecuta; utiliza una configuración del núcleo determinada que admite la mayoría del hardware genérico y maneja automáticamente los comandos make necesarios para ensamblar e instalar el núcleo, los módulos asociados y el archivo initramfs.

Grupo de licencias de software binario redistribuible

Si el paquete de firmware de linux se instaló previamente, salte a la sección de instalación.

Como requisito previo, debido a que el valor USE firwmare está habilitado de forma predeterminada para el paquete sys-kernel/genkernel, el administrador de paquetes también intentará instalar el paquete sys-kernel/linux-firmware. Las licencias de software binario redistribuible deben aceptarse antes de que se instale el linux-firmware.

Este grupo de licencias se puede aceptar de forma global para cualquier paquete agregando @BINARY-REDISTRIBUTABLE como un valor ACCEPT_LICENSE en el archivo /etc/portage/make. conf. Se puede aceptar exclusivamente para el paquete de linux-firmware agregando una inclusión específica a través de un archivo /etc/portage/package.license/linux-firmware.

Si es necesario, revise los métodos para aceptar licencias de software disponibles en el capítulo Instalando el sistema base del manual, luego realice algunos cambios para las licencias de software aceptables.

Si no sabe qué decidir sobre este tema, lo siguiente funcionará:

root #mkdir /etc/portage/package.license
FILE /etc/portage/package.license/linux-firmwareAceptar licencias de binarios redistribuíbles para el paquete linux-firmware
sys-kernel/linux-firmware @BINARY-REDISTRIBUTABLE

Instalación

Además de las explicaciones y los requisitos previos, instale el paquete sys-kernel/genkernel:

root #emerge --ask sys-kernel/genkernel

Generación

Compile las fuentes del núcleo ejecutando genkernel all. Sin embargo, tenga en cuenta que genkernel compila un núcleo que admite una amplia gama de hardware para diferentes arquitecturas de computadoras, por lo que esta compilación puede tardar bastante en finalizar.

Note
Si la partición/volumen raíz usa un sistema de archivos que no sea ext4, puede ser necesario configurar manualmente el núcleo usando genkernel --menuconfig all para agregar soporte integrado en el núcleo para el sistema de archivos en particular (es decir, no construir el soporte al sistema de archivos como un módulo).
Note
Los usuarios de LVM2 deben añadir --lvm como argumento a la siguiente orden genkernel.
root #genkernel --mountboot --install all

Una vez finalice genkernel, se generarán e instalarán un núcleo y un sistema de archivos de inicio en ram (initramfs) en el directorio /boot. Los módulos asociados se instalarán en el directorio /lib/modules. El initramfs se iniciará inmediatamente después de cargar el núcleo para realizar la detección automática de hardware (al igual que en los entornos de imagen de disco vivo).

root #ls /boot/vmlinu* /boot/initramfs*
root #ls /lib/modules

Alternativa: Configuración manual

Introducción

Note
In case it was missed, this section requires the kernel sources to be installed. Be sure to obtain the relevant kernel sources, then return here for the rest of section.

La configuración manual de un núcleo a menudo se considera el procedimiento más difícil que un usuario de Linux debe realizar. Nada mas falso - ¡después de configurar un par de núcleos, nadie recuerda que fuera difícil!

Sin embargo, una cosa sí es cierta: es vital conocer el sistema para configurar manualmente un núcleo. La mayor cantidad de información se puede obtener instalando sys-apps/pciutils que contiene la orden lspci:

root #emerge --ask sys-apps/pciutils
Note
Dentro de la jaula chroot, se pueden ignorar con tranquilidad las advertencias sobre pcilib (como pcilib: cannot open /sys/bus/pci/devices) que pudiera mostrar lspci.

Otra fuente de información sobre nuestro sistema consiste en ejecutar lsmod para ver los módulos del nucleo que ha usado el CD de instalación y tener así buenas indicaciones sobre qué habilitar.

Ahora vaya al directorio de las fuentes del núcleo y ejecute make menuconfig. Esto generará una pantalla de configuración basada en menús.

root #cd /usr/src/linux
root #make menuconfig

La configuración del núcleo Linux tiene muchas, muchas secciones. Veamos primero una lista con algunas opciones que deben ser activadas (en caso contrario Gentoo no funcionará o no funcionará adecuadamente sin ajustes adicionales). También tenemos la Guía de configuración del núcleo Gentoo en la wiki de Gentoo que también podría ayudar.

Habilitar las opciones esenciales

Al usar sys-kernel/gentoo-sources, se recomienda encarecidamente que se habiliten las opciones de configuración específicas de Gentoo. Ésto asegura que estén disponibles un mínimo de características del núcleo requeridas para el funcionamiento adecuado:

KERNEL Habilitando opciones específicas para Gentoo
Gentoo Linux --->
  Generic Driver Options --->
    [*] Gentoo Linux support
    [*]   Linux dynamic and persistent device naming (userspace devfs) support
    [*]   Select options required by Portage features
        Support for init systems, system and service managers  --->
          [*] OpenRC, runit and other script based systems and managers
          [*] systemd

Naturalmente, la elección en las últimas dos líneas depende del sistema de inicio seleccionado (OpenRC vs. systemd). No está de más tener habilitado el soporte para ambos sistemas de inicio.

Al usar sys-kernel/vanilla-sources, las selecciones adicionales para los sistemas de inicio no estarán disponibles. Es posible habilitar el soporte, pero va más allá del alcance del manual.

Habilitar soporte para componentes típicos del sistema

Asegúrese de que todos los controladores que son vitales para el arranque del sistema (como los controladores SATA, la compatibilidad con dispositivos de bloque NVMe, la compatibilidad con sistemas de archivos, etc.) estén compilados dentro del núcleo y no como un módulos; de lo contrario, es posible que el sistema no pueda arranque por completo.

A continuación seleccione con exactitud el tipo de procesador. Se recomienda habilitar las funcionalidades MCE (si están disponibles) de manera que los usuarios puedan ser informados de cualquier problema en este hardware. En algunas arquitecturas (como x86_64) estos errores no son presentados a través de dmesg sino de /dev/mcelog. Para ello se requiere el paquete app-admin/mcelog.

A continuación seleccione Maintain a devtmpfs file system to mount at /dev de modo que los archivos de dispositivo críticos estén disponibles cuanto antes en el proceso de inicio (CONFIG_DEVTMPFS y CONFIG_DEVTMPFS_MOUNT):

KERNEL Habilitar soporte para devtmpfs (CONFIG_DEVTMPFS)
Device Drivers --->
  Generic Driver Options --->
    [*] Maintain a devtmpfs filesystem to mount at /dev
    [*]   Automount devtmpfs at /dev, after the kernel mounted the rootfs

Verificar que se ha activado el soporte de disco SCSI (CONFIG_BLK_DEV_SD):

KERNEL Habilitar soporte para discos SCSI (CONFIG_SCSI, CONFIG_BLK_DEV_SD)
Device Drivers --->
  SCSI device support  ---> 
    <*> SCSI device support
    <*> SCSI disk support
KERNEL Habilitar soporte básico para SATA y PATA (CONFIG_ATA_ACPI, CONFIG_SATA_PMP, CONFIG_SATA_AHCI, CONFIG_ATA_BMDMA, CONFIG_ATA_SFF, CONFIG_ATA_PIIX)
Device Drivers --->
  <*> Serial ATA and Parallel ATA drivers (libata)  --->
    [*] ATA ACPI Support
    [*] SATA Port Multiplier support
    <*> AHCI SATA support (ahci)
    [*] ATA BMDMA support
    [*] ATA SFF support (for legacy IDE and PATA)
    <*> Intel ESB, ICH, PIIX3, PIIX4 PATA/SATA support (ata_piix)

Verifique que se haya habilitado el soporte básico para NVMe:

KERNEL Habilitar soporte básico NVMe en Linux 4.4.x (CONFIG_BLK_DEV_NVME)
Device Drivers  --->
  <*> NVM Express block device
KERNEL Habilitar soporte básico NVMe en Linux 5.x.x (CONFIG_DEVTMPFS)
Device Drivers --->
  NVME Support --->
    <*> NVM Express block device

No está de más habilitar el siguiente soporte NVMe adicional:

KERNEL Habilitar soporte adicional para NVMe (CONFIG_NVME_MULTIPATH, CONFIG_NVME_MULTIPATH, CONFIG_NVME_HWMON, CONFIG_NVME_FC, CONFIG_NVME_TCP, CONFIG_NVME_TARGET, CONFIG_NVME_TARGET_PASSTHRU, CONFIG_NVME_TARGET_LOOP, CONFIG_NVME_TARGET_FC, CONFIG_NVME_TARGET_FCLOOP, CONFIG_NVME_TARGET_TCP)
[*] NVMe multipath support
[*] NVMe hardware monitoring
<M> NVM Express over Fabrics FC host driver
<M> NVM Express over Fabrics TCP host driver
<M> NVMe Target support
  [*]   NVMe Target Passthrough support
  <M>   NVMe loopback device support
  <M>   NVMe over Fabrics FC target driver
  < >     NVMe over Fabrics FC Transport Loopback Test driver (NEW)
  <M>   NVMe over Fabrics TCP target support

Vaya ahora a File Systems y seleccione el soporte para los sistemas de archivos que se vayan a usar en el sistema. No compile como módulo el sistema de archivos que vaya a utilizar para el sistema de archivos raíz, de lo contrario su sistema Gentoo podría no conseguir montar la partición raíz. También deberá seleccionar Virtual memory y /proc file system. Selecionar una o más de las siguientes opciones según las necesidades del sistema:

KERNEL Habilitar soporte para sistemas de archivo (CONFIG_EXT2_FS, CONFIG_EXT3_FS, CONFIG_EXT4_FS, CONFIG_BTRFS_FS, CONFIG_MSDOS_FS, CONFIG_VFAT_FS, CONFIG_PROC_FS, and CONFIG_TMPFS)
File systems --->
  <*> Second extended fs support
  <*> The Extended 3 (ext3) filesystem
  <*> The Extended 4 (ext4) filesystem
  <*> Btrfs filesystem support
  DOS/FAT/NT Filesystems  --->
    <*> MSDOS fs support
    <*> VFAT (Windows-95) fs support
  Pseudo Filesystems --->
    [*] /proc file system support
    [*] Tmpfs virtual memory file system support (former shm fs)

Si está usando PPPoE para conectarse a Internet, o está usando un módem telefónico, habilite las siguientes opciones (CONFIG_PPP, CONFIG_PPP_ASYNC y CONFIG_PPP_SYNC_TTY):

KERNEL Habilitar soporte para PPPoE (PPPoE, CONFIG_PPPOE, CONFIG_PPP_ASYNC, CONFIG_PPP_SYNC_TTY
Device Drivers --->
  Network device support --->
    <*> PPP (point-to-point protocol) support
    <*> PPP over Ethernet
    <*> PPP support for async serial ports
    <*> PPP support for sync tty ports

Las dos opciones de compresión no están de más aunque no son necesarias, como tampoco lo es la opción PPP sobre Ethernet, que sólo podría utilizarse cuando se configure un núcleo en modo PPPoE.

No olvide incluir el soporte en el núcleo para su tarjeta de red (Ethernet o inalámbrica).

Muchos sistemas también tienen varios núcleos de microprocesador a su disposición, así que es importánte activar Symmetric multi-processing support (CONFIG_SMP):

KERNEL Activar soporte Activating soporte para SMP (CONFIG_SMP)
Processor type and features  --->
  [*] Symmetric multi-processing support
Note
En sistemas multi-núcleo, cada núcleo cuenta como un procesador.

Si utiliza dispositivos de entrada USB (como un teclado o un ratón) u otros, no olvide activarlos también:

KERNEL Habilitar el soporte para USB y dispositivos de interfaz humana (HID) (CONFIG_USB_EHCI_HCD, CONFIG_USB_OHCI_HCD, CONFIG_USB4)
Device Drivers --->
  HID support  --->
    -*- HID bus support
    <*>   Generic HID driver
    [*]   Battery level reporting for HID devices
      USB HID support  --->
        <*> USB HID transport layer
  [*] USB support  --->
    <*>     xHCI HCD (USB 3.0) support
    <*>     EHCI HCD (USB 2.0) support
    <*>     OHCI HCD (USB 1.1) support
  <*> Unified support for USB4 and Thunderbolt  --->

Optional: Signed kernel modules

To automatically sign the kernel modules enable CONFIG_MODULE_SIG_ALL:

KERNEL Sign kernel modules CONFIG_MODULE_SIG_ALL
[*] Enable loadable module support  
  -*-   Module signature verification    
    [*]     Automatically sign all modules    
    Which hash algorithm should modules be signed with? (Sign modules with SHA-512) --->

Optionally change the hash algorithm if desired.

To enforce that all modules are signed with a valid signature, enable CONFIG_MODULE_SIG_FORCE as well:

KERNEL Enforce signed kernel modules CONFIG_MODULE_SIG_FORCE
[*] Enable loadable module support  
  -*-   Module signature verification    
    [*]     Require modules to be validly signed
    [*]     Automatically sign all modules
    Which hash algorithm should modules be signed with? (Sign modules with SHA-512) --->

To use a custom key, specify the location of this key in CONFIG_MODULE_SIG_KEY, if unspecified the kernel build system will generate a key. It is recommended to generate one manually instead. This can be done with:

root #openssl req -new -nodes -utf8 -sha256 -x509 -outform PEM -out kernel_key.pem -keyout kernel_key.pem

OpenSSL will ask some questions about the user generating the key, it is recommended to fill in these questions as detailed as possible.

Store the key in a safe location, at the very least the key should be readable only by the root user. Verify this with:

root #ls -l kernel_key.pem
 -r-------- 1 root root 3164 Jan  4 10:38 kernel_key.pem 

If this outputs anything other then the above, correct the permissions with:

root #chown root:root kernel_key.pem
root #chmod 400 kernel_key.pem
KERNEL Specify signing key CONFIG_MODULE_SIG_KEY
-*- Cryptographic API  ---> 
  Certificates for signature checking  --->  
    (/path/to/kernel_key.pem) File name or PKCS#11 URI of module signing key

To also sign external kernel modules installed by other packages via linux-mod-r1.eclass, enable the modules-sign USE flag globally:

FILE /etc/portage/make.confEnable module signing
USE="modules-sign"
</div>

<div lang="en" dir="ltr" class="mw-content-ltr">
# Optionally, when using custom signing keys.
MODULES_SIGN_KEY="/path/to/kernel_key.pem"
MODULES_SIGN_CERT="/path/to/kernel_key.pem" # Only required if the MODULES_SIGN_KEY does not also contain the certificate
MODULES_SIGN_HASH="sha512" # Defaults to sha512
Note
The MODULES_SIGN_KEY and MODULES_SIGN_CERT may be different files. For this example the pem file generated by OpenSSL includes both the key and the accompanying certificate, and thus both variables are set to the same value.

Optional: Signing the kernel image (Secure Boot)

When signing the kernel image (for use on systems with Secure Boot enabled) it is recommended to set the following kernel config options:

KERNEL Lockdown for secureboot
General setup  --->
  Kexec and crash features  --->   
    [*] Enable kexec system call                                                                                          
    [*] Enable kexec file based system call                                                                               
    [*]   Verify kernel signature during kexec_file_load() syscall                                                        
    [*]     Require a valid signature in kexec_file_load() syscall                                                        
    [*]     Enable ""image"" signature verification support
</div>  

<div lang="en" dir="ltr" class="mw-content-ltr">
[*] Enable loadable module support  
  -*-   Module signature verification    
    [*]     Require modules to be validly signed
    [*]     Automatically sign all modules
    Which hash algorithm should modules be signed with? (Sign modules with SHA-512) --->
</div>  

<div lang="en" dir="ltr" class="mw-content-ltr">
Security options  ---> 
[*] Integrity subsystem   
  [*] Basic module for enforcing kernel lockdown                                                                       
  [*]   Enable lockdown LSM early in init                                                                       
        Kernel default lockdown mode (Integrity)  --->
</div>            

  <div lang="en" dir="ltr" class="mw-content-ltr">
[*]   Digital signature verification using multiple keyrings                                                            
  [*]     Enable asymmetric keys support                                                                                     
  -*-       Require all keys on the integrity keyrings be signed                                                              
  [*]       Provide keyring for platform/firmware trusted keys                                                                
  [*]       Provide a keyring to which Machine Owner Keys may be added                                                        
  [ ]         Enforce Machine Keyring CA Restrictions

Where ""image"" is a placeholder for the architecture specific image name. These options, from the top to the bottom: enforces that the kernel image in a kexec call must be signed (kexec allows replacing the kernel in-place), enforces that kernel modules are signed, enables lockdown integrity mode (prevents modifying the kernel at runtime), and enables various keychains.

On arches that do not natively support decompressing the kernel (e.g. arm64 and riscv), the kernel must be built with its own decompressor (zboot):

KERNEL zboot CONFIG_EFI_ZBOOT
Device Drivers --->                                                                                                                           
  Firmware Drivers --->                                                                                                                       
    EFI (Extensible Firmware Interface) Support --->                                                                                               
      [*] Enable the generic EFI decompressor

After compilation of the kernel, as explained in the next section, the kernel image must be signed. First install app-crypt/sbsigntools and then sign the kernel image:

root #emerge --ask app-crypt/sbsigntools
root #sbsign /usr/src/linux-x.y.z/path/to/kernel-image --cert /path/to/kernel_key.pem --key /path/to/kernel_key.pem --out /usr/src/linux-x.y.z/path/to/kernel-image
Note
For this example the same key that was generated to sign the modules is used to sign the kernel image. It is also possible to generate and use a second sperate key for signing the kernel image. The same OpenSSL command as in the previous section may be used again.

Then proceed with the installation.

To automatically sign EFI executables installed by other packages, enable the secureboot USE flag globally:

FILE /etc/portage/make.confEnable Secure Boot
USE="modules-sign secureboot"
</div>

<div lang="en" dir="ltr" class="mw-content-ltr">
# Optionally, to use custom signing keys.
MODULES_SIGN_KEY="/path/to/kernel_key.pem"
MODULES_SIGN_CERT="/path/to/kernel_key.pem" # Only required if the MODULES_SIGN_KEY does not also contain the certificate.
MODULES_SIGN_HASH="sha512" # Defaults to sha512
</div>

<div lang="en" dir="ltr" class="mw-content-ltr">
# Optionally, to boot with secureboot enabled, may be the same or different signing key.
SECUREBOOT_SIGN_KEY="/path/to/kernel_key.pem"
SECUREBOOT_SIGN_CERT="/path/to/kernel_key.pem"
Note
The SECUREBOOT_SIGN_KEY and SECUREBOOT_SIGN_CERT may be different files. For this example the pem file generated by OpenSSL includes both the key and the accompanying certificate, and thus both variables are set to the same value.
Note
When generating an Unified Kernel Image with systemd's ukify the kernel image will be signed automatically before inclusion in the unified kernel image and it is not necessary to sign it manually.

Architecture specific kernel configurations

Note
Placeholder for architecture-specific kernel build information

Compiling and installing

Note
Placeholder for instructions for building and installing the kernel sources

Kernel installation

Installkernel

Installkernel may be used to automate, the kernel installation, initramfs generation, unified kernel image generation and/or bootloader configuration among other things. sys-kernel/installkernel implements two paths of achieving this: the traditional installkernel originating from Debian and systemd's kernel-install. Which one to choose depends, among other things, on the system's bootloader. By default systemd's kernel-install is used on systemd profiles, while the traditional installkernel is the default for other profiles.

If unsure, follow the 'Traditional layout' subsection below.

systemd-boot

When using systemd-boot (formerly gummiboot) as the bootloader, systemd's kernel-install must be used. Therefore ensure the systemd and the systemd-boot USE flags are enabled on sys-kernel/installkernel, and then install the relevant package for systemd-boot.

On OpenRC systems:

FILE /etc/portage/package.use/systemd-boot
sys-apps/systemd-utils boot kernel-install
sys-kernel/installkernel systemd systemd-boot
root #emerge --ask sys-apps/systemd-utils

On systemd systems:

FILE /etc/portage/package.use/systemd
sys-apps/systemd boot
sys-kernel/installkernel systemd-boot
root #emerge --ask sys-apps/systemd

GRUB

Users of GRUB can use either systemd's kernel-install or the traditional Debian installkernel. The systemd USE flag switches between these implementations. To automatically run grub-mkconfig when installing the kernel, enable the grub USE flag.

FILE /etc/portage/package.use/installkernel
sys-kernel/installkernel grub
root #emerge --ask sys-kernel/installkernel

Traditional layout, other bootloaders (e.g. lilo, etc.)

The traditional /boot layout (for e.g. LILO, etc.) is used by default if the grub, systemd-boot and uki USE flags are not enabled. No further action is required.


Building an initramfs

In certain cases it is necessary to build an initramfs - an initial ram-based file system. The most common reason is when important file system locations (like /usr/ or /var/) are on separate partitions. With an initramfs, these partitions can be mounted using the tools available inside the initramfs. The default configuration of the Project:Distribution Kernel requires an initramfs.

Without an initramfs, there is a risk that the system will not boot properly as the tools that are responsible for mounting the file systems require information that resides on unmounted file systems. An initramfs will pull in the necessary files into an archive which is used right after the kernel boots, but before the control is handed over to the init tool. Scripts on the initramfs will then make sure that the partitions are properly mounted before the system continues booting.

Important
If using genkernel, it should be used for both building the kernel and the initramfs. When using genkernel only for generating an initramfs, it is crucial to pass --kernel-config=/path/to/kernel.config to genkernel or the generated initramfs may not work with a manually built kernel. Note that manually built kernels go beyond the scope of support for the handbook. See the kernel configuration article for more information.

Installkernel can automatically generate an initramfs when installing the kernel if the dracut USE flag is enabled:

FILE /etc/portage/package.use/installkernel
sys-kernel/installkernel dracut

Alternatively, dracut may be called manually to generate an initramfs. Install sys-kernel/dracut first, then have it generate an initramfs:

root #emerge --ask sys-kernel/dracut
root #dracut --kver=

The initramfs will be stored in /boot/. The resulting file can be found by simply listing the files starting with initramfs:

root #ls /boot/initramfs*

Optional: Building an Unified Kernel Image

An Unified Kernel Image (UKI) combines, among other things, the kernel, the initramfs and the kernel command line into a single executable. Since the kernel command line is embedded into the unified kernel image it should be specified before generating the unified kernel image (see below). Note that any kernel command line arguments supplied by the bootloader or firmware at boot are ignored when booting with secure boot enabled.

An unified kernel image requires a stub loader, currently the only one available is systemd-stub. To enable it:

For systemd systems:

FILE /etc/portage/package.use/systemd
sys-apps/systemd boot

For OpenRC systems:

FILE /etc/portage/package.use/systemd-utils
sys-apps/systemd-utils boot kernel-install

Installkernel can automatically generate an unified kernel image using either dracut or ukify, by enabling the respective flag. The uki USE flag should be enabled as well to install the generated unified kernel image to the $ESP/EFI/Linux directory on the EFI system partition (ESP).

For dracut:

FILE /etc/portage/package.use/installkernel
sys-kernel/installkernel dracut uki
FILE /etc/dracut.conf
uefi="yes"
kernel_cmdline="some-kernel-command-line-arguments"

For ukify:

FILE /etc/portage/package.use/installkernel
sys-apps/systemd ukify          # For systemd systems
sys-apps/systemd-utils ukify    # For OpenRC systems
sys-kernel/installkernel dracut ukify uki
FILE /etc/kernel/cmdline
some-kernel-command-line-arguments

Note that while dracut can generate both an initramfs and an unified kernel image, ukify can only generate the latter and therefore the initramfs must be generated separately with dracut.

Generic Unified Kernel Image

The prebuilt sys-kernel/gentoo-kernel-bin can optionally install a prebuilt generic unified kernel image containing a generic initramfs that is able to boot most systemd based systems. It can be installed by enabling the generic-uki USE flag, and configuring installkernel to not generate a custom initramfs or unified kernel image:

FILE /etc/portage/package.use/generic-uki
sys-kernel/gentoo-kernel-bin generic-uki
sys-kernel/installkernel -dracut -ukify uki

Secure Boot

The generic Unified Kernel Image optionally distributed by sys-kernel/gentoo-kernel-bin is already pre-signed. How to sign a locally generated unified kernel image depends on whether dracut or ukify is used. Note that the location of the key and certificate should be the same as the SECUREBOOT_SIGN_KEY and SECUREBOOT_SIGN_CERT as specified in /etc/portage/make.conf.

For dracut:

FILE /etc/dracut.conf
uefi="yes"
kernel_cmdline="some-kernel-command-line-arguments"
uefi_secureboot_key="/path/to/kernel_key.pem"
uefi_secureboot_cert="/path/to/kernel_key.pem"

For ukify:

FILE /etc/kernel/uki.conf
[UKI]
SecureBootPrivateKey=/path/to/kernel_key.pem
SecureBootCertificate=/path/to/kernel_key.pem

Rebuilding external kernel modules

External kernel modules installed by other packages via linux-mod-r1.eclass must be rebuilt for each new kernel version. When the distribution kernels are used this may be automated by enabling the dist-kernel flag globally.

FILE /etc/portage/package.use/module-rebuild
*/* dist-kernel

External kernel modules may also be rebuilt manually with:

root #emerge --ask @module-rebuild

Módulos del núcleo

Listado de módulos del núcleo disponibles

Note
Es opcional el hacer un listado manual de los módulos que se necesitan para el hardware. udev normalmente cargará todos los módulos para el hardware que se detecte al ser conectado, en la mayoría de los casos. Sin embargo, no es perjudicial que se enumeren los módulos que se cargarán automáticamente. Los módulos no se pueden cargar dos veces; se cargan o se descargan. A veces, el hardware exótico requiere ayuda para cargar sus controladores.

Los módulos que deben cargarse durante cada arranque se pueden agregar a los archivos /etc/modules-load.d/*.conf en el formato de un módulo por línea. En cambio cuando se necesitan opciones adicionales para los módulos, deben indicarse en los archivos /etc/modprobe.d/*.conf.

Para ver todos los módulos disponibles para una versión de núcleo en concreto, lance la siguiente orden find. No olvide sustituir "<versión del núcleo>" con la versión apropiada del núcleo a buscar:

root #find /lib/modules/<versión del núcleo>/ -type f -iname '*.o' -or -iname '*.ko' | less

Forzar la carga de módulos concretos del núcleo

Para forzar la carga del núcleo para que cargue el módulo 3c59x.ko (que es el controlador para una familia de tarjetas de red 3Com específica), edite /etc/modules-load.d/network.conf e ingrese el nombre del módulo dentro de él.

root #mkdir -p /etc/modules-load.d
root #nano -w /etc/modules-load.d/network.conf

Tenga en cuenta que el sufijo del archivo .ko del módulo es insignificante para el mecanismo de carga y no se incluye en el archivo de configuración:

FILE /etc/modules-load.d/network.confForzar la carga del módulo 3c59x
3c59x

Continúe la instalación con Configurar el sistema.






Información del sistema de ficheros

Etiquetas e Identificadores únicos (UUIDs) del sistema de archivo

Tanto MBR (BIOS) como GPT incluyen soporte para etiquetas del sistema de archivo y para UUIDs del sistema de archivo. Estos atributos pueden estar definidos en /etc/fstab como alternativas a usar por el comando mount cuando intente encontrar y montar los dispositivos de bloques. Las etiquetas del sistema de archivo y los UUIDs son identificados por el prefijo LABEL y UUID y pueden ser visualizados con el comando blkid.

root #blkid
Warning
Si se destruye el sistema de ficheros dentro de una partición, entonces los valores de la etiqueta del sistema de ficheros y del UUID también serán alterados o eliminados.

Debido a su unicidad, se recomienda a los lectores que estén usando una tabla de particiones al estilo MBR que utilicen UUIDs en lugar e etiquetas para definir volúmenes que se puedan montar en /etc/fstab.

Important
Los UUIDs de los sistemas de ficheros en un volumen LVM y sus instantáneas LVM snapshots son idénticos, por lo tanto se debe evitar el uso de UUIDs para montar volúmenes LVM.

Etiquetas de particiones y UUIDs

Los sistemas con soporte para etiquetas de disco GPT ofrecen opciones 'robustas' adicionales para definir particiones en /etc/fstab. Las etiquetas de partición y los UUID de partición se pueden usar para identificar las particiones individuales del dispositivo de bloque, independientemente del sistema de archivos que se haya elegido para la partición en sí. Las etiquetas de partición y los UUID se identifican mediante los prefijos PARTLABEL y/o PARTUUID y se pueden ver claramente en la terminal ejecutando el comando blkid.

La salida para un sistema EFI amd64 que utiliza los UUID de especificación de partición detectable puede ser como la siguiente:

root #blkid
/dev/sr0: BLOCK_SIZE="2048" UUID="2023-08-28-03-54-40-00" LABEL="ISOIMAGE" TYPE="iso9660" PTTYPE="PMBR"
/dev/loop0: TYPE="squashfs"
/dev/sda2: PARTUUID="0657fd6d-a4ab-43c4-84e5-0933c84b4f4f"
/dev/sda3: PARTUUID="1cdf763a-5b4c-4dbf-99db-a056c504e8b2"
/dev/sda1: PARTUUID="c12a7328-f81f-11d2-ba4b-00a0c93ec93b"

Si bien no siempre es cierto para las etiquetas de partición, el uso de un UUID para identificar una partición en fstab proporciona una garantía de que el gestor de arranque no se confundirá al buscar un determinado volumen, incluso si se cambia el sistema de archivos o reescrito posteriormente. Usar los archivos de dispositivos de bloque predeterminados más antiguos (/dev/sd*N) para definir las particiones en fstab tiene su riesgo para los sistemas a los que se agregan o eliminan regularmente dispositivos de bloque SATA.

El nombrado de los dispositivos de bloque depende de una variedad de factores, entre ellos cómo y en qué orden se conectan los discos al sistema. Se podrían incluso mostrar en un orden diferente dependiendo de qué dispositivos detecta el núcleo en primer lugar en los momentos iniciales del proceso de arranque. Dicho esto, a menos que el administrador del sistema juegue constantemente con el orden de los discos, usar los nombres predeterminados de los dispositivos es un método simple y sencillo.

Acerca de fstab

En Linux, todas las particiones utilizadas por el sistema se deben listar en /etc/fstab. Este archivo contiene los puntos de montaje de esas particiones (dónde se encuentran en la estructura del sistema de archivos), cómo se deben montar y con qué opciones especiales (de forma automática o no, si los usuarios pueden montar o no, etc.)

Crear el archivo fstab

El archivo en/etc/fstab utiliza un sintaxis similar a una una tabla. Cada línea consta de seis campos, separados por espacios en blanco (espacios, tabuladores o una mezcla de ambos). Cada campo tiene su propio significado:

  1. El primer campo muestra el dispositivo de bloques o sistema de archivo remoto que debe ser montado. Varios tipos de identificadores de dispositivo están disponibles para nodos de dispositivo de bloques, incluyendo rutas al archivo especial de dispositivo, etiquetas e identificadores únicos (UUIDs) del sistema de archivo y etiquetas e identificadores únicos (UUIDs) de particiones.
  2. El segundo campo muestra el punto de montaje en el que la partición se debe montar.
  3. El tercer campo muestra el tipo de sistema de ficheros usado por la partición.
  4. El cuarto campo muestra las opciones de montaje usadas por mount cuando se quiere montar la partición. Como cada sistema de ficheros tiene sus propias opciones de montaje, se recomienda a los administradores de sistemas leer la página del manual de mount (man mount) para un listado completo. Las opciones de montaje múltiples se deben separar por comas.
  5. El quinto campo lo utiliza dump para determinar si la partición debe ser volcada o no. Esto generalmente se puede dejar a 0 (cero).
  6. El sexto campo lo utiliza fsck para determinar el orden en que los sistemas de ficheros se deben revisar en caso de que el sistema no se apagara correctamente. Para el sistema de ficheros raíz se debe definir a 1 mientras que para el resto debería ser 2 (o 0 si no se necesita comprobación del sistema de archivo).
Important
El archivo predeterminado /etc/fstab proporcionado en los archivos stage de Gentoo no es un archivo fstab válido, sino una plantilla que se puede usar para ingresar valores reales.
root #nano /etc/fstab

Sistemas DOS/BIOS obsoleto

Añadir las reglas que coinciden con el esquema de esquema de particionamiento decido anteriormente y añadir las reglas para dispositivos tales como lector(es) de CD-ROM, y por supuesto, si se utilizan otras particiones o unidades, añadirlos también.

Abajo se muestra un ejemplo más elaborado de un fichero /etc/fstab:


FILE /etc/fstabUn ejemplo completo de /etc/fstab para un sistema DOS/BIOS obsoleto
# Ajuste las diferencias de formato y/o particiones adicionales creadas en el paso "Preparación de los discos".
               defaults    0 2
   none         swap    sw                   0 0
   /                defaults,noatime              0 1

/dev/cdrom  /mnt/cdrom   auto    noauto,user          0 0

Sistemas UEFI

A continuación se muestra un ejemplo de un archivo /etc/fstab para un sistema que se iniciará mediante firmware UEFI:


FILE /etc/fstabUn ejemplo completo de /etc/fstab para un sistema UEFI
# Ajuste las diferencias de formato y/o particiones adicionales creadas en el paso "Preparación de los discos".
                    0 2
   none             sw                   0 0
   /                defaults,noatime              0 1

/dev/cdrom  /mnt/cdrom   auto    noauto,user          0 0
Note
Placeholder for architecture-specific fstab examples.

Cuando se utiliza auto en el tercer campo, hace que la orden mount averigüe el sistema de ficheros. Esto se recomienda para los medios extraíbles ya que se pueden crear con uno o más de un sistema de ficheros. La opción user en el cuarto campo permite que los usuarios que no sean root puedan montar el CD.

Para mejorar el rendimiento, la mayoría de los usuarios querrían agregar la opción de montaje noatime, lo que da como resultado un sistema más rápido ya que los tiempos de acceso no se registran (de todos modos, generalmente no son necesarios). Esto también se recomienda para sistemas con unidades de estado sólido (SSD). Es posible que los usuarios deseen considerar lazytime en su lugar.

Tip
Debido a la degradación del rendimiento, no se recomienda definir la opción de montaje discard en /etc/fstab. Por lo general, es mejor programar los descartes de bloques periódicamente mediante un programador de tareas como cron o un temporizador (systemd). Consulte Ejecuciones periódicas de fstrim para obtener más información.

Compruebe el fichero /etc/fstab y salga para continuar.

Información de la red

Es importante tener en cuenta que las siguientes secciones se proporcionan para ayudar al lector a configurar rápidamente su sistema para formar parte de una red de área local.

Para los sistemas que ejecutan OpenRC, una referencia más detallada para la configuración de red está disponible en la sección configuración de red avanzada, que se trata casi al final del manual. Es posible que los sistemas con necesidades de red más específicas deban revisarse primero allí y luego regresar aquí para continuar con el resto de la instalación.

Para una configuración de red systemd más específica, consulte la parte de redes del artículo systemd.

Hostname

Una de las elecciones que debe hacer el administrador del sistema es dar nombre a su PC. Esto parece bastante fácil, pero muchos usuarios tienen dificultades para encontrar el nombre apropiado para el host (hostname). Para poder avanzar, sepa que la decisión no es definitiva, se puede cambiar después. En los ejemplos a continuación, se usa el nombre de host tux.

Establecer hostname (OpenRC o systemd)

root #echo tux > /etc/hostname

systemd

Para configurar el hostname del sistema para un sistema que actualmente está "ejecutando" systemd, se puede utilizar la utilidad hostnamectl. Sin embargo, durante el proceso de instalación, se debe utilizar el comando systemd-firstboot (consulte más adelante en el manual).

Para establecer el nombre de host como "tux", se ejecutaría:

root #hostnamectl hostname tux

Vea la ayuda ejecutando hostnamectl --help o man 1 hostnamectl.

Red

Hay muchas opciones disponibles para configurar interfaces de red. Esta sección cubre solo algunos métodos. Elija el que parezca más adecuado según la configuración necesaria.

DHCP mediante dhcpd (con cualquier sistema de inicio)

En la mayoría de redes LAN opera un servidor DHCP. Si es este el caso, entonces se recomienda usar el programa dhcpd para obtener una dirección IP.

Para instalarlo:

root #emerge --ask net-misc/dhcpcd

Para habilitarlo y luego iniciar el servicio en sistemas OpenRC:

root #rc-update add dhcpcd default
root #rc-service dhcpcd start

Para habilitar el servicio en sistemas systemd:

root #systemctl enable dhcpcd

Con estos pasos completados, la próxima vez que arranque el sistema, dhcpcd debería obtener una dirección IP del servidor DHCP. Consulte el artículo Dhcpcd para obtener más detalles.

netifrc (OpenRC)

Tip
Esta es una forma particular de configurar la red usando Netifrc en OpenRC. Existen otros métodos para configuraciones más simples como Dhcpcd.
Configurar la red

Durante la instalación de Gentoo Linux, se configuró la red. Sin embargo, eso fue para el entorno vivo de instalación y no para el entorno instalado. Ahora se realiza la configuración de la red para el sistema de Gentoo Linux que se está instalando.

Note
Se puede obtener información más detallada sobre redes, incluyendo temas más avanzados como bonding, bridging, 802.1 Q VLANs o conexiones de red inalámbrica en la sección de configuración avanzada de la red.

Toda la información de red se recopila en /etc/conf.d/net. Utiliza una sencilla - pero no tan intuitiva - sintaxis. ¡No tema! Todo se explica a continuación. Hay disponible un ejemplo completamente comentado que abarca muchas configuraciones diferentes en /usr/share/doc/netifrc-*/net.example.bz2.

En primer lugar se debe instalar net-misc/netifrc:

root #emerge --ask --noreplace net-misc/netifrc

Por defecto se usa DHCP. Para que funcione, se debe instalar un cliente DHCP. Esto se describe más adelante cuando se describa la instalación de las herramientas del sistema necesarias.

Si la conexión de red se debe configurar con opciones específicas DHCP o porque no se utiliza DHCP en absoluto, entonces abra /etc/conf.d/net:

root #nano /etc/conf.d/net

Defina tanto config_eth0 como routes_eth0 para introducir información de la dirección IP y del enrutamiento:

Note
Esto asume que el interfaz de red se llama eth0. Esto, sin embargo, depende mucho del sistema. Se recomienda asumir que el interfaz se llama igual que cuando se nombra el interfaz arrancando desde los medios de instalación en caso de que éstos sean lo suficientemente recientes. Se puede encontrar más información en la sección Nombrado de las interfaces de red.
FILE /etc/conf.d/netDefinición de IP estática
config_eth0="192.168.0.2 netmask 255.255.255.0 brd 192.168.0.255"
routes_eth0="default via 192.168.0.1"

Para utilizar DHCP, se debe definir config_eth0:

FILE /etc/conf.d/netDefinición DHCP
config_eth0="dhcp"

Por favor, lea /usr/share/doc/netifrc-*/net.example.bz2 para obtener una lista de opciones de configuración adicionales. Asegúrese de leer también la página del manual de DHCP si necesita definir determinadas opciones.

Si el sistema tiene varias interfaces de red, entonces repita los pasos anteriores para config_eth1, config_eth2, etc.

Ahora guarde la configuración y salga para continuar.

Inicio automático de red en el arranque

Para que los interfaces de red se activen en el arranque, se necesita añadirlos al nivel de ejecución por defecto (default).

root #cd /etc/init.d
root #ln -s net.lo net.eth0
root #rc-update add net.eth0 default

Si el sistema dispone de varios interfaces de red, entonces se necesita crear los archivos net.* necesarios tal y como se hizo con net.eth0.

Si después de arrancar el sistema se descubre que el nombre de la interfaz de red (que actualmente está documentado como eth0) está equivocado, entonces tendremos que seguir los siguientes pasos para corregirlo:

  1. Actualizar el archivo /etc/conf.d/net indicando el nombre correcto de la interfaz (como enp3s0 o enp5s0 en lugar de eth0).
  2. Crear un nuevo enlace simbólico (como /etc/init.d/net.enp3s0).
  3. Eliminar el enlace simbólico antiguo (rm /etc/init.d/net.eth0).
  4. Añadir el nuevo enlace al nivel de ejecución por defecto (default).
  5. Eliminar el enalce anterior con rc-update del net.eth0 default.

El archivo hosts

Un importante próximo paso puede ser informar a este nuevo sistema sobre otros hosts en su entorno de red. Los nombres de host de red se pueden definir en el archivo /etc/hosts. Agregar nombres de host aquí permitirá la resolución de nombres de host a direcciones IP para hosts que no sean resueltos por el servidor de nombres.

root #nano /etc/hosts
FILE /etc/hostsRellenar la información de red
# Esto define el presente sistema y debe estar configurado
127.0.0.1     tux.reddecasa tux localhost
  
# Definiciones opcionales de sistemas adicionales en la red
192.168.0.5   juana.reddecasa juana
192.168.0.6   benito.reddecasa benito

Guarde y salga del editor para continuar.


Información del sistema

Contraseña del usuario root

Establezca la contraseña del usuario root con la orden passwd.

root #passwd

Se creará más adelante una cuenta de usuario normal para las operaciones diarias.

Configuración de inicio y arranque

OpenRC

Cuando se usa OpenRC con Gentoo, se utiliza /etc/rc.conf para configurar los servicios, el arranque y parada de un sistema. Abra etc/rc.conf y disfrute de todos los comentarios presentes en el archivo. Revise la configuración y cambie lo que sea necesario.

root #nano /etc/rc.conf

A continuación, abra /etc/conf.d/keymaps para gestionar la configuración del teclado. Edítelo para configurar y seleccionar el teclado correcto.

root #nano /etc/conf.d/keymaps

Tenga un cuidado especial la variable keymap. Si el mapa de teclado incorrecto está activado, entonces se producirán resultados extraños cuando tecleemos.

Para terminar, edite /etc/conf.d/hwclock para definir las opciones del reloj. Edítelo conforme a las preferencias personales.

root #nano /etc/conf.d/hwclock

Si el reloj hardware no está utilizando UTC, entonces es necesario definir clock="local" en el archivo, de lo contrario, el sistema podría mostrar un comportamiento de desfase en el reloj.

systemd

En primer lugar, se recomienda ejecutar systemd-machine-id-setup y luego systemd-firstboot, que preparará varios componentes del sistema para configurarlos correctamente para el primer arranque en el nuevo entorno de systemd. Al pasar las siguientes opciones, se le pedirá al usuario que establezca una configuración regional, zona horaria, nombre de host, contraseña de root y valores de shell de root. También asignará una ID de máquina aleatoria a la instalación:

root #systemd-machine-id-setup
root #systemd-firstboot --prompt

A continuación los usuarios deben ejecutar systemctl para restablecer todos los archivos de unidad instalados a los valores de política preestablecidos:

root #systemctl preset-all --preset-mode=enable-only

Es posible ejecutar todos los cambios preestablecidos, pero esto puede restablecer cualquier servicio que ya se haya configurado durante el proceso:

root #systemctl preset-all

Estos dos pasos ayudarán a garantizar una transición fluida desde el entorno live hasta el primer arranque de la instalación.






Bitácora del sistema

OpenRC

Algunas herramientas no están incluidas en el archivo stage3 porque varios paquetes proporcionan la misma funcionalidad. Ahora es el momento de que el usuario decida cual instalar.

La primera herramienta sobre la que tomar una decisión es el mecanismo de registro para el sistema. Unix y Linux tienen un excelente historial de capacidades de registro; si fuera necesario, todo lo que sucede en el sistema se podría registrar en un archivo de registro.

Gentoo ofrece varias utilidades de registro. Algunas de ellas son:

  • app-admin/sysklogd, que es el conjunto tradicional de demonios de bitácoras. La configuración por defecto de las bitácoras funciona sin problemas con solo instalarlo, por lo que ésta es una buena opción para usuarios que están aprendiendo.
  • app-admin/syslog-ng, una bitácora del sistema avanzada. Requiere una configuración adicional para cualquier situación distinta a la de registrarlo todo en un solo fichero de gran tamaño. Los usuarios más avanzados pueden elegir este paquete basándose en su potencial de registro, pero se debe recordar que una configuración adicional es necesaria para escenarios en los que el registro sea de cierta complejidad.
  • app-admin/metalog que es una bitácora del sistema altamente configurable.

Es posible que haya otras utilidades de registro del sistema disponibles a través del repositorio ebuild de Gentoo, ya que el número de paquetes disponibles aumenta diariamente.

Tip
Si se va a utilizar syslog-ng, se recomienda instalar y configurar a continuación logrotate, syslog-ng no proporciona ningún mecanismo de rotación para los archivos de registro. Sin embargo las versiones más nuevas (>= 2.0) de sysklogd manejan su propia rotación de registros.

Para instalar la bitácora del sistema de su elección, instálela con emerge. En OpenRC agréguela al nivel de arranque predeterminado usando rc-update. El siguiente ejemplo instala y activa app-admin/sysklogd como la utilidad syslog del sistema:

root #emerge --ask app-admin/sysklogd
root #rc-update add sysklogd default

systemd

Si bien se presenta una selección de mecanismos de registro para sistemas basados en OpenRC, systemd incluye un registrador integrado llamado servicio systemd-journald. El servicio systemd-journald es capaz de manejar la mayor parte de la funcionalidad de registro descrita en la sección anterior del registro del sistema. Es decir, la mayoría de las instalaciones que ejecutarán systemd como administrador del sistema y de servicios pueden "omitir de forma segura" la adición de utilidades syslog adicionales.

Consulte man journalctl para obtener más detalles sobre el uso de journalctl para consultar y revisar los registros del sistema.

Por varias razones, como sería el caso de reenviar registros a un servidoe central, puede ser importante incluir mecanismos de registro del sistema "redundantes" en un sistema basado en systemd. Esto es algo inusual para la audiencia típica del manual y se considera un caso de uso avanzado. Por lo tanto, no está cubierto por el manual.

Opcional: Demonio Cron

OpenRC

Aunque es opcional y no es necesario para todos los sistemas, es aconsejable instalar un demonio cron.

Un demonio cron ejecuta comandos en intervalos programados. Los intervalos pueden ser diarios, semanales o mensuales, una vez cada martes, una vez cada dos semanas, etc. Un administrador de sistema inteligente aprovechará el demonio cron para automatizar las tareas rutinarias de mantenimiento del sistema.

Todos los demonios cron admiten altos niveles de granularidad para las tareas programadas y, por lo general, incluyen la capacidad de enviar un correo electrónico u otra forma de notificación si una tarea programada no se completa como se esperaba.

Gentoo ofrece varios demonios cron posibles, incluyendo:

  • sys-process/cronie - cronie se basa en el cron original y tiene mejoras de seguridad y configuración como la capacidad de usar PAM y SELinux.
  • sys-process/dcron: este demonio cron ligero pretende ser simple y seguro, con las funciones suficientes para seguir siendo útil.
  • sys-process/fcron: un programador de comandos con capacidades extendidas sobre cron y anacron.
  • sys-process/bcron: un sistema cron más reciente diseñado teniendo en cuenta la seguridad en las operaciones. Para hacer esto, el sistema se divide en varios programas separados, cada uno responsable de una tarea separada, con comunicaciones estrictamente controladas entre las partes.

cronie

El siguiente ejemplo usa sys-process/cronie:

root #emerge --ask sys-process/cronie

Agregue cronie al nivel de ejecución predeterminado del sistema, que lo arrancará automáticamente al inicio:

root #rc-update add cronie default

Alternativa: dcron

root #emerge --ask sys-process/dcron

Si dcron es el agente cron con el que se proseguirá, se debe ejecutar un comando de inicialización adicional:

root #crontab /etc/crontab

Alternativa: fcron

root #emerge --ask sys-process/fcron

Si fcron es el controlador de tareas programadas seleccionado, se requiere un paso adicional tras emerge:

root #emerge --config sys-process/fcron

Alternativa: bcron

bcron es un agente cron más reciente con separación de privilegios incorporada.

root #emerge --ask sys-process/bcron

systemd

De manera similar al registro del sistema, los sistemas basados en systemd incluyen soporte para tareas programadas listas para usar en forma de "temporizadores". Los temporizadores systemd pueden ejecutarse a nivel de sistema o de usuario e incluir la misma funcionalidad que proporcionaría un demonio cron tradicional. A menos que sean necesarias capacidades redundantes, la instalación de un programador de tareas adicional, como un demonio cron, generalmente es innecesaria y se puede omitir de manera segura.

Opcional: Indexar Archivos

Para disponer de un índice en su sistema de archivos que proporcionará capacidades para la localización rápida de archivos, instale sys-apps/mlocate.

root #emerge --ask sys-apps/mlocate

Opcional: Shell de acceso remoto

Tip
La configuración predeterminada de opensshd no permite que root inicie sesión como usuario remoto. Cree un usuario no root y configúrelo adecuadamente para permitir el acceso posterior a la instalación si es necesario, o ajuste /etc/ssh/sshd_config para permitir root.

Para poder acceder al sistema de forma remota después de la instalación, sshd debe estar configurado para iniciarse en el arranque.

OpenRC

Para añadir el script de inicio sshd al nivel de ejecución por defecto en OpenRC:

root #rc-update add sshd default

Si se necesita acceso a la consola serie (que es posible en el caso de servidores remotos), se debe configurar agetty.

Descomente la sección de la consola serie en /etc/inittab:

root #nano -w /etc/inittab
# SERIAL CONSOLES
s0:12345:respawn:/sbin/agetty 9600 ttyS0 vt100
s1:12345:respawn:/sbin/agetty 9600 ttyS1 vt100

systemd

Para habilitar el servidor SSH, ejecute:

root #systemctl enable sshd

Para habilitar la compatibilidad con la consola serie, ejecute:

root #systemctl enable getty@tty1.service

Opcional: Completado de shell

Bash

Bash es el shell predeterminado para los sistemas Gentoo y, por lo tanto, la instalación de extensiones de completado puede ayudar a mejorar la eficiencia y la conveniencia para administrar el sistema. El paquete app-shells/bash-completion instalará completaciones disponibles para comandos específicos de Gentoo, así como muchos otros comandos y utilidades comunes:

root #emerge --ask app-shells/bash-completion

Después de la instalación, el completado de bash para comandos específicos se puede gestionar a través de eselect. Consulte la sección Integraciones de completados de Shell del artículo de bash para obtener más detalles.

Sincronización temporal

Es importante utilizar algún método de sincronización para el reloj del sistema. Esto generalmente se hace a través del protocolo y el software NTP. Existen otras implementaciones que utilizan el protocolo NTP, como Chrony.

Para usar Chrony, por ejemplo:

root #emerge --ask net-misc/chrony

OpenRC

En OpenRC, ejecute:

root #rc-update add chronyd default

systemd

En systemd, ejecute:

root #systemctl enable chronyd.service

Alternativamente, los usuarios de systemd pueden desear utilizar el sencillo cliente SNTP systemd-timesyncd que se instala de forma predeterminada.

root #systemctl enable systemd-timesyncd.service

Herramientas del Sistema de Archivos

Dependiendo de los sistemas de archivos utilizados, puede ser necesario instalar las utilidades del sistema de archivos requeridas (para verificar la integridad del sistema de archivos, (re)formatear sistemas de archivos adicionales, etc.). Tenga en cuenta que las herramientas del espacio de usuario para ext4 (sys-fs/e2fsprogs) ya están instaladas como parte del [{{Link|System set (Portage)|conjunto @system}.

La siguiente tabla enumera las herramientas a instalar si se necesitan determinadas herramientas del sistema de archivos en el entorno instalado.

Sistema de ficheros Paquete
XFS sys-fs/xfsprogs
ext4 sys-fs/e2fsprogs
VFAT (FAT32, ...) sys-fs/dosfstools
Btrfs sys-fs/btrfs-progs
ZFS sys-fs/zfs
JFS sys-fs/jfsutils

Se recomienda que sys-block/io-scheduler-udev-rules esté instalado para el correcto comportamiento del planificador con, por ejemplo, dispositivos nvme:

root #emerge --ask sys-block/io-scheduler-udev-rules
Tip
Para obtener más información acerca de los sistemas de archivo en Gentoo, echar un vistazo al articulo sistemas de archivos

Herramientas de Red

Si la red se configuró previamente en el paso Configurar el sistema y la configuración de la red está completa, entonces esta sección de 'herramientas de red' se puede omitir con seguridad. En ese caso, continúe con la sección sobre Configurar un cargador de arranque.

Instalar un cliente DHCP

Important
La mayoría de los usuarios necesitarán un cliente DHCP para conectarse a su red. Si no se instaló ninguno, es posible que el sistema no pueda conectarse a la red, lo que imposibilitará la descarga posterior de un cliente DHCP.

Un cliente DHCP obtiene automáticamente una dirección IP para una o más interfaces de red mediante scripts netifrc. Recomendamos el uso de net-misc/dhcpcd (ver también dhcpcd):

root #emerge --ask net-misc/dhcpcd

Opcional: Instalar un cliente PPPoE

Si se usa PPP para conectarse a internet, instale el paquete net-dialup/ppp:

root #emerge --ask net-dialup/ppp

Opcional: Instalar las herramientas de red inalámbricas

Si se va a conectar el sistema a una red inalámbrica, instale el paquete net-wireless/iw para redes abiertas o WEP networks y el paquete net-wireless/wpa_supplicant para redes WPA o WPA2. iw también es de utilidad para diagnósticos básicos y escaneo de redes inalámbricas.

root #emerge --ask net-wireless/iw net-wireless/wpa_supplicant

Ahora continúe con Configurar el cargador de arranque.






Note
Placeholder for architecture-specific bootloader installation

Reiniciar el sistema

Salga del entorno chroot y desmonte todas las particiones que continúen montadas. Luego escriba la orden mágica da inicio a la auténtica prueba final: reboot.

(chroot) livecd #exit
livecd~#cd
livecd~#umount -l /mnt/gentoo/dev{/shm,/pts,}
livecd~#umount -R /mnt/gentoo
livecd~#reboot

¡No olvide retirar la imagen live, de lo contrario puede ser arrancada de nuevo en lugar del sistema Gentoo recién instalado!

Una vez reiniciado en el nuevo entorno Gentoo, es aconsejable finalizar con Finalizando la instalación de Gentoo.






Administración del usuario

Añadir un usuario para uso cotidiano

Trabajar como root en un sistema Unix/Linux es peligroso y debe evitarse tanto como sea posible. Por tanto se recomienda encarecidamente añadir una o mas cuentas de usuario normal para el uso cotidiano del sistema.

Los grupos a los que pertenece el usuario definen que actividades puede realizar. La siguiente tabla muestra una lista de los grupos más importantes:

Grupo Descripción
audio Habilita cuentas de usuarios para acceder a los dispositivos de audio.
cdrom Habilita cuentas de usuarios para que puedan acceder de forma directa a dispositivos de lectura óptica.
floppy Habilita cuentas de usuarios para acceder directamente a dispositivos mecánicos antiguos conocidos como unidades de disquete. Este grupo generalmente no se utiliza en sistemas actuales.
games Habilita cuentas de usuarios para poder jugar. Vea también el grupo video a continuación.
portage Habilite cuentas para poder acceder a ciertos recursos disponibles para el grupo Portage. Esto es útil para el desarrollo de Gentoo y resolución de problemas.
usb Habilita cuentas de usuarios para acceder a los dispositivos USB.
video Habilita cuentas de usuarios para acceder al hardware de captura de vídeo y a la aceleración por hardware. Véase también el grupo games anterior.
wheel Permite que las cuentas de usuaris puedan utilizar el comando su ("usuario sustituto"), que permite cambiar a la cuenta root u otras cuentas. Para sistemas de usuario único que incluyen una cuenta root, es una buena idea agregar a este grupo el usuario normal principal.

Por ejemplo, para crear un usuario llamado larry que pertenezca a los grupos wheel, users y audio, acceda al sistema como root (solo root puede crear usuarios) y ejecute useradd:

Login:root
Password: (Introduzca la contraseña de root)

Al configurar contraseñas para cuentas de usuario normal, es una buena práctica de seguridad evitar el uso de la misma contraseña o una similar a la configurada para el usuario root.

Los autores del manual recomendaron utilizar una contraseña de al menos 16 caracteres de longitud, con un contenido exclusivo y completamente diferente a la del resto de usuarios del sistema.

root #useradd -m -G users,wheel,audio -s /bin/bash larry
root #passwd larry
Password: (Introduzca una contraseña para larry)
Re-enter password: (Repita la contraseña como comprobación)

Si alguna vez este usuario necesita realizar alguna tarea como root, puede utilizar su - para obtener temporalmente privilegios de root. Otra forma es utilizar el paquete sudo (app-admin/sudo) o la utilidad doas (app-admin/doas) los cuales, correctamente configurados, son muy seguros.

Limpieza de disco

Eliminación de archivos de instalación

Una vez finalizada la instalación de Gentoo y reiniciado el sistema, si todo ha ido bien, el archivo de stage y otros archivos de instalación - como archivos DIGEST, CONTENT o *.asc (firma PGP) - ahora se pueden eliminar de forma segura.

Los archivos se encuentran en el directorio / y se pueden eliminar con el siguiente comando:

root #rm /stage3-*.tar.*

¿Adónde ir desde aquí?

¿No está seguro de dónde ir desde aquí?. Hay muchos caminos a explorar... Gentoo proporciona a sus usuarios montones de posibilidades, y por lo tanto tiene montones de artículos documentados (y menos también menos documentados) para que sean explorados aquí en el wiki y en otros subdominios relacionados (leer la sección Gentoo online abajo).

Documentación adicional

Es importante señalar que, debido a la cantidad de opciones disponibles en Gentoo, la documentación proporcionada por el manual tiene un alcance limitado: se enfoca principalmente en los conceptos básicos para poner en marcha un sistema Gentoo y las actividades básicas de gestión del sistema. El manual excluye intencionalmente instrucciones sobre entornos gráficos, detalles sobre securización y otras tareas administrativas importantes. Dicho esto, hay más secciones del manual para ayudar a los lectores con funciones más básicas.

Definitivamente los lectores deben echar un vistazo a la siguiente parte del manual de Gentoo titulado Trabajando con Gentoo que explica como mantener el software actualizado, instalar paquetes adicionales de software, detalles sobre los ajustes USE, el sistema de inicio OpenRC y algunos otros elementos informativos relacionados con la gestión de un sistema Gentoo después de su instalación.

Además del manual, el lector debería animarse a explorar otros rincones del sitio wiki de Gentoo para encontrar documentación adicional proporcionada por la comunidad. El equipo wiki de Gentoo también ofrece una descripción general del tema de la documentación que ofrece una selección de artículos del wiki por categoría. Por ejemplo, se hace referencia a la guía sobre la localización para hacer el sistema mas parecido a su país (particularmente útil para los usuarios cuyo segundo idioma es el inglés).

La mayoría de los usuarios que usan escritorios configurarán entornos gráficos en los que trabajar de forma nativa. Hay muchos 'meta' artículos mantenidos por la comunidad para entornos de escritorio (DEs) y administradores de ventanas (WMs). Los lectores deben tener en cuenta que cada DE requerirá pasos de configuración ligeramente diferentes, lo que alargará y agregará complejidad al arranque.

Existen muchos otros Meta-artículos para proporcionar a nuestros lectores una visión general de alto nivel del software disponible dentro de Gentoo.

Gentoo en línea

Important
Los lectores deben tener en cuenta que todos los sitios oficiales de Gentoo en línea están dirigidos por el código de conducta de Gentoo. Ser un miembro activo de la comunidad Gentoo es un privilegio no un derecho y los usuarios deben tener en cuenta que el código de conducta está ahí por alguna razón.

Con la excepción de la red Intenet Relay Chat (IRC) alojado en Libera.Chat y las listas de correo, la mayoría de los sitios web de Gentoo requieren del uso de una cuenta en cada sitio para realizar preguntas, abrir una discusión o informar de un error.

Foros e IRC

Todos los usuarios son siempre bienvenidos a nuestros Foros de Gentoo o a alguno de nuestros canales de internet relay chat. Es fácil buscar en los foros para comprobar si se ha descubierto algún problema en una instalación nueva de Gentoo en el pasado y si ha sido resuelta después de ofrecer algunos comentarios. La cantidad de usuarios que experimentan problemas cuando instalan Gentoo por primera vez es sorprendente. Se recomienda a los usuarios que busquen en los foros y en el wiki antes de pedir ayuda en los canales de soporte de Gentoo.

Listas de correo

Se dispone de varias listas de correo para los miembros de la comunidad que prefieran pedir ayuda o consejos a través del correo electrónico en lugar de crear una cuenta de usuario en los foros o en IRC. Los usuarios deben seguir las instrucciones para suscribirse a las listas de correo que deseen.

Incidencias

A veces, después de revisar la wiki, buscar en los foros y buscar apoyo en el canal de IRC o en las listas de correo, no se encuentra una solución al problema. Generalmente, esta es una señal para abrir un error en el sitio web Bugzilla de Gentoo.

Guía de desarrollo

Los lectores que deseen aprender más sobre el desarrollo de Gentoo pueden consultar la Guía de desarrollo. Esta guía proporciona instrucciones sobre cómo escribir ebuilds, trabajar con eclasses y proporciona definiciones para muchos conceptos generales detrás del desarrollo de Gentoo.

Consideraciones finales

Gentoo es una distribución robusta, flexible y excelentemente mantenida. A la comunidad de mantenedores le encantaría escucha su opinión acerca de como hacer de Gentoo una distribución incluso mejor.

Como recordatorio, cualquier comentario sobre este manual debe seguir las pautas detalladas en la sección ¿Cómo puedo mejorar el Manual? al principio del manual.

Esperamos que nuestros usuarios elijen implementar Gentoo para cubrir sus necesidades y caso únicos.