You are on page 1of 88

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

Manuales Gentoo Linux/x86


Sven Vermeulen Autor Grant Goodyear Autor Roy Marples Autor Daniel Robbins Autor Chris Houser Autor Jerry Alexandratos Autor Seemant Kulleen Desarrollador Gentoo x86 Tavis Ormandy Desarrollador Gentoo Alpha Jason Huebel Desarrollador Gentoo AMD64 Guy Martin Desarrollador Gentoo HPPA Pieter Van den Abeele Desarrollador Gentoo PPC Joe Kallar Desarrollador Gentoo SPARC John P. Davis Editor Pierre-Henri Jondot Editor Eric Stockbridge Editor Rajiv Manglani Editor Jungmin Seo Editor Stoyan Zhekov Editor Jared Hudson Editor Colin Morey Editor Jorge Paulo Editor Carl Anderson Editor Jon Portnoy Editor Zack Gilburd Editor Jack Morgan Editor Benny Chuang Editor Erwin Editor Joshua Kinard Editor Tobias Scherbaum Editor Xavier Neys Editor Gerald J. Normandin Jr. Revisor Donnie Berkholz Revisor Ken Nowack Revisor Lars Weiler Contribuidor John Christian Stoddart Traductor Jos Luis Rivero Traductor Pgina actualizada 12 de noviembre, 2012 Contenido: Instalando Gentoo En esta parte aprender cmo instalar Gentoo en su sistema. 1. Acerca de la instalacin Gentoo Linux Este captulo presenta el mtodo de instalacin documentado en este manual. 2. Escoger el medio de instalacin adecuado Se puede instalar Gentoo de muchas maneras diferentes. Este captulo explica cmo instalar Gentoo usando el CD de Instalacin mnimo. 3. Conguracin de su red Para poder bajar las fuentes ms actuales, debe congurar la red. 4. Preparando los discos Para poder instalar Gentoo, deber crear las particiones necesarias. Este captulo describe como particionar un disco para uso futuro. 5. Instalando los archivos de instalacin Gentoo Las instalaciones Gentoo funcionan con un archivo stage3. En este captulo describimos como descomprimir el archivo stage3 y congurar Portage. 6. Instalando el sistema base de Gentoo Luego de instalar y congurar el stage3, el resultado eventual es que tiene un sistema base Gentoo a su disposicin. Este captulo describe cmo progresar hacia este estado. 7. Congurando el kernel El ncleo Linux es el eje de cada distribucin. Este captulo explica cmo congurarlo. 8. Congurando su sistema Har falta modicar algunos archivos importantes de conguracin. En este captulo pasaremos revista a estos archivos y explicaremos como proceder.

1 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

9. Instalando herramientas necesarias para el sistema Tal como hemos mencionado anteriormente, Gentoo se trata de poder escoger. En este captulo ayudaremos a escoger e instalar algunas herramientas importantes. 10. Congurando el gestor de arranque Existen varios gestores de arranque para la arquitectura x86. Cada uno tiene su propia conguracin. Procederemos paso a paso al congurar el gestor de arranque segn sus necesidades. 11. Finalizando su instalacin Gentoo Estamos casi listos. Crearemos uno (o ms) usuarios para el sistema. 12. Y ahora qu? Y ahora que tenemos un sistema Gentoo, qu sigue? Trabajando con Gentoo Aprenda cmo trabajar con Gentoo: instalacin de software, conguracin de variables, cambiando el comportamiento del sistema Portage, etc. 1. Introduccin al sistema Portage Este captulo explica los pasos "sencillos" que un usuario denitivamente necesita saber para mantener el software en su sistema. 2. Los parmetros USE Los parmetros USE son un aspecto muy importante de Gentoo. En este captulo, aprender a trabajar con ellos y entender cmo los parmetros USE interactan con su sistema. 3. Caractersticas de Portage Descubra las caractersticas de Portage, como el soporte para la compilacin distribuida, ccache y ms. 4. Scripts de arranque Gentoo usa un formato especial de guiones de inicio, que, entre otras caractersticas permite decisiones basadas en dependencias y guiones virtuales. Este captulo explica todos estos aspectos y explica cmo trabajar con estos guiones. 5. Variables de entorno Con Gentoo puede fcilmente manejar las variables de entorno del sistema. Este captulo explica como hacerlo, adems de describir las variables usadas ms frecuentemente. Trabajando con Portage "Trabajando con Portage" cubre en profundidad la herramienta de manejo de software de Gentoo, el sistema Portage. 1. Archivos y directorios Una vez que quiera conocer a Portage en profundidad, har falta saber donde almacena sus archivos y datos. 2. Conguracin por medio de variables Portage es completamente congurable por medio de diversas variables que pueden ajustarse en un archivo de conguracin o como variable de entorno. 3. Mezcla de ramales de software Gentoo permite el uso de software en distintos ramales, dependiendo de su estabilidad o de su soporte por arquitectura. "Mezcla de ramales de software" informa como estos estos pueden ser congurados y como redenir esta separacin de manera individual. 4. Herramientas adicionales de portage Portage trae algunas herramientas adicionales que sirven para mejorar su experiencia con Gentoo an ms. Siga adelante para descubrir como usar dispatch-conf y otras herramientas. 5. Divergiendo del rbol ocial "Divergiendo del rbol ocial" proporciona algunos trucos acerca de como usar su propio rbol Portage, como sincronizar solo las categoras que le interesa, inyeccin de paquetes y ms. 6. Caractersticas avanzadas de Portage A medida que transcurre el tiempo, Portage evoluciona y madura cada vez ms. Continuamente se agrega funcionalidad adicional - en gran parte dirigida hacia usuarios avanzados. Esta seccin detallar algunas de estas caractersticas especcas. Conguracin de Redes en Gentoo Una gua amplia para trabajar con redes en Gentoo. 1. Inicindonos Esta es una gua para poner a funcionar rpidamente el interfaz de red en la mayora de situaciones comunes. 2. Conguracin Avanzada Aqu aprenderemos como funciona la conguracin - debe estar enterado de esto antes de aprender sobre redes modulares. 3. Trabajo Modular con Redes Gentoo permite un trabajo exible con la red - aqu explicamos como escoger diferentes clientes DHCP, congurar la unin de interfaces, hacer puentes, redes virtuales (VLANs) y ms. 4. Redes Inalmbricas Las redes inalmbricas pueden ser truculentas. Esperamos ponerlas a funcionar! 5. Agregando Funcionalidad Si quiere aventurarse, puede agregar sus propias funciones para trabajar con redes. 6. Manejo de Redes

2 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

Para usuarios de computadores porttiles o los que mudan su computador de red en red.

A. Instalando Gentoo
1. Acerca de la instalacin Gentoo Linux
1.a. Introduccin
Bienvenido!
Primero de todo, bienvenido/a a Gentoo. Est a punto de entrar en un mundo de exibilidad y rendimiento. Gentoo es la exibilidad en s. Cuando instalas Gentoo, esto queda claro varias veces, puede elegir cunto quieres compilar tu mismo, cmo instalar Gentoo, que gestor de registro preeres, etc. Gentoo es una metadistribucin moderna, rpida, con un diseo limpio y exible. Gentoo est hecha alrededor del software libre y no oculta a sus usuarios qu hay bajo la alfombra. Portage, el sistema de mantenimiento de paquetes que usa Gentoo, est escrito en Python, por lo que el cdigo fuente es fcil de visualizar y modicar. El sistema de paquetes de Gentoo se basa en el cdigo fuente (aunque tambin soporta paquetes precompilados) y para congurar Gentoo se utilizan archivos de texto plano. En otras palabras, abierto a cualquiera. Es muy importante que entienda que la exibilidad es lo que hace que Gentoo funcione. Intentamos no forzarle a entrar en algo que no le guste. Si cree en algn momento que lo estamos haciendo mal, por favor, enve su opinin.

Cmo est estructurada la instalacin?


La instalacin de Gentoo puede verse como un procedimiento de 10 pasos, los correspondientes a los captulos 2 a 11. Cada paso da como resultado un cierto estado: Tras el paso 1, te encontrar en un entorno funcional preparado para instalar Gentoo Despus del paso 2, la conexin a Internet estar funcionando y lista para instalar Gentoo. Tras el paso 3, sus discos duros estarn preparados para alojar tu instalacin de Gentoo Tras el paso 4, el entorno de instalacin estar preparado y se encontrar dentro de un entorno chroot. Despus del paso 5, los paquetes principales, que son los mismos en toda instalacin de Gentoo, estarn instalados Tras el paso 6, el ncleo Linux estar compilado. Despus del paso 7, la mayora de los archivos de conguracin de tu sistema Gentoo estarn preparados Tras el paso 8, las herramientas de sistema necesarias (podr elegirlas de una hermosa lista) estn instaladas. Al nalizar el paso 9, el gestor de arranque elegido estar instalado y congurado y estar dentro de su nueva instalacin de Gentoo. Tras el paso 10, se encontrar dentro de su nueva Gentoo. Cuando se le pide una eleccin especial, intentamos explicar lo mejor posible los pros y contras. Tambin propondremos una opcin por defecto, identicada con "Por defecto:" en el ttulo. Las otras posibilidades se titulan "Alternativa:". Pero no crea que la opcin por defecto es la que recomendamos. Es la que pensamos que la mayora de usuarios van a utilizar. Algunas veces se puede seguir un paso opcional. Estos pasos son marcados como "Opcional: " y no son necesarios para instalar Gentoo. Sin embargo, algunos pasos opcionales dependen de una decisin tomada previamente. Le informaremos cuando se d el caso, tanto cuando tome la decisin, como cuando se describa el paso opcional.

De qu opciones dispongo?
Puede instalar Gentoo de diferentes formas. Puede descargar e instalar uno de nuestros CDs de instalacin, desde otra distribucin, desde un CD de arranque ajeno a Gentoo (como Knoppix), desde un arranque por red, desde un disquete de arranque,etc. Este documento abarca la instalacin utilizando un CD de instalacin de Gentoo o, en algunos casos, instalacin por red. La instalacin asume que quiere instalar la ltima versin de cada paquete.
Nota: Para encontrar ayuda acerca de otros procedimientos de instalacin, incluyendo el uso de CDs ajenos a Gentoo, por favor, lea nuestra Gua de Instalacin Alternativa.

Si quiere realizar una instalacin sin conexin a la red, debera leer los Manuales Gentoo 2008.0 el cual contiene las instrucciones de instalacin para un entorno sin conexin a la red. Tambin tenga en cuenta que, si est planeando utilizar GRP (Gentoo Reference Platform, una coleccin de paquetes precompilados que pueden ser utilizados justo despus de la instalacin de Gentoo), debe seguir las instrucciones correspondientes a los Manuales Gentoo 2008.0 sin conexin a la red. Tambin ofrecemos un documento sobre Consejos y trucos en la instalacin de Gentoo que tambin puede ser til. Si es un usuario Gentoo experimentado y simplemente necesita una breve lista de comprobacin sobre la instalacin, lea libremente la

3 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

Gua de Instalacin Rpida, disponible en nuestros Recursos de Documentacin si su arquitectura tiene este documento disponible. Tambin existen otras posibilidades: puede compilar el sistema completo desde el principio o utilizar un entorno pre-compilado para tener el sistema listo en poco tiempo. Y, por supuesto, tambin hay soluciones intermedias con las cuales no se compila todo el sistema pero se empieza desde un sistema bastante completo.

Problemas?
Si tiene algn problema con la instalacin (o con el documento de instalacin), por favor, visite nuestro Sistema de seguimiento de errores y compruebe si el error es conocido. Si no lo es, por favor cree un informe sobre l para que podamos encargarnos de l. No tenga miedo de los desarrolladores que estn asignados a sus informes, normalmente no se comen a nadie. Acurdese que, a pesar de que el documento que est leyendo es especco de la arquitectura, est tambin contiene referencias a otras arquitecturas. Esto es as porque el manual de Gentoo tiene partes extensas de cdigo que son comunes para todas las arquitecturas (para evitar duplicar esfuerzos y el desgaste de los recursos de desarrollo). Intentaremos reducir esto al mnimo para evitar la confusin. Si no est seguro que el problema es de usuario (algn error que haya cometido al despistarse y no leer la documentacin cuidadosamente) o un problema de software (algn error que ha cometido despistndose al probar la instalacin y/o documentacin), es libre de entrar en #gentoo-es en irc.freenode.net. Por supuesto, es bienvenido de todas formas :) Si tiene cualquier pregunta concerniente a Gentoo, eche un vistazo a las Preguntas de Uso Frecuente, disponibles en la Documentacin de Gentoo. Tambin puede mirar los FAQs en nuestros foros. Si no encuentras la respuesta aqu, pregunta en #gentoo-es, nuestro canal IRC en irc.freenode.net. S, algunos de nosotros somos frikis que an usan el IRC :-)

2. Escoger el medio de instalacin adecuado


2.a. Requisitos de Hardware
Introduccin
Antes de empezar, enumeraremos los requerimientos de hardware necesarios para instalar con xito Gentoo en su mquina.

Requisitos de Hardware
Minimal CD CPU Memoria Espacio en disco Espacio de intercambio
i486 o superior 256 MB

LiveCD
i686 o superior 512 MB

2.5 GB (no incluye el espacio de intercambio) Al menos 256 MB

2.b. Los CDs de instalacin de Gentoo


Introduccin
Los CDs de instalacin de Gentoo son CDs arrancables que contienen un entorno Gentoo auto-contenido. Permiten arrancar Linux desde el CD. Durante el proceso de arranque se detecta el hardware y se cargan los controladores apropiados. Estos discos son mantenidos por los desarrolladores de Gentoo. Todos los CDs de instalacin le permiten arrancar, congurar la red, inicializar las particiones y empezar a instalar Gentoo desde Internet.

CD Minimal de instalacin Gentoo


El CD Minimal de instalacin se conoce cmo install-x86-minimal-<release>.iso y solo necesita cerca de 140 MB de espacio en disco. Puede utilizar este CD para instalar Gentoo, pero nicamente con una conexin activa a Internet.

LiveDVDs de Gentoo Linux


Cada seis meses (aproximadamente), el proyecto Gentoo Ten realiza un DVD especial que se puede utilizar para instalar Gentoo. Las instrucciones ms abajo en este captulo tratan acerca de los CDs mnimos de instalacin por lo que stos puede variar un poco. Sin embargo, el LiveDVD (o cualquier otro entorno Linux arrancable) permite obtener un smbolo de espera de rdenes de root, invocando simplemente sudo su - o sudo -i en un terminal.

El archivo comprimido (tarball) Stage3


Un archivo comprimido stage3 contiene un entorno Gentoo mnimo, que permite continuar la instalacin de Gentoo con las instrucciones de este manual. Anteriormente, el manual de Gentoo describa la instalacin utilizando uno de los tres archivos de stage. Aunque Gentoo sigue ofreciendo los archivos stage1 y stage2, el mtodo de instalacin ocial utiliza el archivo stage3. Si est interesado en llevar a cabo la instalacin de Gentoo utilizando stage1 o stage2, por favor lea las preguntas frecuentes sobre

4 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86


Cmo instalo Gentoo utilizando un archivo stage1 o stage2?

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

Los tarballs de stage3 puede descargarse desde ${release-dir/}current-stage3/ en cualquiera de nuestros servidores rplica ociales y no se proporcionan con el LiveCD.

2.c. Descargar, Grabar y Arrancar un CD de instalacin Gentoo


Descargar y Grabar los CDs de instalacin Gentoo
Ha elegido usar un CD de instalacin Gentoo. Empezaremos por descargar y grabar el CD que eligi. Ya hablamos anteriormente de los distintos CD de instalacin disponibles, pero dnde podemos encontrarlos? Puede descargar cualquiera de los CDs desde uno de nuestros servidores rplica. Los CD de instalacin se encuentran en el directorio releases/x86/autobuilds/current-iso/. Dentro del directorio encontrar los llamados archivos ISO. Estos son imgenes de CD completas que puede grabar en un CD-R. Si tiene dudas de que el archivo que se ha descargado est corrupto, puede vericar su suma de control SHA-2 y compararlo con la suma SHA-2 que nosotros proporcionamos (por ejemplo, install-x86-minimal-<release>.iso.DIGESTS). Puede comprobar la suma SHA-2 con la herramienta sha512sum en Linux/Unix o File Checksum Tool en Windows. Otra manera de vericar la validez de la descarga es usar GnuPG para revisar la rma criptogrca que proporcionamos (el nombre del archivo termina con .asc). Descargue el archivo de rma y obtenga las claves pblicas cuyos identicadores puede encontrar en el sitio del proyecto de ingeniera de entregas (releases).
Listado de Cdigo 3.1: Obtener la clave pblica (... Sustituya los identificadores de las claves por aqullos mencionados en el sitio de ingeniera de entregas ...) $ gpg --keyserver subkeys.pgp.net --recv-keys 96D8BF6D 2D182910 17072058

Ahora vericamos la rma:


Listado de Cdigo 3.2: Vericar los archivos (Verificar la firma criptogrfica) $ gpg --verify <downloaded iso.DIGESTS.asc> (Verificar la suma de control) $ sha1sum -c <downloaded iso.DIGESTS.asc>

Para grabar el o los ISOs descargados, debe seleccionar grabar/quemar sin formato. Cmo hacerlo depende del programa. Aqu hablaremos de cdrecord y K3B; puede encontrar mayor informacin en las Preguntas de Uso Frecuentes sobre Gentoo. Con cdrecord, simplemente escriba cdrecord dev=/dev/hdc (reemplace /dev/hdc con la ruta de su unidad CD-RW). Con K3B, seleccione Herramientas > Grabar Imagen CD. Luego busque el archivo ISO dentro del rea 'Imagen a Grabar'. Por ltimo presione el botn comenzar.

Arrancar el CD de instalacin
Una vez que ha grabado sus CDs de instalacin, es hora de arrancarlos. Retire todos los CD de sus unidades, reinicie el sistema y entre en el BIOS. Esto se logra por lo general oprimiendo la tecla Supr, F1 o Esc, dependiendo del BIOS. Dentro del BIOS, cambie el orden de arranque para que intente arrancar primero desde el CD-ROM. Regularmente se encuentra dentro de "CMOS Setup". Si no lo hace, su sistema arrancar desde el disco duro e ignorar el CD-ROM. Coloque el CD de instalacin en la unidad CD-ROM y reinicie. Deber ver un smbolo de espera de rdenes. En esta pantalla puede oprimir la tecla Intro para empezar el proceso de arranque con las opciones predenidas, o arrancar el CD de instalacin con opciones personales especicando un ncleo seguido por las opciones de arranque y luego oprimir la tecla Intro. Cuando se muestra el smbolo de espera de rdenes, se tiene la opcin de mostrar los ncleos disponibles ( F1) y las opciones de inicio (F2). Si no se realiza ninguna seleccin en 15 segundos (sea mostrar informacin o arrancar un ncleo) el LiveCD optar por iniciar desde disco. Esto permite a las instalaciones reiniciar e intentar usar el entorno instalado sin tener que quitar el CD de su bandeja (algo que ser de gran utilidad en instalaciones remotas). Ahora que hablamos de especicar un ncleo, en nuestros CDs de instalacin, ofrecemos varios de ellos. El ncleo por defecto es gentoo. Otros ncleos son especcos para algunas necesidades de hardware y las variantes -nofb deshabilitarn el framebuer. Ms adelante encontrar una breve descripcin de los ncleos disponibles:
Ncleo
gentoo gentoo-nofb memtest86

Descripcin
El ncleo 2.6 predeterminado con soporte para mltiples CPUs Igual que gentoo pero sin soporte para framebuer Para vericar su memoria RAM para errores

Tambin puede pasarle opciones al ncleo. Estas representan conguraciones opcionales que puede activar o desactivar.

5 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86


Opciones hardware:

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

acpi=on Esta opcin carga ACPI y adems provoca que el demonio acpid arranque cuando se inicia el CD. Esto solamente es necesario si nuestro sistema necesita ACPI para funcionar correctamente. No es necesario para el soporte Hyperthreading (Multihilo). acpi=o Desactiva ACPI por completo. Esto es til en algunos sistemas antiguos, y tambin es un requisito para utilizar APM. Esto deshabilita el soporte Hyperthreading de su procesador. console=X Activa el acceso a una consola serie desde el CD. La primera opcin es el dispositivo, normalmente ttyS0 en x86, seguido de las opciones de conexin separadas por comas. Las opciones por defecto son: 9600,8,n,1. dmraid=X Permite el envo de opciones al dispositivo de mapeo del subsistema RAID. Las opciones deben ir entre comillas dobles. doapm Carga el soporte para el controlador APM. Necesita que tambin se utilice acpi=o. dopcmcia Carga el soporte para el hardware PCMCIA y Cardbus y adems provoca que cardmgr de pcmcia se arranque al iniciar el CD. Esto solamente es necesario cuando arranque desde un dispositivo PCMCIA/Cardbus. doscsi Esto carga el soporte de la mayora de controladoras SCSI. Tambin es necesario para casi todos los dispositivos USB, ya que utilizan el subsistema SCSI del ncleo. sda=stroke Esto le permite particionar el disco entero aunque su BIOS se incapaz de gestionar discos grandes. Esta opcin solamente se utiliza para ordenadores con BIOS antiguas. Sustituya sda por el dispositivo que necesite esta opcin. ide=nodma Fuerza la desactivacin de DMA en el ncleo y es necesario para algunos chipsets IDE y tambin para algunos drivers de CDROM. Si el sistema sufre problemas leyendo desde el CDROM IDE, pruebe esta opcin. Esto evita tambin que la conguracin de hdparm se ejecute. noapic Desactiva el controlador de interrupciones APIC (Advanced Programmable Interrupt Controller) que est presente en placas nuevas. Se sabe que provoca algunos errores con el hardware antiguo. nodetect Desactiva toda la deteccin automtica que realiza el CD, incluyendo la deteccin de dispositivos y DHCP. Esto es til para depurar errores cuando falla un CD o un driver. nodhcp Deshabilita DHCP en las tarjetas de red detectadas. Esto es til para redes nicamente con direcciones estticas. nodmraid Desactiva el soporte para el dispositivo de mapeo RAID, como por ejemplo el que se utiliza en placas con controladores RAID IDE/SATA. norewire Desactiva la carga de mdulos Firewire. Solamente es necesario si el hardware Firewire est causando algn tipo de problema con el arranque del CD. nogpm Desactiva el soporte gpm de ratn para consola. nohotplug Desactiva la carga de los guiones de inicio de hotplug y coldplug durante el arranque. Esto es til para depurar los fallos en el CD o el driver. nokeymap Deshabilita la seleccin del mapa de teclado que se emplea para seleccionar los teclados apropiados que no son US. nolapic Deshabilita el APIC local en los ncleos monoprocesador. nosata Desactiva la carga de los mdulos Serial ATA. Esto es til si el sistema tiene problemas con el subsistema SATA. nosmp Desactiva SMP, o Multiproceso Simtrico (Symmetric Multiprocessing), en los ncleos con SMP activo. Esto es til para la depuracin de errores relacionados con SMP en algunos drivers y placas base. nosound Desactiva el soporte de sonido y la conguracin del volumen. til para sistemas donde el sonido cause problemas. nousb Desactiva la carga automtica de mdulos USB. til para depurar errores relacionados con USB. slowusb Aade algunas pausas adicionales en el proceso de arranque para los CDROMs USB ms lentos, como el IBM BladeCenter. Administracin de Volmenes/Dispositivos: dolvm Activa el soporte para la administracin lgica de volmenes. Otras opciones: debug

6 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

Activa el cdigo de depuracin. Esto podra ser un poco lioso, ya que muestra muchos datos por pantalla. docache Esto guarda en cach la parte completa del entorno de ejecucin del CD en RAM, lo cual le permite desmontar /mnt/cdrom y montar otro CDROM. Esta opcin requiere que disponga (al menos) del doble de memoria RAM libre que el tamao que tiene CD. doload=X Esto indica al ramdisk inicial que cargue el mdulo que se indica as como las dependencias. Sustituya X por el nombre del mdulo. Se pueden indicar varios mdulos en una lista separados por medio de comas. dosshd Inicia sshd durante el arranque, lo cual es muy til para instalaciones remotas o sin atencin permanente. passwd=foo Congura lo que venga despus del igual como la contrasea de root, la cual ser necesaria para dosshd ya que desactivamos la contrasea de root por defecto. noload=X Esto indica al ramdisk inicial que no realice la carga de un determinado mdulo que podra estar causando problemas. La sintaxis es la misma que doload. nonfs Desactiva la ejecucin de portmap/nfsmound durante el arranque. nox Esto provoca que el LiveCD no cargue automticamente las X, dejndole en la lnea de comandos. scandelay Provoca que el CD se detenga 10 segundos durante ciertos periodos del arranque para permitir que se inicien los dispositivos lentos y estn listos para utilizarse. scandelay=X Permite especicar un determinado retardo, en segundos, durante ciertos periodos del arranque para permitir a los dispositivos lentos que se inicialicen y estn listos para usarse. Se sustituye X por el nmero de segundos de la pausa.
Nota: El CD comprobar las opciones "no*" antes que las opciones "do*", as que puede sobreescribir cualquier opcin en el orden exacto en que las especique.

Ahora arranque su CD, seleccione un ncleo (si no est contento con el ncleo predeterminado gentoo) y las opciones de arranque. Por ejemplo, aqu le mostramos como arrancar el ncleo gentoo, con el parmetro dopmcia:
Listado de Cdigo 3.3: Arrancar un CD instalacin boot: gentoo dopcmcia

Despus ver otra pantalla de arranque y una barra de progreso. Si est instalando Gentoo en un sistema con un teclado no americano, asegrese de pulsar Atl-F1 para cambiar al modo "verbose" y seguir el cursor. Si no se hace ninguna seleccin en 10 segundos, la opcin predenida (teclado americano) ser la utilizada y el proceso de arranque continuar. Cuando se complete el proceso de arranque, automticamente se registrar en el Gentoo Linux "Live" como "root", el super usuario. Tendr el indicador del root ("#") en la consola actual y tambin podr cambiarse a otras consolas presionando Alt-F2, Alt-F3 y Alt-F4. Para regresar a la consola en la que empez presione Alt-F1. Contine ahora Congurando Hardware Adicional.

Congurando Hardware Adicional


Cuando arranca el CD de instalacin, trata de detectar todos los dispositivos de hardware y cargar los mdulos apropiados en el kernel para soportar este hardware. En la gran mayora de casos, hace muy buen trabajo. Sin embargo, en algunos casos puede que no cargue automticamente los mdulos del kernel necesarios. Si falla la auto-deteccin PCI con algn hardware de su sistema, trate de cargar el mdulo apropiado manualmente. En el siguiente ejemplo trataremos de cargar el mdulo 8139too (que da soporte a ciertos tipos de interfaces de red):
Listado de Cdigo 3.4: Cargar mdulos del kernel # modprobe 8139too

Opcional: Cuentas de Usuarios


Si planea darle a otras personas acceso a su entorno de instalacin o si quiere platicar con alguien usando irssi sin privilegios de root (por razones de seguridad), har falta crear las cuentas de usuario necesarias y cambiar la contrasea de root. Para cambiar la contrasea de root, use passwd:
Listado de Cdigo 3.5: Cambiar la contrasea de root # passwd New password: (Escriba su nueva contrasea) Re-enter password: (Escrbala de nuevo)

7 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

Para crea una cuenta de usuario, primero escribimos sus credenciales, y luego su contrasea. Se usan useradd y passwd para estas tareas. En el siguiente ejemplo, crearemos un usuario llamado "juan".
Listado de Cdigo 3.6: Crear una cuenta de usuario # useradd juan # passwd juan New password: (Escriba la contrasea de juan) Re-enter password: (Escriba otra vez la contrasea de juan)

Puede cambiar su identicador de usuario desde root para usar la del nuevo usuario usando su:
Listado de Cdigo 3.7: Cambiar de usuario # su - juan

Opcional: Viendo la documentacin mientras se hace la instalacin


Si quiere ver el manual de Gentoo durante la instalacin, asegrese de haber creado una cuenta de usuario (consulte Opcional: Cuentas de Usuarios). Luego presione Alt-F2 para ir a un nuevo terminal e ingrese al sistema. Puede ver el manual usando links, pero solo despus de haber completado el captulo Congurar su red (de lo contrario no podr usar Internet para ver el documento):
Listado de Cdigo 3.8: Ver la Documentacin en Lnea # links http://www.gentoo.org/doc/es/handbook/handbook-x86.xml

Puede regresar a la consola original presionando Alt-F1.

Opcional: Iniciar el Demonio SSH


Si quiere permitirle a otros usuarios el acceso a su mquina durante la instalacin de Gentoo (quiz porque esos usuarios le vayan a ayudar, o incluso lo hagan por usted), necesitar crear una cuenta de usuario para ellos e incluso darles la contrasea de root (slo si confa totalmente en ese usuario). Para arrancar el demonio SSH, ejecute el siguiente comando:
Listado de Cdigo 3.9: Iniciar el demonio SSH # /etc/init.d/sshd start

Para poder usar sshd, primero necesita congurar su red. Contine en el captulo Congurar su Red.

3. Conguracin de su red
3.a. Auto Deteccin de la Red
Es posible que simplemente funcione?
Si su sistema est conectado a una red Ethernet con un servidor DHCP, es muy probable que la conguracin de red se haya detectado automticamente. En ese caso, debera ser capaz de trabajar con los con los comandos que hacen uso de la red y que estn en el CD de instalacin, son: ssh, scp, ping, irssi, wget y links, entre otros. Si la red ya ha sido congurada el comando /sbin/ifconfig debera listar algunas interfaces de red adems de lo, como eth0:
Listado de Cdigo 1.1: /sbin/ifcong para una tarjeta de red funcionando # /sbin/ifconfig (...) eth0 Link encap:Ethernet HWaddr 00:50:BA:8F:61:7A inet addr:192.168.0.2 Bcast:192.168.0.255 Mask:255.255.255.0 inet6 addr: fe80::50:ba8f:617a/10 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:1498792 errors:0 dropped:0 overruns:0 frame:0 TX packets:1284980 errors:0 dropped:0 overruns:0 carrier:0 collisions:1984 txqueuelen:100 RX bytes:485691215 (463.1 Mb) TX bytes:123951388 (118.2 Mb) Interrupt:11 Base address:0xe800

Opcional: Congure el Proxy


Si accede a Internet a travs de un proxy, podra necesitar congurar la informacin del proxy durante la instalacin. Es muy

8 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

sencillo denir un proxy: tan solo necesita denir la variable que contiene la informacin del mismo. En la mayora de los casos, puede denir las variables usando simplemente el host del servidor. Por ejemplo, asumimos que el proxy se llama proxy.gentoo.org y el puerto es el 8080.
Listado de Cdigo 1.2: Deniendo los servidores proxy (Si el proxy filtra el trfico HTTP) # export http_proxy="http://proxy.gentoo.org:8080" (Si el proxy filtra el trfico FTP) # export ftp_proxy="ftp://proxy.gentoo.org:8080" (Si el proxy filtra el trfico RSYNC) # export rsync_proxy="rsync://proxy.gentoo.org:8080"

Si su proxy requiere un nombre de usuario y una contrasea, debera usar la siguiente sintaxis para la variable:
Listado de Cdigo 1.3: Aadiendo usuario/contrasea a la variable del proxy http://nombreusuario:contrasea@proxy.gentoo.org:8080

Probando la red
Puede intentar hacer ping hacia el servidor DNS de su ISP, (que se encuentra en /etc/resolv.conf) y un sitio web a su eleccin, con la intencin de asegurarse que sus paquetes llegan a la red, la resolucin de nombres DNS esta funcionando correctamente, etc ...
Listado de Cdigo 1.4: Ms pruebas de la red # ping -c 3 www.gentoo.org

Est su conexin funcionando? En ese caso, puede saltarse el resto de esta seccin y continuar con Preparando los discos. De lo contrario, mala suerte, tendr que perseverar un poco ms :)

3.b. Conguracin Automtica de Red


Si la red no funciona inmediatamente, algunos medios de instalacin le permitirn usar net-setup (para redes estndar o sin cables), pppoe-setup (para usuarios de ADSL) o pptp (para usuarios de PPTP disponible para x86, amd64, alpha, ppc y ppc64). Si su medio de instalacin no contiene ninguna de estas herramientas, contine con Conguracin Manual de la Red. Los usuarios de redes estndar deberan continuar con Por defecto: Usando net-setup Los usuarios de ADSL deberan continuar con Alternativa: utilizar PPP Los usuarios de PPTP deberan continuar con Alternativa: Usando PPTP

Por defecto: Usando net-setup


El sistema ms simple de congurar una red, si no se consigui hacerlo automticamente, es ejecutar el guin net-setup:
Listado de Cdigo 2.1: Ejecutando el guin net-setup # net-setup eth0

net-setup le har algunas preguntas sobre su entorno de red Cuando lo haya completado, debera disponer de una conexin de red funcionando. Pruebe su conexin de red como se especic anteriormente Si los resultados son positivos, felicidades! Ahora est listo para instalar Gentoo. Sltese el resto de esta seccin y contine con Preparando los discos. Si su conexin de red sigue sin funcionar, contine con Conguracin Manual de la Red.

Alternativa: utilizar PPP


Asumiendo que requiere PPPoE para conectar a Internet, los CDs de instalacin (en cualquiera de sus versiones) ha sido pensado para facilitarle el trabajo incluyendo ppp. Use el guin pppoe-setup proporcionado para congurar su conexin. Se le pedir el dispositivo de red que esta conectado a su mdem adsl, su nombre de usuario y su contrasea, las IPs de sus servidores DNS y si requiere un rewall bsico o no.
Listado de Cdigo 2.2: Utilizar ppp # pppoe-setup # pppoe-start

Si algo va mal, asegrese que ha tecleado correctamente su nombre de usuario y su contrasea mirando /etc/ppp/pap-secrets o /etc/ppp/chap-secrets y asegrese que esta haciendo uso del dispositivo de red correcto. Si su dispositivo de red no existe, deber cargar los mdulos de red apropiados. En ese caso, debera continuar con Conguracin manual de la Red dnde

9 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86


explicaremos como cargar los mdulos de red apropiados. Si todo funcion, contine con Preparando los Discos.

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

Alternativa: Usando PPTP


Si requiere soporte PPTP, puede usar pptpclient que se incluye en nuestros CDs de instalacin. Pero primero debe asegurarse que su conguracin es correcta. Edite /etc/ppp/pap-secrets o /etc/ppp/chap-secrets ya que contiene la combinacin correcta de usuario/contrasea:
Listado de Cdigo 2.3: Editar /etc/ppp/chap-secrets # nano -w /etc/ppp/chap-secrets

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


Listado de Cdigo 2.4: Editar /etc/ppp/options.pptp # nano -w /etc/ppp/options.pptp

Cuando todo est listo, tan solo ejecute pptp (junto con las opciones que podra haber congurado en options.pptp) para conectar al servidor:
Listado de Cdigo 2.5: Conectar a un servidor por lnea telefnica # pptp <server ip>

Ahora contine con Preparando los discos.

3.c. Conguracin Manual de la Red


Cargando los mdulos de red apropiados
Cuando el CD de instalacin arranca, intenta detectar todos sus dispositivos hardware y carga los mdulos del ncleo (controladores) apropiados para darles soporte. En la gran mayora de los casos, hace un muy buen trabajo. No obstante, en algunos casos, puede no cargar automticamente los mdulos del ncleo que necesita. Si net-setup o pppoe-setup fallaron, entonces puede asumir sin ningn riesgo que su tarjeta de red no se encontr en el acto. Esto signica que tendr que cargar los mdulos del ncleo apropiados manualmente. Para descubrir qu mdulos del ncleo proporcionamos para la red, use ls:
Listado de Cdigo 3.1: Buscar los mdulos apropiados # ls /lib/modules/`uname -r`/kernel/drivers/net

Si encuentra un driver para su tarjeta de red, use modprobe para cargar el mdulo del ncleo:
Listado de Cdigo 3.2: Usar modprobe para cargar el mdulo ncleo (Como ejemplo, cargaremos el mdulo pcnet32) # modprobe pcnet32

Para conrmar si su tarjeta de red se detecta ahora, use ifconfig. Una red detectada debera desembocar en algo como esto:
Listado de Cdigo 3.3: Comprobar la disponibilidad de su tarjeta de red, xito # ifconfig eth0 eth0 Link encap:Ethernet HWaddr FE:FD:00:00:00:00 BROADCAST NOARP MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)

Si de todas formas recibe el siguiente error, la tarjeta de red no est detectada:


Listado de Cdigo 3.4: Comprobar si la disponibilidad de su tarjeta de red fracas # ifconfig eth0 eth0: error fetching interface information: Device not found

Si tiene mltiples tarjetas de red en su sistema stas recibirn el nombre eth0, eth1, etc. Asegrese que la tarjeta de red que quiere utilizar funciona correctamente y recuerde emplear el nombre correcto a lo largo de este documento. Asumiremos que la

10 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86


tarjeta de red eth0 va a ser la utilizada.

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

Asumiendo que ya se tiene disponible una tarjeta de red detectada, puede reintentar net-setup o pppoe-setup otra vez (que deberan funcionar ahora), pero para los que tengan problemas, explicaremos como congurar su red manualmente. Seleccione una de las siguientes secciones basndose en su conguracin de red. Usando DHCP para adjudicacin de IP automtica Preparando el Acceso Inalmbrico (Wireless) si tiene una tarjeta inalmbrica. Entendiendo la terminologa de red explica lo que necesita conocer sobre redes. Utilizando ifcong y route explica como congurar su red manualmente.

Usando DHCP
DHCP (Protocolo de Conguracin Dinmica de Antrin) hace posible recibir automticamente su informacin de red (Direccin IP, mscara de red, direccin de broadcast, pasarela, servidores de nombres etc.). Esto solo funciona si dispone de un servidor DHCP en su red (o si su proveedor le ofrece servicio DHCP). Para conseguir que su interfaz de red reciba esta informacin automticamente use dhcpcd:
Listado de Cdigo 3.5: Usando dhcpcd # dhcpcd eth0 Algunos administradores de red requieren que utilice el nombre del equipo y el dominio que proporciona el servidor DHCP. Si es el caso, utilice # dhcpcd -HD eth0

Si esto funciona (pruebe hacer ping a algn servidor en Internet, como Google), entonces lo tiene todo congurado y listo para continuar. Sltese el resto de esta seccin y contine con Preparando los Discos.

Preparando la Red Inalmbrica


Nota: Existe soporte para iwconfig en CDs de instalacin para las arquitecturas x86, amd64 y ppc. Todava puede conseguir que sus extensiones funcionen siguiendo las instrucciones del proyecto linux-wlan-ng.

Si est empleando una tarjeta inalmbrica (802.11), quiz necesite congurar sus opciones antes de ir ms all. Para revisar la conguracin inalmbrica actual de su tarjeta, puede utilizar iwconfig. Ejecutando iwconfig debera mostrar algo como esto:
Listado de Cdigo 3.6: Mostrar la conguracin inalmbrica actual # iwconfig eth0 eth0 IEEE 802.11-DS ESSID:"GentooNode" Mode:Managed Frequency:2.442GHz Access Point: 00:09:5B:11:CC:F2 Bit Rate:11Mb/s Tx-Power=20 dBm Sensitivity=0/65535 Retry limit:16 RTS thr:off Fragment thr:off Power Management:off Link Quality:25/10 Signal level:-51 dBm Noise level:-102 dBm Rx invalid nwid:5901 Rx invalid crypt:0 Rx invalid frag:0 Tx excessive retries:237 Invalid misc:350282 Missed beacon:84 Nota: El nombre de dispositivo de algunas tarjetas de red inalmbricas puede ser wlan0 o ra0 en lugar de eth0. Ejecute iwconfig sin ms parmetros para determinar cual es el nombre de dispositivo correcto.

La mayora de usuarios, solamente tendr que modicar dos conguraciones, el ESSID (Nombre de red inalmbrica) o la clave WEP. Si el ESSID y la direccin del Punto de Acceso mostradas son correctas y el Punto de Acceso y su mquina no estn utilizando WEP, su red inalmbrica est funcionando. Si necesita cambiar su ESSID, o aadir una clave WEP, puede utilizar los siguientes comandos:
Nota: Si la red inalmbrica est congurada para usar claves WPA o WPA2, tendr que usar wpa_supplicant. Para ms informacin acerca de la conguracin de redes inalmbricas en Gentoo Linux, por favor lea el captulo Redes Inalmbricas del Manual Gentoo. Listado de Cdigo 3.7: Cambiar ESSID y/o aadiendo una clave WEP (Esto asigna el nombre de "GentooNode" a nuestra red) # iwconfig eth0 essid GentooNode (Esto asigna una clave WEP hexadecimal) # iwconfig eth0 key 1234123412341234abcd (Esto asigna una clave ASCII , aadiendo al principio "s:") # iwconfig eth0 key s:some-password

11 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

Puede volver a comprobar la conguracin inalmbrica utilizando iwconfig. Una vez que tenga la conexin funcionando, puede continuar congurando las opciones de red de nivel IP como se describe en la siguiente seccin (Entendiendo la terminologa de red) o utilizar la herramienta net-setup como hemos descrito anteriormente.

Entendiendo la terminologa de red


Nota: Si conoce su direccin IP, direccin de broadcast, mscara de red y los servidores de nombres, entonces puede saltarse esta subseccin y continuar con Usando ifcong y route.

Si todo lo anterior falla, tendr que congurar su red manualmente. No tenga miedo, est lejos de ser difcil. Pero vamos a explicarle ciertos conceptos de red que necesitar para ser capaz de congurar su red satisfactoriamente. Cuando haya ledo esto, conocer que es una pasarela, para que sirve una mscara de red, como se forma una direccin de broadcast y porqu necesita servidores de nombres. En una red los hosts estn estn identicados por su direccin IP (direccin del Protocolo de Internet). Tal direccin es una combinacin de cuatro nmeros entre 0 y 255. Bien, como mnimo as es como las percibimos. En realidad, tal direccin IP consiste de 32 bits (unos y ceros). Vamos a ver un ejemplo:
Listado de Cdigo 3.8: Ejemplo de una direccin IP IP Address (numbers): IP Address (bits): 192.168.0.2 11000000 10101000 00000000 00000010 -------- -------- -------- -------192 168 0 2

Cada direccin IP es nica para ese host, tan lejos como redes accesibles estn a su disposicin (por ejemplo, todos los hosts a los que se pueda conectar, deben tener direcciones IP nicas). Para ser capaz de hacer la distincin entre hosts dentro de una red, y hosts fuera de una red, la direccin IP est dividida en dos partes: la parte de red y la parte de host. La separacin esta anotada en la mscara de red, una conjunto de unos seguidos de un conjunto de ceros. La parte de la IP que quedan enmascarados sobre los unos es la parte de red, la otra es la parte de host. Como es normal, la mscara de red, puede ser anotada como una direccin IP.
Listado de Cdigo 3.9: Ejemplo de una separacin red/host IP-address: Netmask: 192 168 0 2 11000000 10101000 00000000 00000010 11111111 11111111 11111111 00000000 255 255 255 0 +--------------------------+--------+ Network Host

En otras palabras, 192.168.0.14 es parte de nuestra red de ejemplo, pero 192.168.1.2 no lo es. La direccin de broadcast es una direccin IP con la misma parte de red que su red, pero con solo unos como parte de host. Cada host en su red escucha esta direccin IP. Esto verdaderamente sirve para la transmisin de paquetes.
Listado de Cdigo 3.10: Direccin de Broadcast IP-address: 192 168 0 2 11000000 10101000 00000000 00000010 Broadcast: 11000000 10101000 00000000 11111111 192 168 0 255 +--------------------------+--------+ Network Host

Para ser capaz de navegar por Internet, debera conocer qu host comparte la conexin a Internet. Este host se llama la pasarela. Puesto que es un host estndar, tiene direcciones IP estndar (por ejemplo 192.168.0.1). Anteriormente armamos que cada host tiene su propia direccin IP. Para ser capaz de alcanzar este host por un nombre (en vez de la direccin IP) necesitara un servicio que traduzca un nombre (como dev.gentoo.org) a una direccin IP (como 64.5.62.82). Tal servicio se le conoce como servicio de nombres. Para usar tal servicio, debe denir los servidores de nombres necesarios en /etc/resolv.conf. En algunos casos, su pasarela tambin sirve como servidor de nombres. De otro modo, tendr que introducir los servidores de nombres facilitados por su ISP. Para resumir, necesitar la siguiente informacin antes de continuar:
Elemento de Red
Su direccin IP

Ejemplo
192.168.0.2

12 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

Mscara de Red Broadcast Pasarela Servidor(es) de nombres

255.255.255.0 192.168.0.255 192.168.0.1 195.130.130.5, 195.130.130.133

Usar ifcong y route


Congurar su red consiste en tres pasos. Primero, nos asignamos una direccin IP usando ifconfig. Entonces conguraremos el ruteo hacia la pasarela usando route. Por ltimo, acabaremos situando las IPs de los servidores de nombres en /etc/resolv.conf. Para asignar una direccin IP, necesitara su direccin IP, la direccin de broadcast y la mascara de red. Entonces ejecute el siguiente comando, substituyendo ${IP_ADDR} con su direccin IP, ${BROADCAST} con su direccin de broadcast y ${NETMASK} con su mscara de red:
Listado de Cdigo 3.11: Utilizar ifcong # ifconfig eth0 ${IP_ADDR} broadcast ${BROADCAST} netmask ${NETMASK} up

Ahora congure la ruta usando route. Substituya ${GATEWAY} con la direccin IP de su pasarela:
Listado de Cdigo 3.12: Utilizar route # route add default gw ${GATEWAY}

Ahora abra /etc/resolv.conf con su editor favorito (en nuestro ejemplo, usaremos nano):
Listado de Cdigo 3.13: Crear /etc/resolv.conf # nano -w /etc/resolv.conf

Ahora complete con su(s) servidor(es) de nombres usando la siguiente plantilla. Asegrese que substituye ${NAMESERVER1} y ${NAMESERVER2} con las direcciones apropiadas de servidor de nombres:
Listado de Cdigo 3.14: Plantilla /etc/resolv.conf nameserver ${NAMESERVER1} nameserver ${NAMESERVER2}

Eso es. Ahora compruebe su red haciendo ping a algn servidor de Internet (como Google). Si funciona, felicitaciones entonces. Ahora est listo para instalar Gentoo. Contine con Preparando los Discos.

4. Preparando los discos


4.a. Introduccin a 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, sistemas de cheros de Linux, particiones y dispositivos de bloque. Una vez est familiarizado con las entraas de los discos y sistemas de cheros, le guiaremos a travs del proceso de creacin de particiones y sistemas de cheros de tu instalacin Gentoo Linux. Para empezar, explicaremos el trmino dispositivos de bloque. Quizs el dispositivo de bloque ms conocido es el que representa la primera unidad de disco llamada /dev/sda. Las unidades SCSI y Serial ATA son etiquetadas mediante /dev/sd*; incluso las unidades IDE son conocidas como /dev/sd* con el nuevo framework libata del kernel. Si est utilizando el antigo framework de unidades, entonces la primera unidad IDE ser /dev/hda. Los dispositivos de bloque mencionados anteriormente representan una interfaz abstracta de disco. Las aplicaciones pueden hacer uso de estas interfaces para interactuar con el disco duro de la mquina sin importar el tipo de unidad que tienes: IDE, SCSI, o cualquier otra. La aplicacin puede simplemente dirigirse al almacenamiento en el disco como a una serie de bloques de acceso aleatorio de 512-bytes situados de forma contigua.

Particiones
Aunque tericamente es posible utilizar el disco duro completo para albergar la instalacin Linux, esto casi nunca se hace. En su lugar, los dispositivos de bloque enteros se dividen en partes ms manejables y pequeas. En los sistemas stas se llaman particiones. Las particiones se dividen en tres tipos: primarias, extendidas y lgicas. La particin primaria es aquella que almacena su informacin en el MBR (registro principal de arranque). Ya que el MBR puede

13 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

almacenar hasta 512 bytes, solo pueden denirse cuatro particiones primarias (por ejemplo, desde /dev/sda1 hasta /dev/sda4). Una particin extendida es una particin primaria especial (entendemos que la particin extendida debe ser una de las cuatro posibles particiones primarias) la cual contiene ms particiones. Al principio no exista este tipo de particin, pero como cuatro primarias eran muy pocas, se dise para extender el esquema de particionamiento sin perder la compatibilidad inversa. Una particin lgica es aquella que est dentro de la particin extendida. En otras palabras, estas particiones no se denen dentro del MBR, sino que se declaran dentro de la particin extendida.

Almacenamiento avanzado
Los CDs de instalacin para x86 proporcionan soporte para LVM2 (en ingls, Logical Volume Management). LVM2 incrementa incrementa la exibilidad ofrecida por el esquema de particionamiento. Cuando recorramos las instrucciones de instalacin, nos centraremos en particiones "normales", sin embargo, es importante saber que las particiones de tipo LVM2 tambin estn soportadas.

4.b. Diseando un esquema de particionamiento


Esquema de Particionamiento Predeterminado
Si no est interesado en disear un esquema de particionamiento particular para tu sistema, puede hacer uso del esquema que utilizaremos en este manual:
Particin
/dev/sda1 /dev/sda2 /dev/sda3

Sistema de Ficheros
ext2 (swap) ext3

Tamao
32M 512M El resto del disco

Descripcin
Particin de arranque Particin de intercambio Particin de raz

Si est interesado en conocer el tamao que debera tener una particin, o incluso cuantas particiones necesita, continu leyendo. En caso contrario, siga con el particionamiento del disco leyendo Utilizar fdisk para particionar su disco o Utilizar parted para particionar su disco (ambas son herramientas de particionamiento, fdisk es bien conocida y estable, parted es un poco ms reciente pero admite particiones mayores de 2TB).

Cuntas? y de qu tamao?
El nmero de particiones es altamente dependiente del entorno particular. Por ejemplo, si la mquina tiene muchos usuarios, lo ms probable es que desee tener /home en una particin separada para aumentar la seguridad y facilitar los respaldos. Si est instalando Gentoo para un servidor de correos, debe tener /var en una particin separada ya que es all dnde se almacena todo el correo. Asimismo, una buena eleccin de sistema de cheros optimizar el rendimiento del equipo. Los servidores de juegos deben disponer de una particin /opt, ya que la mayora de juegos se instalan all. Las razones para estas recomendaciones son similares a las del caso de /home: seguridad y salvaguarda de datos. Es recomendable darle un tamao grande a /usr: no solamente contiene la mayora de las aplicaciones, sino que el propio rbol de Portage ocupa ms de 500 Mbytes, sin contar las fuentes que guarda tambin. Como puede ver, todo depende de lo que quiera conseguir. Tener particiones o volmenes separados tiene las siguientes ventajas: Puede elegir el mejor sistema de cheros para cada particin o volumen El equipo en su totalidad quedar sin espacio si una herramienta o aplicacin escribiera datos continuamente al volumen o particin Si es el caso, el tiempo dedicado a las comprobaciones de integridad de sistemas de chero se reduce ya que las stas pueden ser hechas en paralelo (esta ventaja es mayor con mltiples discos que con mltiples particiones) Podemos mejorar la seguridad montando algunas particiones en modo solo lectura, nosuid (los setuid bits se ignoran), noexec (los bits de ejecucin se ignoran), etc. Sin embargo, tener mltiples particiones tiene tambin desventajas. Si no se conguran adecuadamente, obtendr un sistema con mucho espacio vaco en una particin y ninguno en otra. Otra contrariedad es que las particiones separadas - especialmente las que se utilizan para puntos de montaje importantes como /usr o /var - a menudo requieren que sea el administrador el que arranque el sistema con un sistema de cheros de inicio en RAM (initramfs) para montar la particin antes de que otros guiones de inicio se ejecuten. Este no es siempre el caso, por lo que sus resultados pueden ser diferentes. Tambin, existe un lmite de 15 particiones para SCSI y SATA. Como ejemplo de un esquema de particionamiento usaremos un disco duro de 20 Gb de un porttil para nes de demostracin (incluye servidor web, servidor de correo, gnome, etc.):
Listado de Cdigo 2.1: Ejemplo de particionamiento $ df -h Filesystem /dev/sda5 Type ext3 Size 509M Used Avail Use% Mounted on 132M 351M 28% /

14 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86


/dev/sda2 ext3 5.0G 3.0G /dev/sda7 ext3 7.9G 6.2G /dev/sda8 ext3 1011M 483M /dev/sda9 ext3 2.0G 607M /dev/sda1 ext2 51M 17M /dev/sda6 swap 516M 12M (Espacio sin particionar para uso 1.8G 63% 1.3G 83% 477M 51% 1.3G 32% 31M 36% 504M 2% futuro: 2 /home /usr /opt /var /boot <not mounted> Gb)

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

/usr parece estar bastante llena (83%), pero una vez que todo el software est instalado no tender a llenarse ms. Aunque asignar unos cuantos gigabytes de espacio a /var puede parecer excesivo, recuerde que Portage utiliza esta particin por defecto para compilar paquetes. Si quiere mantener /var de un tamao razonable, cmo 1 GB, necesitar modicar la variable PORTAGE_TMPDIR en /etc/portage/make.conf para apuntar a una particin con espacio libre suciente para compilar paquetes muy grandes como OpenOce.

4.c. Utilizar fdisk para particionar su disco


Importante: Si su entorno va a utilizar particiones mayores de 2 TB, por favor, utilice las instrucciones comentadas en Utilizar parted para particionar su disco. La herramienta fdisk no puede manejar tamaos tan grandes de particin.

Las siguientes instrucciones explican como particionar el disco duro utilizando fdisk. El ejemplo de disposicin de las particiones ha sido mencionado anteriormente:
Particin
/dev/sda1 /dev/sda2 /dev/sda3

Descripcin
Particin de arranque (boot) Particin de intercambio (swap) Particin de raz (root)

Cambie el esquema de particionamiento segn sus propias preferencias.

Examinar el esquema de particionamiento actual


fdisk es una popular y potente herramienta que permite dividir el disco en particiones. Arranca fdisk sobre tu unidad de disco (en nuestro ejemplo usamos el dispositivo de disco /dev/sda):
Listado de Cdigo 3.1: Ejecutar fdisk # fdisk /dev/sda

Una vez que fdisk est en ejecucin, el programa ofrecer el siguiente smbolo de espera de rdenes:
Listado de Cdigo 3.2: Smbolo de espera de rdenes de fdisk Command (m for help):

Teclee p para mostrar el esquema de particionamiento actual:


Listado de Cdigo 3.3: Un ejemplo de particionamiento Command (m for help): p Disk /dev/sda: 240 heads, 63 sectors, 2184 cylinders Units = cylinders of 15120 * 512 bytes Device /dev/sda1 /dev/sda2 /dev/sda3 /dev/sda4 /dev/sda5 /dev/sda6 /dev/sda7 /dev/sda8 /dev/sda9 Boot * Start 1 15 50 71 71 210 349 627 905 End Blocks 14 105808+ 49 264600 70 158760 2184 15981840 209 1050808+ 348 1050808+ 626 2101648+ 904 2101648+ 2184 9676768+ Id 83 82 83 5 83 83 83 83 83 System Linux Linux swap Linux Extended Linux Linux Linux Linux Linux

Command (m for help):

Este disco en particular est congurado para albergar siete sistemas de cheros Linux, cada particin con su correspondiente etiqueta "Linux", as como una particin de intercambio (swap) que aparece con la etiqueta "Linux swap".

Eliminar todas las particiones

15 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

Primero eliminaremos todas las particiones existentes en el disco. Teclee d para eliminar una particin, seguido por intro. Por ejemplo, para borrar una particin existente en /dev/sda1:
Listado de Cdigo 3.4: Eliminar una particin > Command (m for help): d Partition number (1-4): 1

La particin ha sido marcada para su borrado. Ya no aparecer si teclea p, pero no ser eliminada hasta que guarde los cambios realizados. Si comete una equivocacin y desea abortar los cambios realizados, teclee q inmediatamente y pulse intro; las particiones no sern eliminadas. Ahora, asumiendo que intenta eliminar todas las particiones existentes del disco duro, debe teclear p en forma repetida para ver el listado de particiones y pulsar d junto con el nmero de la particin para borrarlas. Finalmente, acabar teniendo una tabla de particiones vaca:
Listado de Cdigo 3.5: Una tabla de particiones vaca Disk /dev/sda: 30.0 GB, 30005821440 bytes 240 heads, 63 sectors/track, 3876 cylinders Units = cylinders of 15120 * 512 = 7741440 bytes Device Boot Start End Blocks Id System

Command (m for help):

Ahora que la tabla de particiones en memoria del sistema est vaca, estamos preparados para crear nuevas particiones. Utilizaremos el esquema por defecto, tal como hemos acordado anteriormente. Claro est, que no debe seguir estas instrucciones al pe de la letra si no desea tener una tabla de particiones exactamente igual que la nuestra!

Crear una particin de arranque


En primer lugar debemos crear una pequea particin de arranque. Teclee n para crear esta nueva particin, y luego p para seleccionar una particin primaria, siguiendo por 1 para elegirla como primera particin primaria. Cuando el sistema solicite introducir el primer cilindro, pulse intro y cuando pida denir el valor del ltimo cilindro, teclee +32M para crear una particin de tamao 32 Mb. y congure el ag de iniciable (boot).
Listado de Cdigo 3.6: Crear una particin de arranque Command (m for help): n Command action e extended p primary partition (1-4) p Partition number (1-4): 1 First cylinder (1-3876, default 1): (Pulse Intro) Using default value 1 Last cylinder or +size or +sizeM or +sizeK (1-3876, default 3876): +32M

Si ahora teclea p, debe ver la siguiente particin en la tabla:


Listado de Cdigo 3.7: Una particin creada Command (m for help): p Disk /dev/sda: 30.0 GB, 30005821440 bytes 240 heads, 63 sectors/track, 3876 cylinders Units = cylinders of 15120 * 512 = 7741440 bytes Device Boot /dev/sda1 Start 1 End 14 Blocks 105808+ Id 83 System Linux

Necesitamos hacer que esta particin sea arrancable. Teclee a para marcar esta particin como arrancable. Si introduce p de nuevo, ver que un * ha aparecido en la columna "Boot".

Crear una particin de intercambio


Vamos a crear ahora la particin de intercambio. Para hacerlo, teclee n para crear una nueva particin, y luego p para comunicar a fdisk que debe ser una particin primaria. Entonces teclee 2 para crear la segunda particin primaria, /dev/sda2 en nuestro caso. Cuando el sistema solicite introducir el valor del primer cilindro, pulse intro y cuando solicite introducir el valor del ltimo, teclee +512M para crear una particin de 512 Mb. Cuando lo haya hecho, teclee t para establecer el tipo de particin, 2 para seleccionar la particin que acaba de crear y entonces 82 para jar el tipo "Linux Swap". Una vez completados estos pasos la

16 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

introduccin de p visualizar la tabla de particiones que debe ser similar a sta.


Listado de Cdigo 3.8: Listado de particiones despus de la creacin de la particin de intercambio Command (m for help): p Disk /dev/sda: 30.0 GB, 30005821440 bytes 240 heads, 63 sectors/track, 3876 cylinders Units = cylinders of 15120 * 512 = 7741440 bytes Device Boot /dev/sda1 * /dev/sda2 Start 1 15 End 14 81 Blocks 105808+ 506520 Id 83 82 System Linux Linux swap

Crear la particin raz


En el ltimo lugar, creamos la particin de raz. Introduzca n para crear la nueva particin, p para marcarla como particin primaria. A continuacin teclee 3 para crear la tercera particin primaria, /dev/sda3, segn nuestro ejemplo. Al solicitar la introduccin del valor del primer cilindro de la particin pulsamos intro, mientras que cuando el sistema solicite que introduzcamos el valor del ltimo cilindro, tambin le damos a intro para crear una particin que ocupe todo el espacio restante en el disco. Tras completar todos estos pasos, introducimos p para ver la tabla de particiones que debe parecer mucho a la siguiente:
Listado de Cdigo 3.9: Listado de particiones despus de crear la particin de raz Command (m for help): p Disk /dev/sda: 30.0 GB, 30005821440 bytes 240 heads, 63 sectors/track, 3876 cylinders Units = cylinders of 15120 * 512 = 7741440 bytes Device Boot /dev/sda1 * /dev/sda2 /dev/sda3 Start 1 15 82 End 14 81 3876 Blocks 105808+ 506520 28690200 Id 83 82 83 System Linux Linux swap Linux

Almacenar la tabla de particiones


Para guardar el esquema de particionamiento y salir del fdisk tecleamos w.
Listado de Cdigo 3.10: Guardado y salida del fdisk Command (m for help): w

Ahora que las particiones estn creadas, puede proseguir con la Crear los sistemas de cheros.

4.d. Utilizar parted para particionar su disco


En este captulo, le guiaremos en la creacin del ejemplo de particionamiento descrito anteriormente en las instrucciones. Al contrario que en el captulo anterior, describiremos el mtodo utilizando la aplicacin parted. Tanto parted como fdisk ofrecen las mismas funciones, por lo que si ya ha particionado su disco utilizando fdisk, puede saltarse esta seccin y continuar con Crear los sistemas de cheros. La disposicin de particiones que utilizaremos se muestra en la siguiente tabla:
Particin
/dev/sda1 /dev/sda2 /dev/sda3

Descripcin
Particin de arranque Particin de intercambio >Particin raz

Cambie la disposicin de sus particiones para adaptarlas a sus preferencias.

Echar un vistazo a la disposicin actual de las particiones


La aplicacin parted es de alguna forma una variacin moderna de fdisk. Ofrece una interfaz ms simple para el particionamiento de sus discos y soporta particiones muy grandes (mayores de 2 TB). Arranque parted en su disco (en nuestro ejemplo, utilizaremos /dev/sda):
Listado de Cdigo 4.1: Arrancar parted

17 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

# parted /dev/sda GNU Parted 2.3 Using /dev/vda Welcome to GNU Parted! Type 'help' to view a list of commands.

Para mostrar todas las opciones que soporta parted, teclee help y pulse la tecla Intro. Por ahora, le pediremos a parted que nos muestre las particiones que estn en uso actualmente en el disco seleccionado. Para hacer esto, se puede utilizar la orden print.
Listado de Cdigo 4.2: Una ejemplo de conguracin de particiones mostrado por parted (parted) print Model: SCSI Block Device Disk /dev/sda: 21.5GB Sector size (logical/physical): 512B/512B Partition Table: msdos Number 1 2 3 Start 512B 2148MB 3222MB End 2148MB 3222MB 21.5GB Size 2148MB 1074MB 18.3GB Type primary primary primary File system ext4 linux-swap(v1) Flags

lvm

Opcional: Ajustar la etiqueta GPT


La mayora de los discos en los sistemas x86/amd64 estn preparados para utilizar una etiqueta msdos. Sin embargo, si va crear particiones muy grandes (de 2 TB y mayores), deber usar en su disco una etiqueta gpt que signica GUID Partition Type (Tipo de Particin GUID). Si usa parted, puede hacer esto con mklabel gpt:
Aviso: Al cambiar el tipo de particin, todas las particiones de su disco sern eliminadas. Se perdern todos los datos del disco. Listado de Cdigo 4.3: Ajustar la etiuqueta GPT (parted) mklabel gpt

Eliminar todas las particiones


Si no ha hecho esto an, (por ejemplo a travs de la operacin mklabel anterior, o porque el disco es una recientemente formateado), eliminaremos en primer lugar todas las particiones presentes en el disco. Teclee rm <nmero> donde <nmero> es la particin que desea eliminar.
Listado de Cdigo 4.4: Eliminar una particin del disco (parted) rm 2

Haga lo mismo para el resto de particiones que no va a necesitar. Asegrese, sin embargo, de que no comete errores en esta parte ya que parted realiza los cambios inmediatamente (al contrario que fdisk que los deja pendientes, permitiendo al usuario "deshacer" sus cambios antes de salvarlos o salir de fdisk).

Crear las particiones


Ahora, crearemos las particiones que mencionamos arriba. Esto no va a ser muy difcil usando parted, todo lo que necesitamos es informar a parted sobre los siguientes ajustes: El tipo de particin que se debe utilizar. Este ser normalmente primary (primaria) en caso de que no vaya a tener ms de cuatro particiones (si usa la etiqueta de particionamiento msdos). De lo contrario, necesitar que su cuarta particin sea extended (extendida) la cual contendr el resto del disco, y deber crear particiones de tipo logical (lgicas) dentro de ella. Si utiliza un disco etiquetado con particin gpt, entonces no tendr lmite en el nmero de particiones primarias que puede crear. El tipo de sistema de cheros a usar. La aplicacin parted soporta los sistemas de cheros ms comunes y sabe qu tipo de identicador (ID) de particin necesita para usar en las particiones. Esto no signica que parted vaya a crear un sistema de cheros en la particin (puede hacer esto con la orden mkpartfs, sin embargo, nosotros usaremos las rdenes normales mkfs.* ms adelante para este propsito). El ID de la particin lo utilizan a menudo las aplicaciones de auto deteccin para saber que hacer con una particin en particular. La localizacin en la que comienza la particin (se puede expresar en MB o en GB) La localizacin en la que termina la particin (se puede expresar en MB o en GB) Una ventaja de parted es que puede usar los tamaos de la particin para encontrar las localizaciones correctas de comienzo y terminacin de forma fcil, como veremos en el prximo ejemplo.
Listado de Cdigo 4.5: Crear las particiones

18 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

# Crear una particin /boot de 32 MB (parted) mkpart primary ext2 0 32mb Warning: The resulting partition is not properly aligned for best performance. Ignore/Cancel? i # Crear una particin de intercambio de 512 MB (parted) mkpart primary linux-swap 32mb 542mb # Crear una particin que ocupa todo el disco. # -1s (menos uno s) indica el final del disco (parted) mkpart primary ext4 542mb -1s Warning: You requested a partition from 542MB to 21.5GB. The closest location we can manage is 542MB to 21.5GB. Is this still acceptable to you? Yes/No? y

Puede ahora mostrar (print) la disposicin de las particiones de nuevo, para validar que todo est en su sitio. Cuando est preparado, utilice la orden quit para salir de parted.

4.e. Crear los sistemas de cheros


Introduccin
Creadas las particiones, debemos formatearlas para poder colocarles un sistema de cheros. Si no le importa el tipo de sistema de cheros que desee utilizar y est conforme con nuestra eleccin por defecto, contine con la seccin Creacin de Sistema de Ficheros en una Particin. En caso contrario, siga leyendo para ver qu sistemas de cheros puede utilizar ...

Sistemas de cheros
El ncleo Linux soporta varios sistemas de cheros. Explicaremos ext2, ext3, ext4, ReiserFS, XFS y JFS por ser los ms utilizados en sistemas Linux. ext2 es un sistema de cheros Linux probado, pero no dispone de soporte para transacciones, lo que signica que las comprobaciones rutinarias al arrancar pueden tardar bastante tiempo. Ahora, hay muchas opciones alternativas, sistemas de cheros de nueva generacin con soporte para transacciones cuya integridad puede ser vericada con mayor rapidez, por lo que gozan de mayor popularidad. Los sistemas de cheros transaccionales previenen retrasos durante el reinicio del equipo, incluso cuando el sistema de cheros est en un estado inconsistente. Si desea instalar Gentoo en un disco pequeo (de menos de 4GB), entonces necesitar indicarle a ext2 que reserve sucientes nodos i cuando cree el sistema de cheros. La aplicacin mke2fs utiliza el ajuste "bytes-per-inode" para calcular cuantos nodos i tendra un sistema de cheros. Al ejecutar mke2fs -T small /dev/<device> el nmero de nodos i generalmente ser el cudruple para un sistema de cheros dado ya que su "bytesper-inode" se reduce de uno cada 16kB a uno cada 4kB. Puede ajustar esto ms tarde utilizando mke2fs -i <ratio> /dev/<device>. ext3 es la versin transaccional de ext2, que proporciona soporte para una rpida recuperacin adems de otros modos mejorados de funcionamiento como registro completo y ordenado de datos. Utiliza un rbol HTree como ndice que permite un alto rendimiento en casi todas las situaciones. En resumen ext3 es un sistema de cheros muy bueno y able. Ext3 est recomendado en sistemas de cheros para cualquier propsito y cualquier plataforma. Si desea instalar Gentoo en un disco pequeo (de menos de 4GB), entonces necesitar indicarle a ext3 que reserve sucientes nodos i cuando cree el sistema de cheros. La aplicacin mke2fs utiliza el ajuste "bytes-per-inode" para calcular cuantos nodos i tendra un sistema de cheros. Al ejecutar mke2fs -T small /dev/<device> el nmero de nodos i generalmente ser el cudruple para un sistema de cheros dado ya que su "bytes-per-inode" se reduce de uno cada 16kB a uno cada 4kB. Puede ajustar esto ms tarde utilizando mke2fs -i <ratio> /dev/<device>. El sistema de cheros ext4 se cre como una bifurcacin en el cdigo (fork) del sistema de cheros ext3, incorporando nuevas caractersticas, mejoras de rendimiento y eliminacin de los limites de tamao realizando cambios moderados en el formato del disco. Puede trabajar con volmenes de hasta 1 EB y con un tamao mximo de chero de 16 TB. En lugar de la asignacin de bloques usando mapas de bits que emplean los sistemas de cheros clsicos ext2/3, ext4 utiliza extents (en ingls), lo cual mejora el rendimiento con los cheros grandes y reduce la fragmentacin. Ext4 tambin ofrece un algoritmo ms sosticado de asignacin de bloques (asignacin demorada y asignacin mltiple de bloques) ofreciendo al controlador del sistema de cheros ms formas de optimizar la disposicin de los datos en el disco. El sistema de cheros ext4 es un compromiso entre la estabilidad del cdigo para produccin y el deseo de introducir extensiones a un sistema de cheros que ya casi tiene una dcada. JFS de IBM es un sistema de cheros de alto rendimiento con soporte transaccional. JFS es un sistema de cheros ligero, rpido y able, basado en un rbol B+ con un buen rendimiento bajo varias condiciones. ReiserFS es un sistema de cheros B+ (basado en rboles balanceados) que tiene un gran rendimiento, especialmente cuando trata con muchos cheros pequeos a costa de emplear ms ciclos de CPU. ReiserFS parece tener menos mantenimiento que otros sistemas de cheros. XFS es un sistema de cheros transaccional el cual viene con un juego de caractersticas robustas y est optimizado para ser escalable. XFS parece ser menos robusto ante fallos hardware.

19 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86


Creacin de Sistema de Ficheros en una Particin

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

Para crear un sistema de cheros en una particin o volumen existen herramientas especcas para cada sistema de cheros:
Sistema de Ficheros
ext2 ext3 ext4 reiserfs xfs jfs

Orden de Creacin
mkfs.ext2 mkfs.ext3 mkfs.ext4 mkreiserfs mkfs.xfs mkfs.jfs

Por ejemplo, para formatear la particin de arranque (/dev/sda1 segn el ejemplo) en formato ext2 y la particin de raz (/dev/sda3 segn el ejemplo) en formato ext3, utilizara las siguientes rdenes:
Listado de Cdigo 5.1: Creacin de un sistema de cheros en una particin # mkfs.ext2 /dev/sda1 # mkfs.ext3 /dev/sda3

Y ahora, puede crear sistemas de chero sobre sus particiones o volmenes lgicos recin creados.

Activar la particin de intercambio


mkswap es la orden utilizada para inicializar particiones de intercambio:
Listado de Cdigo 5.2: Inicializacin de una particin de intercambio # mkswap /dev/sda2

Para activar la particin, use la orden swapon:


Listado de Cdigo 5.3: Activando la particin de intercambio # swapon /dev/sda2

Cree y active la particin de intercambio con las rdenes mencionadas arriba.

4.f. Montaje
Ahora que las particiones estn inicializadas y albergan sistemas de cheros, es hora de montarlas. Utilice la orden mount. No olvide crear puntos de montaje necesarios para cada particin que haya creado. Como ejemplo montamos la particin de raz y de arranque:
Listado de Cdigo 6.1: Montaje de particiones # mount /dev/sda3 /mnt/gentoo # mkdir /mnt/gentoo/boot # mount /dev/sda1 /mnt/gentoo/boot Nota: Si quiere que su /tmp resida sobre una particin diferente, asegrese de cambiar los permisos despus de montarla: chmod 1777 /mnt/gentoo/tmp. Lo mismo debe ser aplicado a /var/tmp.

Tambin necesitamos montar el sistema de cheros proc (la interfaz virtual del ncleo) en /proc. Pero primero necesitamos situar nuestros cheros en las particiones. Continue con Instalacin de Ficheros de Instalacin de Gentoo.

5. Instalando los archivos de instalacin Gentoo


5.a. Instalando el Stage comprimido (tarball)
Ajustar la Fecha/Hora correcta
Antes de continuar debe revisar la fecha y la hora y actualizarlos. Un reloj mal congurado puede traer resultados extraos a futuro! Para comprobar la fecha/hora actual, ejecute la orden date:
Listado de Cdigo 1.1: Vericar la fecha/hora

20 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

# date Fri Mar 29 16:21:18 UTC 2005

Si la fecha/hora est equivocada, actualcela con la orden date MMDDhhmmAAAA, con la siguiente sintaxis (Mes, Da, hora, minuto y Ao). En este punto, se debera usar la hora UTC. Podr utilizar su propia zona horaria ms adelante. Por ejemplo, para ajustar la fecha y hora a las 16:21 horas del 29 de marzo del 2005:
Listado de Cdigo 1.2: Ajustar la fecha/hora UTC # date 032916212005

Realizando su propia eleccin


El prximo paso a llevar a cabo es instalar el tarball del archivo stage3 escogido en su sistema. Tiene la opcin de descargarlo de Internet o, si ha arrancado desde un CD Universal de Gentoo, cpielo desde el propio CD. En la mayora de las ocasiones, la orden uname -m puede ayudarle a decidir que archivo stage tiene que descargar. Los CDs y LiveCDs Minimal no contienen ningn archivo stage3.

5.b. Por defecto: Utilizar un Stage desde Internet


Descargando el Stage comprimido (tarball)
Vaya al punto de montaje de Gentoo en el que ha montado los sistemas de archivo (probablemente /mnt/gentoo):
Listado de Cdigo 2.1: Ir al punto de montaje de Gentoo # cd /mnt/gentoo

Dependiendo del medio de instalacin, tendremos un par de herramientas disponibles para descargar el stage. Si disponemos de links, podremos navegar por la lista de servidores rplica de Gentoo y escoger el ms cercano a nosotros: escriba links http://www.gentoo.org/main/en/mirrors.xml y pulse intro. Si no tiene links, debera disponer de lynx. Si necesita pasar a travs de un proxy, exporte las variables http_proxy y ftp_proxy:
Listado de Cdigo 2.2: Congurar la informacin del proxy para lynx # export http_proxy="http://proxy.server.com:port" # export ftp_proxy="http://proxy.server.com:port"

A partir de ahora asumiremos que tiene links a su disposicin. Seleccione un servidor rplica cercano. Normalmente los servidores HTTP nos servirn, sin embargo, tambin estn disponibles otros protocolos. Entre en el directorio releases/x86/autobuilds/. En l, Deberan aparecer todos los archivos de stage disponibles para su arquitectura (quiz almacenados en subdirectorios con el nombre de cada subarquitectura). Seleccione uno y pulse D para descargarlo. Cuando haya terminado, pulse Q para cerrar el navegador. La mayora de usuarios de PC deberan emplear el archivo stage3-i686-<release>.tar.bz2. Todos los PCs modernos son considerados i686. Si utiliza una mquina antigua, puede revisar la lista de procesador compatibles con i686 en la wikipedia. Los procesadores antiguos, como son los Pentium, K5, K6 o Via C3 y similares necesitan el stage i586. Los procesadores ms antiguos de i486 no estn soportados.
Listado de Cdigo 2.3: Navegar por la lista de servidores rplica con links # links http://www.gentoo.org/main/en/mirrors.xml (Si necesita soporte para proxy con links:) # links -http-proxy proxy.server.com:8080 http://www.gentoo.org/main/en/mirrors.xml

Conviene asegurarse de que ha descargado un archivo stage3 - las instalaciones utilizando un stage1 o stage2 no reciben soporte. Si quiere comprobar la integridad del tarball de stage que ha descargado, openssl y compare la salida con las sumas ofrecidas por el servidor rplica. Los cheros digest ofrecen varias sumas de comprobacin, cada una se ha realizado con un algoritmo diferente. La sumas recomendadas son SHA512 y Whirlpool.
Listado de Cdigo 2.4: Calcular la integridad de las sumas de comprobacin de un chero tarball de stage ## Calcular la suma SHA512 # openssl dgst -r -sha512 stage3-i686-<release>.tar.bz2 o

21 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86


# sha512sum stage3-i686-<release>.tar.bz2 ## Calcular la suma Whirlpool # openssl dgst -r -whirlpool stage3-i686-<release>.tar.bz2

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

A continuacin compare la salida de estas rdenes con el valor registrado en los cheros con extensin .DIGESTS que puede encontrar en los servidores rplica. Los valores deben coincidir, de lo contrario, los cheros descargados podran estar corruptos (o el chero de digests).

Extraer el Stage comprimido


Ahora desempaquetamos el stage descargado en sistema. Usaremos tar para dicha labor y este es el mtodo ms fcil.
Listado de Cdigo 2.5: Descomprimir el Stage # tar xvjpf stage3-*.tar.bz2

Asegrese de usar las mismas opciones xvjpf). La x se usa para Desempaquetar, la v (Verbose)para ver que pasa durante el proceso de extraccin (opcional), la j para Descomprimir con bzip2, la p para Preservar los permisos y la f para decir que extraemos un archivo, no la entrada estndar. Ahora que el stage est instalado sigamos con Instalando Portage.

5.c. Instalando Portage


Instalando una imagen de Portage
Ahora tiene que instalar una imagen de Portage, es un conjunto de archivos que informan a Portage sobre los programas que puede instalar, que perles estn disponibles, etc.

Descargar e instalar una imagen de Portage


Vaya al punto de montaje donde tiene montado su sistema de cheros (normalmente /mnt/gentoo):
Listado de Cdigo 3.1: Situndose en el punto de montaje de Gentoo # cd /mnt/gentoo

Ejecute links (o lynx) y vaya a la lista de servidores rplica de Gentoo. Elija un servidor cercano y abra el directorio snapshots/. De all descargue la ltima imagen de Portage (portage-latest.tar.bz2), seleccionndola y presionando D.
Listado de Cdigo 3.2: Comprobar la lista de servidores rplica de Gentoo # links http://www.gentoo.org/main/en/mirrors.xml

Ahora salga del navegador presionando Q. Ahora dispone de una imagen de Portage guardada en /mnt/gentoo. Si quiere comprobar la integridad de la imagen descargada, utilice md5sum y compare la salida con la suma de comprobacin MD5 que proporciona el servidor rplica.
Listado de Cdigo 3.3: Comprobar la integridad de una imagen de Portage # md5sum -c portage-latest.tar.bz2.md5sum portage-latest.tar.bz2: OK

En el siguiente paso, vamos a descomprimir la imagen de Portage en su sistema de cheros. Asegrese de utilizar las rdenes exactas; la ltima opcin es una C mayscula, no una c.
Listado de Cdigo 3.4: Descomprimir la imagen de Portage # tar xvjf /mnt/gentoo/portage-latest.tar.bz2 -C /mnt/gentoo/usr

5.d. Congurando las opciones de compilacin


Introduccin
Para optimizar Gentoo, tendr que ajustar un par de variables que afectarn el comportamiento de Portage. Todas estas variables se pueden jar como variables de entorno (usando export) pero eso no es permanente. Para mantener su conguracin, Portage dispone de /etc/portage/make.conf, un chero de conguracin para Portage. Este es el chero que editaremos ahora.
Nota: Una lista comentada de todas las posibles variables puede encontrarse en /mnt/gentoo/usr/share/portage/make.conf.example.

22 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

Para una instalacin de Gentoo correcta lo nico que necesita es congurar las variables que se mencionan en las siguientes lneas.

Use su editor favorito (en esta gua nosotros usaremos nano. As que empezamos con la modicacin de las variables.
Listado de Cdigo 4.1: Abrir /etc/portage/make.conf # nano -w /mnt/gentoo/etc/portage/make.conf

Como probablemente habr notado, el chero make.conf.example est estructurado de una manera genrica: Las lneas comentadas empiezan con "#", otras lneas denen variables usando la sintaxis VARIABLE="contenido". El chero make.conf utiliza la misma sintaxis. Discutiremos muchas de esas variables ms adelante.

CFLAGS y CXXFLAGS
Las variables CFLAGS y CXXFLAGS, denen los parmetros de optimizacin para el compilador de C y C++ de gcc respectivamente. Aunque generalmente se denen aqu, tendr el mximo rendimiento si optimiza estos parmetros para cada programa por separado. La razn es que cada programa es diferente. En el chero make.conf deber denir los parmetros de optimizacin que piense que vayan a hacer su sistema el mejor en todas las situaciones. No coloque parmetros experimentales en esta variable; un nivel demasiado alto de optimizacin puede hacer que los programas se comporten mal (cuelgues, o incluso peor, funcionamientos errneos). No explicaremos todas las opciones posibles para la optimizacin. Pero si quiere conocerlas todas, lase El manual en lnea de GNU o la pgina informacin de gcc (info gcc -- Solo en un sistema Linux funcional). El chero make.conf tambin contiene una gran cantidad de ejemplos e informacin; no olvide leerlo tambin. El primer parmetro es -march= o -mtune=, el cual especica el nombre de la arquitectura destino. Las posibles opciones se describen en el chero 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 instalacin). Seguida de esta, est el parmetro -O, que especica la clase optimizacin de gcc. Las clases posibles son s (para tamao optimizado), 0 (para no optimizar), 1, 2 o incluso 3 para la optimizacin de velocidad (cada clase tiene los mismos parmetros que la primera, ms algunos extras). -O2 es la recomendada. Es conocido que -O3 provoca problemas cuando se utiliza globalmente en el sistema, por esto se recomienda mantener siempre -O2. Otros parmetros de optimizacin bastante populares son los -pipe (usando tuberas en lugar de cheros temporales para la comunicacin entre las diferentes etapas de compilacin). No tiene ningn impacto sobre le cdigo generado, pero usa ms memoria. En sistemas con poca memoria, el proceso del compilador podra ser terminado. En este caso, no use este parmetro. Cuidado con utilizar -fomit-frame-pointer (el cual no mantiene el puntero de macro en un registro para las funciones que no lo necesiten) pues podra tener graves repercusiones en la depuracin de errores en aplicaciones. Cuando dena las variables CFLAGS y CXXFLAGS, debera combinar algunos parmetros de optimizacin, Los valores por defecto que trae el archivo stage3 deberan ser sucientemente buenos. El siguiente ejemplo es simplemente eso, un ejemplo:
Listado de Cdigo 4.2: Denir las variables CFLAGS y CXXFLAGS CFLAGS="-O2 -march=i686 -pipe" # Use la misma configuracin para ambas variables. CXXFLAGS="${CFLAGS}" Nota: Quiz quiera echar un vistazo a la Gua de Compilacin Optimizada para mayor informacin sobre las distintas opciones de compilacin que afectan al sistema.

MAKEOPTS
Con la variable MAKEOPTS denimos cuantas compilaciones paralelas pueden hacerse al mismo tiempo cuando instalamos un paquete. El valor sugerido se obtiene sumando uno a la cantidad de CPUs (o de cores) de su sistema, aunque este valor no es siempre el perfecto.
Listado de Cdigo 4.3: MAKEOPTS para un sistema normal de 1-CPU MAKEOPTS="-j2"

Preparados, listos, ya!


Actualice su /mnt/gentoo/etc/portage/make.conf con sus propios parmetros y guarde los cambios (los usuarios de nano deben usar Ctrl-X). Ahora estamos listos para continuar con Instalando el sistema base de Gentoo.

6. Instalando el sistema base de Gentoo


6.a. Chrooting

23 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86


Opcional: Seleccionando servidores rplica

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

Para poder descargar el cdigo fuente rpidamente se recomienda seleccionar un servidor rplica rpido. Portage comprobar en su archivo make.conf la variable GENTOO_MIRRORS y utilizar los servidores que se especican all. Puede navegar en nuestra lista de rplicas y buscar un servidor (o servidores) que estn cerca de su localizacin (ya que estos suelen resultar los ms rpidos), sin embargo, nosotros le facilitamos una buena herramienta llamada mirrorselect la cual proporciona una interfaz amigable para seleccionar los servidores rplicas que quiera. Simplemente navegue a los servidores rplica que desee y pulse la barra espaciadora para seleccionar uno o ms servidores.
Listado de Cdigo 1.1: Utilizar mirrorselect para la variable GENTOO_MIRRORS # mirrorselect -i -o >> /mnt/gentoo/etc/portage/make.conf

Otra importante conguracin es la variable SYNC en make.conf. Esta variable contiene el servidor rsync que quiere utilizar para actualizar su rbol Portage (la coleccin de ebuilds, guiones que contienen toda la informacin que Portage necesita para descargar e instalar software). Aunque puede introducir manualmente el servidor SYNC, mirrorselect puede encargarse tambin de esto:
Listado de Cdigo 1.2: Seleccionar un servidor rsync utilizando mirrorselect # mirrorselect -i -r -o >> /mnt/gentoo/etc/portage/make.conf

Despus de ejecutar mirrorselect es recomendable que compruebe sus conguraciones en /mnt/gentoo/etc/portage /make.conf.
Nota: Si desea seleccionar un servidor SYNC manualmente en make.conf, revise la lista de servidores espejo comunitarios para averiguar el servidor ms cercano. Recomendamos escoger uno de rotacin, como rsync.us.gentoo.org, en vez de uno individual. Esto ayuda a repartir la carga y agrega seguridad en caso que el servidor espejo individual est fuera de lnea.

Copiar la informacin DNS


An queda una cosa que hacer antes de entrar en el nuevo entorno, copiar la informacin sobre los DNS en /etc/resolv.conf. Necesita hacer esto para asegurarse de que la red contine funcionando despus de entrar en el nuevo entorno. /etc/resolv.conf contiene los servidores de nombres para su red.
Listado de Cdigo 1.3: Copiar la informacin de DNS (La opcin "-L" es necesaria para asegurarnos que no copiamos un enlace simblico) # cp -L /etc/resolv.conf /mnt/gentoo/etc/

Montar los sistemas de archivos necesarios


En breve, cambiaremos la raz de Linux a la nueva localizacin. Para asegurarse de que el nuevo entorno funciona correctamente, necesitaremos disponer de ciertos sistemas de cheros en la nueva localizacin. Monte el sistema de cheros /proc en /mnt/gentoo/proc para poder usar la informacin proporcionada por el ncleo dentro del entorno chroot y luego monte el sistema de cheros /dev y /sys.
Listado de Cdigo 1.4: Montar /proc y /dev # mount -t proc none /mnt/gentoo/proc # mount --rbind /sys /mnt/gentoo/sys # mount --rbind /dev /mnt/gentoo/dev

Entrando al nuevo entorno


Ahora que todas las particiones estn inicializadas y el sistema base instalado, es hora de entrar en nuestro nuevo entorno de instalacin haciendo chrooting en l. Esto signica pasar desde el actual entorno de instalacin (CD de instalacin u otro medio) hacia su entorno de instalacin (o sea, las particiones inicializadas). El enjaulamiento se hace en tres pasos. Primero cambiamos la raz desde / (en el medio de instalacin) a /mnt/gentoo (en sus particiones) usando chroot. Despus crearemos un nuevo entorno usando env-update, el cual, en esencia crea las variables de entorno. Finalmente, cargamos esas variables en memoria tecleando source.
Listado de Cdigo 1.5: Entrar al nuevo entorno # chroot /mnt/gentoo /bin/bash # env-update >> Regenerating /etc/ld.so.cache... # source /etc/profile # export PS1="(chroot) $PS1"

24 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

Enhorabuena! Est dentro de su nuevo entorno Gentoo Linux. Por supuesto an no hemos terminado, todava quedan unas cuantas secciones :-) Si, en cualquier momento, necesita otro terminal o consola para acceder al entorno chroot, todo lo que necesita hacer es ejecutar de nuevo los pasos de arriba.

6.b. Congurar Portage


Opcional: Actualizando el rbol Portage
Debera actualizar ahora su rbol Portage a la ltima versin. emerge --sync har esto por nosotros.
Listado de Cdigo 2.1: Actualizar el rbol Portage # emerge --sync (Si est utilizando un terminal lento como algunos framebuffers o consolas seriales, puede aadir la opcin --quiet para aumentar la velocidad del proceso:) # emerge --sync --quiet

Si est detrs de un cortafuegos que bloquea el trco rsync, puede utilizar emerge-webrsync el cual descargar e instalar una imagen de Portage para su sistema. Si ha advertido que est disponible una nueva versin de Portage y se debe actualizar, debera hacerlo ejecutando emerge --oneshot portage.

Eligiendo el perl adecuado


Primero, una pequea denicin: Un perl es la piedra inicial de cualquier sistema Gentoo. No solamente especica unos valores predeterminados para USE, CFLAGS, y otras variables importantes, tambin bloquea del sistema ciertos rangos de versiones de algunos paquetes. Son mantenidos por los desarrolladores de Gentoo. Tiempo atrs, los perles raramente los tocaba el usuario. Sin embargo, puede haber situaciones en las cuales sea necesaria un cambio de perl. Se puede ver el perl actualmente utilizado con la siguiente orden:
Listado de Cdigo 2.2: Comprobar el perl del sistema # eselect profile list Available profile symlink targets: [1] default/linux/x86/10.0 * [2] default/linux/x86/10.0/desktop [3] default/linux/x86/10.0/server

Como puede ver, tambin existen sub-perles desktop (escritorio) y server (servidor) para algunas arquitecturas. Ejecutando eselect profile list mostrar los perles disponibles. Despus de revisar los perles disponibles para su arquitectura, puede utilizar uno diferente si lo desea:
Listado de Cdigo 2.3: Cambiar de perl # eselect profile set 2 Nota: El sub-perl developer existe especcamente para labores de desarrollo Gentoo Linux. No est diseado para ayudar a establecer entornos generales de desarrollo.

Congurando la variable USE


La variable USE es una de las ms importantes que Gentoo proporciona a sus usuarios. Muchos programas pueden ser compilados con o sin soporte opcional para ciertas cosas. Por ejemplo, algunos programas pueden ser compilados con soporte gtk, o con soporte qt. Otros programas pueden ser compilados con o sin soporte SSL. Algunos programas pueden ser compilados con soporte framebuer (svgalib) en lugar de soporte X11 (servidor X). Muchas distribuciones compilan sus paquetes con el mayor soporte posible, aumentando el tamao de los programas y su tiempo de carga, sin mencionar una cantidad enorme de dependencias. Con Gentoo puedes denir con que opciones debe ser compilado un paquete. Ah es donde acta la variable USE. En la variable USE denimos palabras clave que son transformadas a opciones de compilacin. Por ejemplo ssl compilar los programas que lo requieran con soporte ssl.-X quitara el soporte para el servidor X (ntese el signo menos delante). gnome gtk -kde -qt4 compilar sus programas con soporte para gnome (y gtk), pero sin soporte para kde (y qt), haciendo su sistema

25 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86


completamente compatible con GNOME.

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

Los valores por defecto de la variable USE se encuentran en make.defaults, archivos de su perl. Encontrar los archivos make.defaults en el directorio al cual apunte /etc/portage/make.profile y todos sus directorios padre. El valor predeterminado de conguracin de la variable USE es la suma de todas las conguraciones de USE en todos los archivos make.defaults. Lo que modique en /etc/portage/make.conf se calcula contra estos valores. Si pone algn valor en su USE, es aadido a la lista por defecto. Si elimina algo en su variable USE, ponindole un signo menos delante, es eliminado de la lista por defecto (si estaba en ella, claro). Nunca cambie nada en /etc/portage/make.profile ya que se sobreescribir cuando actualice Portage! Puede encontrar una descripcin completa sobre la variable USE en la segunda parte del Manual de Gentoo Captulo 1: Variables USE. Encontrar una descripcin ms extensa sobre las opciones de la variable USE en su sistema, en /usr/portage/profiles /use.desc.
Listado de Cdigo 2.4: Ver las opciones disponibles # less /usr/portage/profiles/use.desc (Puede desplazarse arriba y abajo utilizando sus teclas de flechas y salir pulsando 'q')

Como ejemplo, se muestran algunas opciones USE para un sistema basado en KDE con DVD, ALSA y soporte para grabar CD's.
Listado de Cdigo 2.5: Abrir /etc/portage/make.conf # nano -w /etc/portage/make.conf Listado de Cdigo 7.8: Congurar la variable USE USE="-gtk -gnome qt4 kde dvd alsa cdr"

7. Congurando el kernel
7.a. Zona Horaria
Primero necesita seleccionar su zona horaria para que su sistema sepa dnde est localizado. Busque su zona horaria en /usr/share/zoneinfo, cpiela a /etc/localtime. Por favor, evite las zonas horarias /usr/share/zoneinfo/Etc/GMT* ya que los nombres no indican las zonas esperadas. Por ejemplo, GMT-8 es realmente GMT+8.
Listado de Cdigo 1.1: Congurar la Zona Horaria # ls /usr/share/zoneinfo (Supongamos que desea utilizar Europe/Brussels) # cp /usr/share/zoneinfo/Europe/Brussels /etc/localtime (A continuacin ajustamos timezone) # echo "Europe/Brussels" > /etc/timezone

7.b. Instalar las Fuentes


Elegir un Ncleo
El eje alrededor del cual se construyen todas las distribuciones es el ncleo de Linux. Es la capa entre los programas de usuario y el hardware del sistema. Gentoo proporciona a sus usuarios varias fuentes de ncleos. Una lista completa est disponible en la Gua del Ncleo de Gentoo. Para los sistemas basados en x86 tenemos, entre otros ncleos, gentoo-sources (fuentes del ncleo modicadas para obtener algunas caractersticas adicionales). Elija sus fuentes del ncleo e instlelas usando emerge.
Listado de Cdigo 2.1: Instalar unas fuentes del ncleo # emerge gentoo-sources

Cuando vea en /usr/src ver un enlace simblico llamado linux apuntando a las fuentes del ncleo. En este caso, asumimos que la fuentes del ncleo instaladas apuntan a gentoo-sources-3.3.8. Su versin podra ser distinta, as que por favor tenga esto presente.
Listado de Cdigo 2.2: Visualizar el enlace a las fuentes del ncleo # ls -l /usr/src/linux lrwxrwxrwx 1 root root 12 Oct 13 11:04 /usr/src/linux -> linux-3.3.8

Ahora vamos a congurar y compilar las fuentes del ncleo. Puede usar para esto genkernel, que construir un ncleo genrico

26 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

como el usado por el CD de instalacin. Aqu explicaremos la conguracin "manual", ya que es la mejor manera de optimizar su entorno. Si quiere congurar manualmente su ncleo, contine con Predeterminado: Conguracin Manual. En cambio, si quiere usar genkernel debe leer Alternativa: Usar genkernel.

7.c. Predeterminado: Conguracin Manual


Introduccin
Congurar manualmente un ncleo frecuentemente es visto como el procedimiento ms difcil que tiene que realizar un usuario de Linux. Nada ms lejos de la verdad -- despus de congurar un par de ncleos no recordar si fue difcil ;) Sin embargo, una cosa s es cierta: debe conocer su sistema al empezar a congurar el ncleo manualmente. Se puede recolectar mucha informacin instalando pciutils (emerge pciutils), que contiene lspci. Ahora podr usar lspci en el entorno chroot. Puede ignorar tranquilamente los avisos sobre pcilib (como pcilib: cannot open /sys/bus/pci/devices) desplegado por lspci. Alternativamente, puede ejecutar lspci desde un entorno no-chroot. Los resultados son iguales. Tambin puede ejecutar lsmod para ver qu mdulos del ncleo est usando el CD de instalacin (puede darle indicaciones acerca de qu activar). Ahora vaya al directorio de sus fuentes y ejecute make menuconfig. Esto producir un men de conguracin basado en ncurses.
Listado de Cdigo 3.1: Invocar a menucong # cd /usr/src/linux # make menuconfig

Aparecer una pantalla con diversas secciones de conguracin. Primero listaremos algunas opciones que debe activar (sino Gentoo no funcionar, o no funcionar bien sin conguracin adicional).

Activar Opciones Necesarias


Asegrese que todos los controladores vitales para el arranque del sistema (como pueden ser los de SCSI, ...) estn compilados dentro del ncleo y no como mdulos o, de lo contrario, su sistema no ser capaz de arrancar correctamente. Seleccione la familia correcta de procesadores:
Listado de Cdigo 3.2: Seleccionar la familia de procesador correcta Processor type and features ---> (Seleccinelo de acuerdo a su sistema) (Athlon/Duron/K7) Processor family

A continuacin seleccione Maintain a devtmpfs le system to mount at /dev de modo que los cheros de dispositivo crticos estn disponibles cuanto antes en el proceso de inicio.
Listado de Cdigo 3.3: Habilitar soporte devtmpfs Device Drivers ---> Generic Driver Options ---> [*] Maintain a devtmpfs filesystem to mount at /dev [ ] Automount devtmpfs at /dev, after the kernel mounted the rootfs

Vaya ahora a File Systems y seleccione los soportes para los sistemas de archivos que use. No los compile como mdulos, de otro modo su sistema Gentoo no ser capaz de montar sus particiones. Tambin seleccione Virtual memory y el /proc file system.
Listado de Cdigo 3.4: Seleccionar los sistemas de archivos necesarios File systems ---> (Seleccione una o ms de las siguientes opciones segn las necesite su sistema) <*> Second extended fs support <*> Ext3 journalling file system support <*> The Extended 4 (ext4) filesystem <*> Reiserfs support <*> JFS filesystem support <*> XFS filesystem support ... Pseudo Filesystems ---> [*] /proc file system support [*] Virtual memory file system support (former shm fs) (Habilite el soporte de etiqueta de particin GPT si lo ha utilizado anteriormente) -*- Enable the block layer --->

27 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86


... [*] Advanced partition selection ... [*] EFI GUID Partition support

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

Si est usando PPPoE para conectarse a Internet o est usando un mdem dial-up, necesitar las siguientes opciones en el ncleo:
Listado de Cdigo 3.5: Seleccionar los controladores PPPoE necesarios Device Drivers ---> Network device Support ---> <*> PPP (point-to-point protocol) support <*> PPP support for async serial ports <*> PPP support for sync tty ports

Las dos opciones de compresin no le afectan pero no son necesarias, ni para la opcin PPP over Ethernet, tal vez solo sea usada por ppp cuando congure un ncleo en modo PPPoE. Si lo requiere, no olvide incluir el soporte en el ncleo para su tarjeta ethernet: Si tiene un CPU Intel que soporte HyperThreading (tm), o tiene un sistema multi-CPU, debe activar "Symmetric multi-processing support":
Listado de Cdigo 3.6: Activar el soporte SMP Processor type and features ---> [*] Symmetric multi-processing support Nota: En sistemas multi-ncleo, cada ncleo cuenta como un procesador.

Si se dispone de ms de 4GB de RAM, es necesario activar "High Memory Support (64G)". Si usa dispositivos de entrada USB (como un ratn o teclado) no olvide activarlos tambin:
Listado de Cdigo 3.7: Activar Soporte para Dispositivos de Entrada USB Device Drivers ---> USB Devices ---> [*] USB Human Interface Device (full HID) support

Si se quiere soporte para PCMCIA en ordenadores porttiles, no se olvide de activar el soporte para el puente de tarjetas PCMCIA que se encuentre en su sistema:
Listado de Cdigo 3.8: Activar el soporte PCMCIA Bus options (PCI etc.) ---> PCCARD (PCMCIA/CardBus) support ---> <*> PCCard (PCMCIA/CardBus) support (Seleccione 16 bit si necesita soporte para las antiguas tarjetas PCMCIA. La mayora de la gente querr utilizar esto.) <*> 16-bit PCMCIA support [*] 32-bit CardBus support (Seleccione los puentes adecuados a continuacin) *** PC-card bridges *** <*> CardBus yenta-compatible bridge support (NEW) <*> Cirrus PD6729 compatible bridge support (NEW) <*> i82092 compatible bridge support (NEW)

Cuando haya terminado de congurar el ncleo, contine con Compilar e Instalar.

Compilar e Instalar
Ahora que hemos congurado el ncleo, es hora de compilarlo e instalarlo. Salga de la conguracin y comience con el proceso de compilacin:
Listado de Cdigo 3.9: Compilar el ncleo # make && make modules_install

Al terminar de compilar el ncleo, copie la imagen a /boot. Use cualquier nombre que estime apropiado para el ncleo y recurdelo, ya que le har falta ms adelante al congurar el gestor de arranque. Recuerde reemplazar kernel-3.3.8-gentoo con el nombre y versin del ncleo.

28 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

Listado de Cdigo 3.10: Instalar el ncleo # cp arch/x86/boot/bzImage /boot/kernel-3.3.8-gentoo

(Opcional) Construir un sistema de cheros Initramfs


Si utiliza un esquema de particionamiento especco en el que las localizaciones de cheros de sistema importantes (como /usr o /var) se encuentran en particiones separadas, entonces necesitar congurar un sistema de cheros initramfs de modo que esta particin se pueda montar antes de que se acceda a la misma. Sin un sistema de cheros initramfs, se corre el riesgo de que el sistema no se inicie de forma correcta ya que las herramientas responsables de montar los sistemas de cheros necesitan informacin que se encuentra en stos. Un sistema de cheros initramfs obtendr los cheros necesarios en un archivo que se utiliza una vez se inicie el ncleo, pero antes de que el control se ceda a la herramienta init. Los guiones en el sistema de cheros initramfs se asegurar de que las particiones se han montado correctamente antes de que el sistema contine con su inicio. Para instalar un sistema de cheros initramfs, en primer lugar instale genkernel, a continuacin genere el sistema de cheros initramfs.
Listado de Cdigo 3.11: Construir un sistema de cheros initramfs # emerge genkernel # genkernel --install initramfs

Si necesita soporte especco en el sistema de cheros initramfs, tal como lvm o raid, aada la opcin apropiada a genkernel. Lea genkernel --help para obtener ms informacin. En el ejemplo mostrado a continuacin se habilita el soporte para LVM y el software raid (mdadm):
Listado de Cdigo 3.12: Construir un sistema de cheros initramfs con soporte para LVM y software raid # genkernel --lvm --mdadm --install initramfs

El sistema de cheros initramfs se almacenar en /boot. Puede encontrar este chero simplemente listando aqullos cheros que comienzan por initramfs:
Listado de Cdigo 3.13: Comprobar el nombre del chero initramfs # ls /boot/initramfs*

Ahora contine cono Los mdulos del ncleo.

7.d. Alternativa: Usar genkernel


Si est leyendo esta seccin, eligi usar nuestro guin genkernel para congurar el ncleo. Ahora que el rbol de las fuentes del ncleo est instalado, es hora de compilarlo usando nuestro guin genkernel que automticamente construir un ncleo. genkernel trabaja congurando un ncleo prcticamente idntico al ncleo de nuestro CD de instalacin. Esto signica que cuando use genkernel para construir su ncleo, su sistema generalmente detectar todo su hardware en el arranque, tal como lo hace el CD de instalacin. Debido a que genkernel no requiere ninguna conguracin manual del ncleo, es una solucin ideal para esos usuarios que no se sienten cmodos compilando sus propios ncleos. Ahora, veamos como usar genkernel. Primero, haga emerge al ebuild de genkernel:
Listado de Cdigo 4.1: Instalar genkernel # emerge genkernel

Ahora, compile las fuentes del ncleo ejecutando genkernel all Recuerde que genkernel compila un ncleo que soporta casi todo el hardware, esta compilacin tardar un rato en terminar! Observe que si su particin de arranque no usa el sistema de archivos ext2 o ext3, necesitar congurar manualmente su ncleo con genkernel --menuconfig all y agregar soporte para su sistema de archivos en el ncleo (no como mdulo). Los usuarios de LVM2 probablemente querrn aadir tambin el argumento --lvm2.
Listado de Cdigo 4.2: Ejecutar genkernel # genkernel all

Una vez que genkernel haya terminado, un ncleo, un conjunto completo de mdulos y un disco ram de inicio (initramfs) sern creados. Usaremos el ncleo e initrd para congurar un gestor de arranque ms tarde en este documento. Escriba los nombres del ncleo y de initrd ya que los necesitar para el archivo de conguracin del gestor de arranque. El initrd iniciar inmediatamente despus del arranque para realizar la autodeteccin de hardware (igual que en el CD de instalacin) antes que inicie su sistema "real".

29 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

Listado de Cdigo 4.3: Vericar los nombres del ncleo e initrd creados # ls /boot/kernel* /boot/initramfs*

7.e. Mdulos del Ncleo


Congurar los Mdulos
Debe listar los mdulos que quiera cargar automticamente en /etc/conf.d/modules. Puede agregar opciones extra a los mdulos si as lo desea. Para ver todos los mdulos disponibles, ejecute el comando find. No olvide sustituir "<kernel version>" por la versin del kernel que acaba de compilar:
Listado de Cdigo 5.1: Ver todos los mdulos disponibles # find /lib/modules/<kernel version>/ -type f -iname '*.o' -or -iname '*.ko' | less

Por ejemplo, para cargar automticamente el mdulo 3c59x.ko (el driver para una tarjeta de red especca de la familia 3Com), edite el archivo /etc/conf.d/modules y escriba el nombre del mdulo.
Listado de Cdigo 5.2: Editar /etc/conf.d/modules # nano -w /etc/conf.d/modules modules_2_6="3c59x"

Contine la instalacin con Congurar su Sistema.

8. Congurando su sistema
8.a. Informacin del Sistema de Ficheros
Qu es el fstab?
En Linux, todas las particiones usadas por el sistema deben estar reejadas en /etc/fstab. Este chero contiene los puntos de montaje de esas particiones (donde se encuentran en la estructura del sistema de cheros), cmo deben ser montadas y con que opciones especiales (automticamente o no, si los usuarios pueden montarlas o no, etc.).

Creando el /etc/fstab
/etc/fstab usa una sintaxis especial. Cada lnea tiene seis campos, separados por espacios en blanco (espacio(s), tabuladores o una combinacin). Cada campo tiene su propio signicado: El primer campo muestra la particin descrita (la ruta al chero de dispositivo) El segundo campo muestra el punto de montaje donde la particin debe montarse El tercer campo muestra el sistema de cheros usado por la particin El cuarto campo muestra las opciones de montaje que debe usar mount al tratar de montar la particin. Como cada sistema de cheros tiene sus propias opciones de montaje, le animamos a leer la pgina man de mount ( man mount) para un listado completo. Cuando existen mltiples opciones se separan por comas. El quinto campo es usado por dump para determinar si la particin necesita ser volcada o no. En general puede dejar esto como 0 (cero). El sexto campo es usado por fsck para determinar el orden en que los sistemas de cheros deben ser comprobados si el sistema no se apag correctamente. La particin raz debe tener un 1 mientras que el resto puede tener 2 (o 0 en el caso en que la comprobacin del sistema de cheros no sea necesaria).
Importante: El archivo /etc/fstab que proporciona Gentoo de manera predeterminada no es un archivo fstab vlido. Debe crear su propio /etc/fstab: Listado de Cdigo 1.1: Abrir /etc/fstab # nano -w /etc/fstab

Vamos a ver como anotar las opciones para la particin /boot. Esto es solo un ejemplo, si su arquitectura no requiere una particin /boot, no lo copie al pie de la letra. En nuestro ejemplo para x86 de particionamiento, /boot es la particin /dev/sda1, con un sistema de cheros ext2. Esta necesita ser comprobada durante el arranque del sistema, as que necesitamos escribir:
Listado de Cdigo 1.2: Un ejemplo de lnea /boot para /etc/fstab

30 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

/dev/sda1

/boot

ext2

defaults

0 2

Algunos usuarios no quieren que su particin /boot sea montada automticamente para mejorar la seguridad de su sistema. Estos usuarios deberan sustituir defaults por noauto. Esto implica la necesidad de montar manualmente la particin cada vez que se quiera usarla. Aada las reglas que coincidan con su esquema de particionamiento para su dispositivo(s) CD-ROM, y por supuesto, si tiene otras particiones o dispositivos, tambin para stos. Ahora use el ejemplo que tiene a continuacin para crear su /etc/fstab:
Listado de Cdigo 1.3: Un ejemplo completo de /etc/fstab /dev/sda1 /dev/sda2 /dev/sda3 /dev/cdrom /boot none / /mnt/cdrom ext2 swap ext3 auto defaults,noatime sw noatime noauto,user 0 2 0 0 0 1 0 0

auto provoca que mount intente adivinar el sistema de archivos (se recomienda para los dispositivos extrables ya que pueden ser creados con distintos sistemas de cheros) y user hace posible a los usuarios que no pertenezcan a root monten el CD. Para aumentar el rendimiento, la mayora de usuarios podran querer agregar la opcin noatime como opcin de montaje, que desemboca en un sistema ms rpido, puesto que los tiempos de acceso no son registrados (de todas formas, no necesitar esto en general): Repase su /etc/fstab, guarde los cambios y salga para continuar.

8.b. Informacin de red


Nombre de antrin, nombre de dominio, etc.
Una de las elecciones que un usuario ha de hacer es el nombre de su PC. Esto parece muy fcil, pero muchos usuarios tienen dicultades eligiendo el nombre apropiado para su PC-Linux. Para acelerar las cosas, sepa que el nombre que elija puede cambiarlo ms tarde. Para el caso que nos ocupa, puede llamar a su sistema simplemente tux y a su dominio redcasera.
Listado de Cdigo 2.1: Ajustar el nombre del antrin # nano -w /etc/conf.d/hostname (Configure la variable hostname con el nombre del anfitrin) hostname="tux"

A continuacin, si se necesita un nombre de dominio, puede congurarse en /etc/conf.d/net. Solamente necesitar un dominio si su ISP o administrador de sistemas se lo indica, o si tiene un servidor DNS pero no DHCP. No necesitar preocuparse por el DNS o nombres de dominios si su red se congura por DHCP.
Listado de Cdigo 2.2: Congurar el nombre de dominio # nano -w /etc/conf.d/net (Asigne la variable dns_domain a su nombre de dominio) dns_domain_lo="homenetwork" Nota: Si no congura un nombre de dominio, puede librarse del mensaje: "This is hostname.(none)" en las pantalla de inicio editando /etc/issue. Simplemente elimine el texto .\O de ese archivo.

Si tiene un dominio NIS (si no conoce que es esto, seguramente es que no tenga uno), necesita denirlo:
Listado de Cdigo 2.3: Congurar el dominio NIS # nano -w /etc/conf.d/net (Asigne la variable nis_domain a su nombre de dominio NIS) nis_domain_lo="my-nisdomain" Nota: Para ms informacin sobre conguracin de DNS y NIS, por favor lea los ejemplos que se encuentran en /usr/share/doc/openrc-* /net.example.bz2 que se pueden leer utilizando bzless. Adems, tal vez quiera hacer emerge openresolv para manejar su conguracin DNS/NIS.

Congurando su Red
Antes de llegar a experimentar esa sensacin "Hey, ya lo tengo todo", debes recordar que la red que conguraste en el inicio de

31 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

la instalacin de Gentoo fue tan solo para la instalacin. A partir de ahora vamos a congurar la red permanentemente para su sistema Gentoo.
Nota: Informacin ms detallada sobre redes, incluyendo temas ms avanzados como unin de interfaces (bonding), puenteo (bridging), redes virtuales 802.1Q o redes inalmbricas est disponible en la seccin Conguracin de redes en Gentoo.

Toda la informacin de red esta reunida en /etc/conf.d/net. Este chero usa una sintaxis directa, aunque no intuitiva, si no se sabe como congurar una red manualmente. Pero no se asuste, se lo explicaremos todo. Podemos encontrar un ejemplo completamente comentado que cubre los distintos tipo de conguraciones en /usr/share/doc/openrc-*/net.example.bz2 DHCP se emplea de manera predeterminada. Para que funcione, debe instalar un cliente de DHCP. Esto se describe ms adelante en Instalar las herramientas necesarias para el sistema. No se olvide de instalar un cliente DHCP. Si se necesita congurar la conexin de red porque es necesario incluir opciones de DHCP especcas o porque no utiliza DHCP, abra /etc/conf.d/net con su editor favorito (nano se emplea en este ejemplo):
Listado de Cdigo 2.4: Abrir /etc/conf.d/net para su edicin # nano -w /etc/conf.d/net

Ver el siguiente chero:


Listado de Cdigo 2.5: Archivo /etc/conf.d/net por defecto # # # # This blank configuration will automatically use DHCP for any net.* scripts in /etc/init.d. To create a more complete configuration, please review /usr/share/doc/openrc-*/net.example.bz2 and save your configuration in /etc/conf.d/net (this file :]!).

Para introducir su propia direccin IP, mscara de red y pasarela, necesita congurar tanto config_eth0 como routes_eth0:
Listado de Cdigo 2.6: Congurar manualmente la informacin IP para eth0 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 dena, config_eth0:


Listado de Cdigo 2.7: Obtener una direccin IP automticamente para eth0 config_eth0="dhcp"

Por favor, consulte /usr/share/doc/openrc-*/net.example.bz2 para ver una lista con todas las opciones disponibles. Consulte la pgina man de su cliente DHCP si necesita congurar opciones especcas. Si tiene varias interfaces de red, repita los pasos anteriores utilizando config_eth1, config_eth2, etc. Ahora guarde la conguracin y salga para continuar.

Inicio automtico de red en el arranque


Para disponer de su interfaz de red activada en el arranque, necesita agregarla al nivel de ejecucin por defecto (default).
Listado de Cdigo 2.8: Agregar net.eth0 al nivel de ejecucin por defecto (default) # cd /etc/init.d # ln -s net.lo net.eth0 # rc-update add net.eth0 default

Si tiene distintas interfaces de red, necesitara crear los correspondientes net.eth1, net.eth2 etc, tal y como hizo con net.eth0.

Anotando la Informacin de la Red


Necesita informar a Linux sobre su red. Esto se dene en /etc/hosts y ayuda a transformar los nombres de antriones a direcciones IP para aquellas mquinas que no se resuelven a travs de su servidor de nombres (DNS). Se necesita denir la mquina. Adems se denen otras mquinas o redes si no se va a congurar un servidor interno de DNS en la propia mquina:
Listado de Cdigo 2.9: Abrir /etc/hosts # nano -w /etc/hosts Listado de Cdigo 2.10: Completar la informacin de red

32 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

(Esto define la mquina actual) 127.0.0.1 localhost (Definir mquinas adicionales o la propia red, necesitan tener una IP esttica para definirlas de esta manera.) 192.168.0.5 192.168.0.6 jenny.redlocal jenny benny.redlocal benny

Guarde y salga del editor para continuar. Si no tiene PCMCIA, puede continuar con Informacin del Sistema. Los usuarios de PCMCIA deberan leer el siguiente apartado sobre PCMCIA.

Opcional: Hacer funcionar el PCMCIA


Los usuarios de PCMCIA deben instalar primero el paquete pcmciautils.
Listado de Cdigo 2.11: Instalar pcmciautils # emerge pcmciautils

8.c. Informacin del sistema


Contrasea de administrador (Root)
Primero jamos la contrasea de administrador escribiendo:
Listado de Cdigo 3.1: Congurar la contrasea de administrador # passwd

Informacin del sistema


Gentoo usa /etc/rc.conf para congurar los servicios y el arranque y apagado de su sistema. Abra el chero /etc/rc.conf y disfrute de todos los comentarios que hay en este chero.
Listado de Cdigo 3.2: Congurar servicios # nano -w /etc/rc.conf

Cuando haya terminado de congurar estos dos cheros, gurdelos y salga de su editor. Gentoo utiliza /etc/conf.d/keymaps para gestionar la conguracin del teclado. Edtelo y congure su teclado.
Listado de Cdigo 3.3: Abrir /etc/conf.d/keymaps # nano -w /etc/conf.d/keymaps

Tenga especial cuidado con la variable keymap: porque si selecciona un keymap incorrecto, obtendr extraos resultados al escribir con el teclado. Cuando termine de congurar /etc/conf.d/keymaps, guarde los cambios y salga. Gentoo utiliza /etc/conf.d/hwclock para jar las opciones del reloj. Edtelo de acuerdo a sus necesidades.
Listado de Cdigo 3.4: Abrir /etc/conf.d/hwclock # nano -w /etc/conf.d/hwclock

Si su reloj de hardware no utiliza UTC, aada clock="local" al archivo. De lo contrario notar como el reloj no funciona correctamente. Cuando haya acabado de congurar /etc/conf.d/hwclock, gurdelo y salga del editor. Debera denir la zona horaria que previamente ha copiado a /etc/localtime en el chero /etc/timezone de modo que futuras actualizaciones del paquete sys-libs/timezone-data puedan actualizar /etc/localtime de forma automtica. Por ejemplo, si utiliz como timezone Europe/Brussels, debera escribir Europe/Brussels en el chero /etc/timezone.

Congurar localizaciones
Probablemente utilice nicamente una o dos localizaciones (locales) en su sistema. Debe especicar las localizaciones que

33 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86


utilizar en el chero /etc/locale.gen.
Listado de Cdigo 3.5: Abrir /etc/locale.gen # nano -w /etc/locale.gen

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

A continuacin se muestran dos localizaciones para obtener el ingls de Estados Unidos y el espaol de Espaa con los formatos de carcter asociados (como por ejemplo UTF-8).
Listado de Cdigo 3.6: Especicar sus localizaciones en_US ISO-8859-1 en_US.UTF-8 UTF-8 es_ES ISO-8859-1 es_ES@euro ISO-8859-15 Nota: Puede seleccionar las localizaciones que desee de la lista que se obtiene ejecutando locale -a. Aviso: Le recomendamos que utilice al menos una localizacin UTF-8 ya que sus aplicaciones pueden necesitarla.

El siguiente paso es ejecutar locale-gen. Se generarn las localizaciones que ha especicado en el chero /etc/locale.gen.
Listado de Cdigo 3.7: Ejecutar locale-gen # locale-gen

Una vez realizado el paso anterior, tendr la posibilidad de ajustar las deniciones que afectan a todo el sistema en el chero /etc/env.d/02locale:
Listado de Cdigo 3.8: Denir la localizacin por defecto del sistema en /etc/env.d/02locale LANG="es_ES.UTF-8" LC_COLLATE="C"

Y recargue su entorno:
Listado de Cdigo 3.9: Recargar el entorno del intrprete de comandos # env-update && source /etc/profile

Disponemos de una Gua de Localizacin para ayudarle en este proceso. Puede tambin leer nuestra detallada Gua UTF-8 para obtener informacin especca de cmo habilitar UTF-8 en su sistema. Por favor contine con Instalando las herramientas de sistema necesarias.

9. Instalando herramientas necesarias para el sistema


9.a. Bitcora del Sistema
Algunas herramientas no estn incluidas en el archivo stage3 porque varios paquetes proporcionan la misma funcionalidad. Ahora es el momento en que debemos decidir cual queremos instalar. La primera herramienta por la que tiene que decidirse es la que proporciona el registro y las bitcoras para su sistema. Unix y Linux tienen una excelente historia en sus capacidades de registros -- si lo quisiera podra registrar todo lo que pasa en su sistema en bitcoras. Esto sucede con el registro del sistema. Gentoo ofrece varios sistemas de registro para elegir. Estn sysklogd, que es el conjunto tradicional de demonios de bitcoras, syslog-ng, un sistema de bitcora avanzado, y metalog que es una bitcora de sistemas altamente congurable. Tambin puede haber otros en el Portage - el nmero de paquetes disponibles crece da a da. Si est pensando utilizar sysklogd o syslog-ng quiz quiera instalar posteriormente logrotate ya que estas herramientas no proporcionan ningn mecanismo de rotacin para los archivos de log. Para instalar la bitcora del sistema de su eleccin, use emerge y agrguelo al nivel de arranque predeterminado usando rc-update. El siguiente ejemplo instala syslog-ng. Por supuesto puede sustituirlo por el sistema de bitcora de su eleccin:
Listado de Cdigo 1.1: Instalar un sistema de bitcoras # emerge syslog-ng # rc-update add syslog-ng default

9.b. Opcional: Demonio Cron

34 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

El siguiente es el demonio cron. Aunque es opcional y no lo requiere su sistema es recomendable instalar uno. Pero qu es un demonio cron? Un demonio cron ejecuta comandos en horarios planicados. Es muy cmodo si necesita ejecutar comandos regularmente (por ejemplo a diario, cada semana o mensualmente). Gentoo ofrece tres posibles demonios cron: dcron, fcron y vixie-cron. Instalar cualquiera es similar a instalar un sistema de bitcoras. Sin embargo dcron y fcron requieren un comando extra de conguracin, que es crontab /etc/crontab. Si no sabe cul escoger, use vixie-cron. Solo proporcionamos vixie-cron para instalaciones sin red. Si quiere otro demonio cron puede esperar e instalarlo ms tarde.
Listado de Cdigo 2.1: Instalar un demonio cron # emerge vixie-cron # rc-update add vixie-cron default (Solo si opt por dcron o fcron) # crontab /etc/crontab

9.c. Opcional: Indexar Archivos


Si quiere crear un ndice de su sistema de archivos para habilitar su rpida localizacin usando la herramienta locate, necesita instalar sys-apps/mlocate.
Listado de Cdigo 3.1: Instalar mlocate # emerge mlocate

9.d. Opcional: Acceso remoto


Si necesita acceder a su sistema desde un equipo remoto despus de la instalacin, no olvide aadir sshd al nivel de ejecucin por defecto:
Listado de Cdigo 4.1: Aadir sshd al nivel de ejecucin por defecto # rc-update add sshd default

Si necesita acceso via consola serie (lo cual es posible en el caso de servidores remotos), necesitar eliminar el comentario de la seccin de la consola serie en /etc/inittab.
Listado de Cdigo 4.2: Editar /etc/inittab # nano -w /etc/inittab

El siguiente extracto muestra la seccin sin comentarios:


Listado de Cdigo 4.3: Eliminar el comentario para las consolas series en inittab # SERIAL CONSOLES s0:12345:respawn:/sbin/agetty 9600 ttyS0 vt100 s1:12345:respawn:/sbin/agetty 9600 ttyS1 vt100

9.e. Herramientas del Sistema de Archivos


Dependiendo del sistema de archivos que se est usando, necesita instalar las herramientas necesarias (para vericar la integridad del sistema de archivos, crear sistemas de archivos adicionales, etc.) Por favor note que las herramientas para manejar sistemas de archivos ext2/ext3 (e2fsprogs) ya se encuentran instaladas como parte del sistema. La siguiente tabla lista las herramientas que necesita instalar segn un sistema de archivos determinado:
Sistema de Archivos
XFS ReiserFS JFS

Herramienta
xfsprogs reiserfsprogs jfsutils

Comando para Instalar


emerge xfsprogs emerge reiserfsprogs emerge jfsutils

9.f. Herramientas de Red


Si no necesita herramientas adicionales relacionadas con la red (como ppp o un cliente dhcp) contine con Conguracin del Cargador de Arranque.

Opcional: Instalar un Cliente DHCP


Si necesita que Gentoo obtenga automticamente una direccin IP para sus interfaces de red, necesita instalar en su sistema dhcpcd (o cualquier otro cliente DHCP) . Si no lo hace ahora, tal vez no pueda conectarse a Internet despus de la instalacin!

35 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

Listado de Cdigo 6.1: Instalar dhcpcd # emerge dhcpcd

Opcional: Instalar un Cliente PPPoE


Si necesita ppp para conectarse a la red, necesita instalarlo.
Listado de Cdigo 6.2: Instalar ppp # emerge ppp

Ahora contine con Congurar el Cargado de Arranque.

10. Congurando el gestor de arranque


10.a. Realizando su eleccin
Introduccin
Ahora que su ncleo est congurado y compilado y los archivos de conguracin necesarios han sido llenados correctamente, ha llegado la hora de instalar el programa que iniciar el ncleo cuando arranque el sistema. Este programa es conocido como gestor de arranque. Para x86, Gentoo dispone de GRUB y LILO. Pero antes de instalar un gestor de arranque, le informaremos sobre como congurar la memoria de imagen (framebuer), siempre que quiera, claro. Con la memoria de imagen puede ejecutar la lnea de comandos de Linux con algunas caractersticas grcas (limitadas) como, por ejemplo, el empleo de un bonita imagen de Gentoo durante el inicio (bootsplash).

Opcional: Memoria de imagen (Framebuer)


Si ha congurado su ncleo con soporte framebuer (o ha utilizado la conguracin predeterminada de genkernel) puede activarlo aadiendo el parmetro video al archivo de conguracin del gestor de inicio. Lo primero que necesita es conocer que tipo de dispositivo de framebuer est utilizando. Debera usar uvesafb como controlador VESA. El parmetro video controla las opciones de visualizacin. Necesita que se le indique el controlador de framebuer ( vesafb para ncleos 2.6, o vesa para ncleos 2.4) seguido de los parmetro de control que quiera activar. Todas las variables aparecen listadas en /usr/src/linux/Documentation/fb/uvesafb.txt. Las opciones ms utilizadas son:
Control
ywrap mtrr:n

Descripcin
Asume que su tarjeta grca puede volver sobre su memoria. (ej. continuar al principio cuando se aproxima al nal) Congura los registros MTRR. n puede ser: 0 - desactivados 1 - no almacenables en cach 2 - write-back 3 - write-combining 4 - write-through Congura la resolucin, la profundidad de color y la tasa de refresco. Por ejemplo, 1024x768-32@85 para una resolucin de 1024x768, profundidad de color 32 bit y una tasa de refresco de 85 Hz.

mode

El resultado sera algo como: video=uvesafb:mtrr:3,ywrap,1024x768-32@85. Recuerde (o anote) sta conguracin. La necesitar dentro de poco.

10.b. Predeterminado: Usando GRUB


Comprendiendo la terminologa de GRUB
La parte ms crtica para la comprensin de GRUB, es el habituarse a la manera en que GRUB se reere a los discos duros y las particiones. Su particin Linux /dev/sda1 es denominada (hd0,0) por GRUB. Note los parntesis alrededor de hd0,0, que son obligatorios. La numeracin de los discos duros comienza con un cero, en lugar de utilizar una "a" y las particiones empiezan con cero en lugar de con un uno. Advertimos tambin que entre los dispositivos hd, solo se cuentan los discos duros y no los dispositivos atapi-ide como cdroms y grabadoras. Adems, la especicacin es igual para dispositivos SCSI. (Usualmente son asignados nmeros mayores, excepto cuando el bios est congurada para arrancar desde los dispositivos scsi). Cuando se le indica la BIOS que arranque desde un disco duro diferente (por ejemplo, el esclavo primario), ese disco duro se ver como hd0. Asumiendo que tiene un disco duro en /dev/sda y dos ms en /dev/sdb y /dev/sdc, la particin /dev/sdd7 que descrita como (hd1,6). A lo mejor puede sonar raro y bien podra serlo, pero como veremos, GRUB ofrece un mecanismo de terminacin por tabulador que es de gran ayuda para los que tienen una gran cantidad de discos duros y que andan algo perdidos con este

36 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86


esquema de numeracin. Habindole tomado la medida, es hora de instalar GRUB.

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

Instalando GRUB
Para instalar GRUB, primero lo instalamos con emerge:
Listado de Cdigo 2.1: Instalando GRUB # emerge grub

Aunque GRUB est instalado, todava necesitamos crear un archivo de conguracin para l e instalar GRUB en nuestro MBR para que pueda arrancar automticamente nuestro ncleo recin creado. Cree el archivo /boot/grub/grub.conf con nano, o cualquier otro editor:
Listado de Cdigo 2.2: Creando el archivo /boot/grub/grub.conf # nano -w /boot/grub/grub.conf

Ahora vamos a escribir el grub.conf. Asegrese de utilizar el nombre de su archivo de imagen del ncleo y, si es necesario, el nombre de su imagen initrd.
Nota: Grub asigna las designaciones segn el BIOS. Al cambiar la conguracin del BIOS, cambiarn tambin las designaciones de los dispositivos. Por ejemplo, si cambia el orden de los dispositivos para el arranque, tal vez tenga que cambiar la conguracin grub tambin. Nota: Si su sistema de chero para root es JFS, deber aadir "ro" a la lnea del ncleo ya que JFS necesita leer su log antes de permitir montajes de lectura-escritura. Listado de Cdigo 2.3: grub.conf ejemplo # Qu ttulo arrancar por defecto. 0 es el primero, 1 el segundo, etc. default 0 # Cuantos segundos esperar antes de arrancar el ttulo por defecto. timeout 30 # Una bella, hermosa imagen para ensalzar las cosas un poco :) # Comntela si no tiene una tarjeta grfica instalada splashimage=(hd0,0)/boot/grub/splash.xpm.gz title Gentoo Linux 3.3.8 # Particin donde se encuentra la imagen del ncleo (o sistema operativo) root (hd0,0) kernel /boot/kernel-3.3.8-gentoo root=/dev/sda3 title Gentoo Linux 3.3.8 (rescate) # Particin dnde se encuentra la imagen del ncleo (o sistema operativo) root (hd0,0) kernel /boot/kernel-3.3.8-gentoo root=/dev/sda3 init=/bin/bb # Las siguientes cuatro lneas solo se usan en caso de arranque dual con un sistema Windows. # En este caso, Windows reside en la particin /dev/sda6. title Windows XP rootnoverify (hd0,5) makeactive chainloader +1

Cuando construya el ncleo Linux, si opta por incluir un initramfs desde el cual iniciar, entonces tendr que cambiar la conguracin haciendo referencia a este chero initramfs e indicndole donde se encuentra su sistema de cheros raz en:
Listado de Cdigo 2.4: Fragmento de GRUB para construcciones de ncleo con initramfs habilitado title Gentoo Linux 3.3.8 root (hd0,0) kernel /boot/3.3.8 real_root=/dev/sda3 initrd /boot/initramfs-genkernel-x86-3.3.8-gentoo

Si se utiliza un esquema de particiones y/o imagen de ncleo distinta, haga los ajustes respectivos. Sin embargo, asegrese que cualquier cosa que siga un dispositivo GRUB (tal como (hd0,0)) sea relativa al punto de montaje y no de la raz. En otras palabras, (hd0,0)/grub/splash.xpm.gz es en realidad /boot/grub/splash.xpm.gz ya que (hd0,0) es /boot. Adems, si se eligi utilizar un esquema de particionamiento diferente y no coloc /boot en una particin separada, el prejo /boot empleado en los ejemplos anteriores, es realmente necesario. Si ha seguido el plan de particionamiento sugerido, el prejo /boot no es obligatorio, un enlace simblico /bootlo hace funcionar. En resumen, los ejemplos anteriores deberan funcionar si ha

37 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86


denido una particin separada para /boot o no.

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

Si necesita pasar algn parmetro adicional al ncleo, sencillamente agrguelo al nal de la lnea de comandos del ncleo. Ya estamos pasando una opcin (root=/dev/sda3 o real_root=/dev/sda3), pero se pueden pasar otras tambin, como el parmetro video del que hablamos previamente. Si su archivo de conguracin del gestor de arranque contiene el parmetro real_root, use el parmetro real_rootags para establecer las opciones de montaje del sistema de archivos raz. Si est utilizando un ncleo 2.6.7 o superior y ha puenteado su disco duro porque la BIOS no puede manejar discos duros grandes, necesitar aadir sda=stroke. Los usuarios de genkernel deben saber que sus ncleos usan las mismas opciones de arranque que el CD de instalacin. Por ejemplo, si tiene dispositivos scsi, debera agregar el parmetro doscsi al ncleo. Ahora grabe el archivo grub.conf y salga. An necesita instalar GRUB en el MBR (Master Boot Record) para que GRUB se ejecute automticamente cuando arranque su sistema. Los desarrolladores de GRUB recomiendan utilizar grub-install. Sin embargo, si por alguna razn grub-install no funciona correctamente todava tiene la opcin de instalar GRUB manualmente. Continu con Predeterminado: Congurando GRUB utilizando grub-install o Alternativa: Congurando GRUB a mano, utilizando instrucciones.

Predeterminado: Congurando GRUB utilizando grub-install


Para instalar GRUB necesita ejecutar el comando grub-install. Sin embargo grub-install no funcionar tal cual se instala, ya que estamos dentro de un entorno chroot. Antes de seguir, necesitar actualizar /etc/mtab, el cual contiene la informacin relativa a todos los sistemas de archivos montados. Afortunadamente hay una manera sencilla de realizar esto, simplemente copie /proc/mounts a /etc/mtab, excluyendo la lnea rootfs si no ha creado una particin separada para boot. El siguiente comando fucionar en ambos casos:
Listado de Cdigo 2.5: Crear /etc/mtab # grep -v rootfs /proc/mounts > /etc/mtab

Ahora podemos instalar GRUB utilizando grub-install:


Listado de Cdigo 2.6: Ejecutar grub-install # grub-install --no-floppy /dev/sda

Si tiene alguna pregunta ms acerca de GRUB, por favor consulte el FAQ de GRUB , la Wiki de GRUB, o lea info grub en su terminal (estos documentos estn en ingls). Continu con Reiniciando el sistema.

Alternativa: Congurando GRUB a mano, utilizando instrucciones


Para comenzar a congurar GRUB, debe ejecutar los comandos dentro de grub. Se le presentar el intrprete de comandos propio de grub grub>. Ahora necesita ejecutar los comandos necesarios para instalar el registro de arranque de GRUB en su disco duro.
Listado de Cdigo 2.7: Iniciando el intrprete de comandos de GRUB # grub --no-floppy Nota: Si su sistema no tiene ningn dispositivo de disquetes, aada la opcin --no-floppy al comando anterior para evitar que grub pruebe los dispositivos (no existentes) de disquetes.

En el ejemplo de conguracin queremos instalar GRUB para que lea la informacin de la particin de arranque /dev/sda1, e instala el registro de arranque de GRUB en el MBR (Master boot Record) de su disco duro para que lo primero que veamos aparecer al encender el ordenador sea GRUB. Por supuesto, si no ha seguido el ejemplo de conguracin durante la instalacin, cambie los comandos de acuerdo a su modelo: El mecanismo de completar comandos por tabulacin de GRUB puede utilizarse dentro de GRUB. Por ejemplo, si escribe " root (" seguido de una tabulacin, notar que se le presenta una lista de dispositivos (como pueda ser hd0). Si tecleamos " root (hd0," seguido de una tabulacin recibiremos una lista de particiones disponibles para elegir (como pueda ser hd0,0). Utilizando este mecanismo de completar por tabulacin, congurar GRUB no debera resultar tan duro. Ahora vamos a por ello, conguremos GRUB!.
Listado de Cdigo 2.8: Instalando GRUB en el MBR

38 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

grub> root (hd0,0) grub> setup (hd0) grub> quit

(Especifique donde tiene su particin /boot) (Instalamos GRUB en el MBR) (Salimos del intrprete de comandos de GRUB)

Nota: Si quiere instalar GRUB en una particin concreta en lugar del MBR, debe modicar el comando setup para que apunte a la particin correcta. Por ejemplo, si quiere que GRUB se instale en /dev/sda3, el comando adecuado sera setup (hd0,2). Sin embargo, pocos usuarios querrn hacer esto.

Si tiene alguna pregunta ms acerca de GRUB, por favor consulte el FAQ de GRUB , la Wiki de GRUB, o lea info grub en su terminal (estos documentos estn en ingls). Contine con Reiniciando el sistema.

10.c. Alternativa: Utilizando LILO


Instalando LILO
LILO, representa LInuxLOader, y es el caballito de batalla probado y comprobado de los gestores de inicio de Linux. Sin embargo, carece de algunas caractersticas de GRUB (razn por la cual GRUB actualmente est ganando popularidad). La razn por la cual LILO sigue en uso es que en algunos sistemas, GRUB no funciona mientras que LILO s. Por supuesto tambin se usa porque hay muchos que lo conocen y preeren seguir con este gestor. De cualquier manera, Gentoo soporta ambos gestores y por lo visto, ha elegido usar LILO. Instalar LILO es fcil, sencillamente use emerge.
Listado de Cdigo 3.1: Instalando LILO # emerge lilo

Congurando LILO
Para congurar LILO, debe crear el archivo /etc/lilo.conf. Use su editor de textos preferido (en el manual usamos nano para ser consistentes) y creemos este archivo.
Listado de Cdigo 3.2: Creando /etc/lilo.conf # nano -w /etc/lilo.conf

Algunas secciones atrs, le pedimos que se acordara del nombre de la imagen del ncleo creado. En el siguiente ejemplo de lilo.conf haremos uso del esquema ejemplo de particionamiento. Asegrese de utilizar el nombre de su archivo de imagen del ncleo y, si es necesario, el nombre de su imagen initrd.
Nota: Si su sistema de cheros para root es JFS, deber aadir la lnea append="ro" despus de cada elemento de arranque, ya que JFS necesita leer su log antes de permitir montajes de lectura-escritura. Listado de Cdigo 3.3: Ejemplo de /etc/lilo.conf boot=/dev/sda prompt timeout=50 default=gentoo # Instalar LILO en el MBR # Darle al usuario una oportunidad de seleccionar otra opcin # Esperar 5 (cinco) segundos antes de arrancar la opcin por defecto # Al transcurrir el plazo de espera, arrancar la opcin "gentoo"

image=/boot/kernel-3.3.8-gentoo # El nombre de la seccin label=gentoo read-only # Comience con la raz solo lectura. No modifique! root=/dev/sda3 # Ubicacin del sistema raz de archivos image=/boot/kernel-3.3.8-gentoo # El nombre de la seccin label=gentoo.rescue read-only # Comience con la raz solo lectura. No modifique! root=/dev/sda3 # Ubicacin del sistema raz de archivos append="init=/bin/bb" # Lanzar la shell esttica de rescate de Gentoo # La siguientes dos lneas solo corresponden si hace arranque dual con un sistema Windows. # En este caso, Windows se encuentra en /dev/sda6. other=/dev/sda6 label=windows Nota: Si usa un esquema de particionamiento o imagen de ncleo distinta, haga los ajustes correspondientes.

39 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

Cuando construya el ncleo Linux, si opta por incluir un initramfs desde el cual iniciar, entonces tendr que cambiar la conguracin haciendo referencia a este chero initramfs e indicndole donde se encuentra su sistema de cheros raz en:
Listado de Cdigo 3.4: Fragmento de LILO para construcciones de ncleo con initramfs habilitado image=/boot/kernel-3.3.8-gentoo label=gentoo read-only append="real_root=/dev/sda3" initrd=/boot/initramfs-genkernel-x86-3.3.8-gentoo

Si hace falta pasar alguna opcin adicional al ncleo, incluya un enunciado append a la seccin. A modo de ejemplo, agregamos un enunciado video para activar framebuer:
Listado de Cdigo 3.5: Utilizar append para agregar opciones al ncleo image=/boot/kernel-3.3.8-gentoo label=gentoo read-only root=/dev/sda3 append="video=uvesafb:mtrr,ywrap,1024x768-32@85"

Si est utilizando un ncleo 2.6.7 o superior y ha puenteado su disco duro porque la BIOS no puede manejar discos duros grandes, necesitar aadir sda=stroke. Usuarios de genkernel deben saber que sus ncleos usan las mismas opciones de arranque que el CD de instalacin. Por ejemplo, si tiene dispositivos SCSI, debe agregar doscsi como opcin del ncleo. Ahora, salve el archivo y salga del editor. Para terminar, debe ejecutar el comando /sbin/lilo para poder aplicar /etc/lilo.conf a su sistema (que se instale en el disco). Acurdese de que debe volver a ejecutar /sbin/lilo cada vez que instale un nuevo ncleo o haga cambios en el men.
Listado de Cdigo 3.6: Terminando la instalacin de LILO # /sbin/lilo

Si tiene ms preguntar con respecto a LILO, por favor, consulte su pgina en la wikipedia. Ahora puede continuar con Reiniciando el Sistema.

10.d. Reiniciando el sistema


Salga del entorno chroot y desmonte todas las particiones que continen montadas. Despus podemos ejecutar el mgico comando que hemos estado esperando: reboot.
Listado de Cdigo 4.1: Desmontar todas las particiones y reiniciar # exit cdimage cdimage cdimage cdimage ~# ~# ~# ~# cd umount -l /mnt/gentoo/dev{/pts,/shm,} umount -l /mnt/gentoo{/boot,/sys,/proc,} reboot

Por supuesto, no olvide quitar el CD arrancable, o el CD ser arrancado de nuevo en lugar de su nuevo sistema Gentoo. Una vez que haya reiniciado su instalacin de Gentoo, termnela con Finalizando su instalacin de Gentoo.

11. Finalizando su instalacin Gentoo


11.a. Administracin del Usuario
Aadir un Usuario para uso cotidiano
Trabajar como root en un sistema Unix/Linux es peligroso y su uso debera evitarse tanto como sea posible. Es por ello que se recomienda encarecidamente aadir un usuario para el uso cotidiano del sistema. Los grupos a los que pertenece el usuario denen que actividades puede realizar. La siguiente tabla muestra una lista de los grupos ms importantes que podra querer utilizar.
Grupo
audio cdrom

Descripcin
para ser capaz de acceder a los dispositivos de audio para poder acceder directamente a dispositivos de lectura ptica

40 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

oppy games portage usb video wheel

para poder acceder directamente a los dispositivos de disquete para poder utilizar los juegos para ser capaz de utilizar emerge --pretend como usuario normal para poder acceder a los dispositivos USB para acceder al hardware de captura de vdeo y a la aceleracin por hardware para poder utilizar su

Por ejemplo, para crear un usuario llamado juan que pertenezca a los grupos wheel, users y audio, entre en el sistema como root (solo root puede crear usuarios) y ejecute useradd:
Listado de Cdigo 1.1: Aadir un usuario para uso cotidiano Login: root Password: (Su contrasea de root) # useradd -m -G users,wheel,audio -s /bin/bash juan # passwd juan Password: (Introduzca la contrasea para juan) Re-enter password: (Vuelva a introducir la contrasea para verificar)

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 el cual, correctamente congurado, es muy seguro.

11.b. Limpieza de disco


Eliminar los tarballs
Ahora que ya se ha instalado Gentoo y reiniciado, si todo fue bien, puede eliminar el tarball de stage3 y la imagen de Portage. que descarg en su disco duro. Recordamos que se encuentran en el directorio /.
Listado de Cdigo 2.1: Eliminar el tarball stage3 # rm /stage3-*.tar.bz2* Listado de Cdigo 3.3: Eliminar la imagen de Portage # rm /portage-latest.tar.bz2*

12. Y ahora qu?


12.a. Documentacin
Enhorabuena! Ya tiene funcionando un sistema Gentoo. Pero A donde ir desde aqu? Cules son ahora sus opciones? Qu explorar primero? Gentoo ofrece a sus usuarios muchas posibilidades y, por lo tanto, muchas caractersticas documentadas (y menos documentadas). Denitivamente debera ojear la siguiente parte del Manual de Gentoo titulada Trabajando con Gentoo la cual explica cmo mantener su software al da, cmo instalar ms software, qu parmetros USE hay, cmo funciona el sistema de inicializacin de Gentoo (Gentoo Init system), etc. Si est interesado en la optimizacin de su sistema para uso de escritorio, o quiere aprender cmo congurarlo para que sea un completo sistema de escritorio, consulte nuestra extensa Gua de Conguracin del Escritorio. Adems, quiz tambin quiera utilizar nuestra gua de localizacin para hacer que el sistema se sienta cmo en casa. Tambin disponemos de un Manual de seguridad en Gentoo cuya lectura puede ser muy valiosa. Para obtener un completo listado de toda nuestra documentacin disponible, revise nuestra pgina de Recursos de Documentacin. Por ltimo, tambin tenemos una Wiki Gentoo ocial (en ingls), donde se puede encontrar documentacin adicional ofrecida por la comunidad.

12.b. Gentoo en lnea


Por supuesto, siempre ser bienvenido a nuestros Foros de Gentoo o a alguno de nuestros canales de IRC. Tambin tenemos varias listas de correo abiertas a todos nuestros usuarios. La informacin de cmo entrar en las mismas est disponible en esa pgina. Ahora nos callaremos y le dejaremos que disfrute de su instalacin :)

41 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

B. Trabajando con Gentoo


1. Introduccin al sistema Portage
1.a. Bienvenido a Portage
Portage es probablemente la ms importante innovacin de Gentoo en la gestin de software. Debido a su potente exibilidad y una gran cantidad de funcionalidades, es frecuentemente apreciado como la mejor herramienta de gestin de software disponible para Linux. Portage esta completamente escrito en Python y Bash y, por tanto, totalmente a la vista de los usuarios al ser ambos lenguajes interpretados. La mayora de usuarios trabajarn con Portage a travs de la herramienta emerge. Este captulo no pretende duplicar la informacin disponible en la pgina de man sobre emerge. Para una completa informacin sobre las opciones de emerge, por favor, consulte la pgina del manual:
Listado de Cdigo 1.1: Leer la pgina del manual sobre emerge $ man emerge

1.b. El rbol Portage


Ebuilds
Cuando hablamos sobre paquetes, nos referimos normalmente a programas software disponibles para los usuarios de Gentoo a travs del rbol Portage. El rbol Portage es una coleccin de ebuilds, archivos que contienen toda la informacin que Portage necesita para mantener el software (instalar, buscar, ...). Estos ebuilds residen por defecto en /usr/portage. Cuando se pida a Portage que ejecute alguna accin relacionada con los programas, ste utilizar los ebuilds de su sistema como base. Por tanto, es importante que actualice los ebuilds de su sistema para que Portage conozca el nuevo software, actualizaciones de seguridad, etc.

Actualizando el rbol Portage


El rbol Portage se actualiza normalmente con rsync, una utilidad rpida de transferencia de archivos incremental. La actualizacin es muy sencilla, ya que la orden emerge proporciona una interfaz para rsync:
Listado de Cdigo 2.1: Actualizar el rbol Portage # emerge --sync

Si no es capaz de realizar rsync debido a restricciones de cortafuegos puede actualizar su rbol Portage a travs de nuestras tres imgenes de Portage generadas diariamente. La herramienta emerge-webrsync automticamente comprueba e instala la ltima en su sistema.
Listado de Cdigo 2.2: Ejecutar emerge-webrsync # emerge-webrsync

Una ventaja adicional de utilizar emerge-webrsync es que permite al administrador descargar nicamente instantneas del rbol portage que estn rmadas con la clave GPG del equipo de ingeniera de versiones de Gentoo. Se puede encontrar ms informacin sobre esto en la seccin Caractersticas de Portage en Obteniendo instantneas validadas del rbol Portage.

1.c. Mantenimiento de Software


Buscar software
Para buscar software utilizando el rbol de Portage, puede emplear las funcionalidades de bsquedas propias de emerge. Por defecto, emerge --search devuelve el nombre de los paquetes cuyo nombre coincide (tanto total como parcialmente) con el trmino de bsqueda introducido. Por ejemplo, para buscar todos los paquetes que tengan "pdf" en su nombre:
Listado de Cdigo 3.1: Buscar paquetes cuyo nombre tenga pdf $ emerge --search pdf

Si quiere buscar tambin en las descripciones puede utilizar el parmetro --searchdesc (o -S).
Listado de Cdigo 3.2: Buscar paquetes relacionados con pdf

42 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

$ emerge --searchdesc pdf

Cuando eche un vistazo al resultado, notar que le proporciona mucha informacin. Los campos son etiquetados claramente con lo cual no entraremos en explicar sus signicados.
Listado de Cdigo 3.3: Ejemplo de salida de emerge --search * net-print/cups-pdf Latest version available: 1.5.2 Latest version installed: [ Not Installed ] Size of downloaded files: 15 kB Homepage: http://cip.physik.uni-wuerzburg.de/~vrbehr/cups-pdf/ Description: Provides a virtual printer for CUPS to produce PDF files. License: GPL-2

Instalar Software
Una vez que haya encontrado el nombre del software que necesite, puede fcilmente instalarlo con emerge: simplemente aada el nombre del paquete. Por ejemplo, para instalar gnumeric:
Listado de Cdigo 3.4: Instalar gnumeric # emerge gnumeric

Muchas aplicaciones dependen unas de otras, esto implica que cualquier intento de instalar un cierto paquete de software podra derivar en la instalacin de varias dependencias. No se preocupe. Portage maneja tambin las dependencias. Si quiere conocer qu instalar Portage cuando le pida que instale un cierto paquete, aada el parmetro --pretend. Por ejemplo:
Listado de Cdigo 3.5: Simular la instalacin de gnumeric # emerge --pretend gnumeric

Cuando le pida a Portage que instale un paquete, descargar las fuentes necesarias desde Internet (si fuera necesario) y las guardar por defecto en /usr/portage/distfiles. Despus, el paquete ser descomprimido, compilado e instalado. Si quiere que portage solamente descargue las fuentes sin instalarlas, aada la opcin --fetchonly a la orden emerge:
Listado de Cdigo 3.6: Descargar el cdigo fuente de gnumeric # emerge --fetchonly gnumeric

Encontrar la documentacin de un paquete instalado


Muchos paquetes vienen con su propia documentacin. Algunas veces, el parmetro USE doc determina si la documentacin debe instalarse o no. Puede comprobar la existencia del parmetro USE doc con la orden emerge -vp <nombre paquete>.
Listado de Cdigo 3.7: Comprobar la existencia de del parmetro USE doc (alsa-lib es tan solo un ejemplo) # emerge -vp alsa-lib [ebuild N ] media-libs/alsa-lib-1.0.14_rc1

-debug +doc 698 kB

La mejor manera de activar el parmetro USE doc es por paquete, por medio de /etc/portage/package.use, de manera que solo obtendr la documentacin para los paquetes que le interesan. Activando este parmetro de manera global puede causar problemas con dependencias circulares. Para ms informacin, por favor lea el captulo acerca de los Parmetros USE. Una vez que el paquete est instalado, su documentacin se encuentra normalmente en un subdirectorio llamado igual que el paquete, bajo el directorio /usr/share/doc. Tambin puede obtener un listado de todos los archivos instalados con la herramienta equery la cual es parte del paquete app-portage/gentoolkit.
Listado de Cdigo 3.8: Localizar la documentacin de un paquete # ls -l /usr/share/doc/alsa-lib-1.0.14_rc1 total 28 -rw-r--r-- 1 root root 669 May 17 21:54 -rw-r--r-- 1 root root 9373 May 17 21:54 drwxr-xr-x 2 root root 8560 May 17 21:54 -rw-r--r-- 1 root root 196 May 17 21:54

ChangeLog.gz COPYING.gz html TODO.gz

(Como alternativa, utilizamos equery para localizar los archivos que nos interesan:) # equery files alsa-lib | less media-libs/alsa-lib-1.0.14_rc1

43 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86


* Contents of media-libs/alsa-lib-1.0.14_rc1: /usr /usr/bin /usr/bin/alsalisp (salida cortada)

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

Desinstalando Software
Cuando quiera desinstalar un paquete software de su sistema, utilice emerge --unmerge. Esto le indicar a Portage que desinstale todos los archivos instalados por el paquete en su sistema excepto los archivos de conguracin de esa aplicacin si la haba modicado despus de la instalacin. Esto le permite continuar trabajando con los mismos archivos de conguracin si alguna vez decide volver a instalar la aplicacin. Sin embargo, hemos de tener algo muy en cuenta: Portage no comprueba si el paquete que est intentando desinstalar es necesario para algn otro. A pesar de esto, le avisar cuando quiera eliminar un paquete importante que pueda romper su sistema si lo desinstala.
Listado de Cdigo 3.9: Desinstalar gnumeric del sistema # emerge --unmerge gnumeric

Cuando desinstala un paquete de su sistema, las dependencias de ese paquete que se instalaron automticamente cuando instal el software, permanecern. Para hacer que Portage localice todas las dependencias que puede ser eliminadas actualmente, utilice la funcionalidad de emerge --depclean. Hablaremos de esto un poco ms adelante.

Actualizando su Sistema
Para mantener su sistema en perfecto estado (sin mencionar la instalacin de los ltimas actualizaciones de seguridad) necesita actualizarlo frecuentemente. Partiendo de que Portage solamente comprueba los ebuilds en su rbol Portage, lo primero sera actualizar el propio rbol. Cuando tenga el rbol Portage actualizado, puede actualizar su sistema con emerge --update world. En el siguiente ejemplo, adems hemos utilizado el parmetro --ask que le indica a Portage que muestre la lista de paquetes que quiere actualizar y pregunte si se quiere continuar:
Listado de Cdigo 3.10: Actualizar su sistema # emerge --update --ask world

Portage buscar entonces las nuevas versiones de las aplicaciones que explcitamente haya instalado (las listadas en /var/lib /portage/world), sin embargo, no revisa minuciosamente sus dependencias. Si desea actualizar tambin esas dependencias, aada la opcin --deep:
Listado de Cdigo 3.11: Actualizar su sistema incluyendo las dependencias # emerge --update --deep world

Aunque esto no indica todos los paquetes: algunos paquetes de su sistema son necesarios durante los procesos de compilacin y construccin de los paquetes, pero, una vez que los paquetes se han instalado, estas dependencias ya no se necesitan. Portage denomina a stas dependencias de construccin (build dependencies). Para incluirlas en un ciclo de actualizacin, aada --withbdeps=y:
Listado de Cdigo 3.12: Actualizar su sistema completamente # emerge --update --deep --with-bdeps=y world

Ya que las actualizaciones de seguridad tambin afectan a paquetes que no han sido explcitamente instalados en el sistema (pero que son dependencias de otros programas), es recomendable ejecutar la orden de arriba de vez en cuando. Si ha cambiado ltimamente alguno de sus parmetros USE quiz quiera aadir tambin --newuse. Portage comprobar si los cambios requieren la instalacin de nuevos paquetes o la recompilacin de los existentes:
Listado de Cdigo 3.13: Realizar una actualizacin completa # emerge --update --deep --with-bdeps=y --newuse world

Meta-paquetes
Algunos paquetes del rbol Portage no tienen contenido real pero son utilizados para instalar un conjunto de paquetes. Por ejemplo, el paquete kde-meta instalar un entorno KDE completo en su sistema incluyendo varios paquetes relacionados con KDE y tambin sus dependencias. Si quiere desinstalar dicho paquete de su sistema, ejecutando emerge --unmerge sobre el paquete no tendr efecto total ya que las dependencias permanecern en su sistema.

44 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

Portage tiene la funcionalidad de eliminar las dependencias hurfanas, pero la disponibilidad de software necesita que primero actualice completamente su sistema, incluyendo los nuevos cambios que ha aplicado si actualiz los parmetros USE. Despus de esto, puede ejecutar emerge --depclean para eliminar las dependencias hurfanas. Cuando haya terminado, necesitar reconstruir las aplicaciones que estuvieran enlazadas dinmicamente a las que acaban de ser eliminadas pero no son necesarias. Todo esto se lleva a cabo a travs de tres rdenes:
Listado de Cdigo 3.14: Desinstalar dependencias hurfanas # emerge --update --deep --newuse world # emerge --depclean # revdep-rebuild

revdep-rebuild es parte del paquete gentoolkit; no olvide instalarlo primero:


Listado de Cdigo 3.15: Instalar el paquete gentoolkit # emerge gentoolkit

1.d. Licencias
A partir de la versin 2.1.7 de Portage, puede aceptar o rechazar la instalacin de software basada en esta licencia. Todos los paquetes del rbol contienen una entrada LICENSE en sus ebuilds. Ejecutando emerge --search nombredepaquete le mostrar la licencia del paquete. Por defecto Portage permite todas las licencias, excepto Acuerdos Finales de la Licencia de Usuario (End User License Agreements o EULAs) que requieren la lectura y rma de un acuerdo de aceptacin. La variable que controla las licencias permitidas es ACCEPT_LICENSE, la cual puede ser ajustada en /etc/portage/make.conf:
Listado de Cdigo 4.1: ACCEPT_LICENSE por defecto en /etc/portage/make.conf ACCEPT_LICENSE="* -@EULA"

Con esta conguracin, los paquetes que requieren interaccin durante la instalacin para aprobar su EULA no sern instalados. Los paquetes sin una EULA sern instalados. Puede ajustar ACCEPT_LICENSE globalmente en /etc/portage/make.conf, o puede especicarlo en de forma que afecte a solo un paquete en /etc/portage/package.license. Por ejemplo, si quiere permitir la licencia truecrypt-2.7 para app-crypt/truecrypt, aada lo siguiente a /etc/portage /package.license:
Listado de Cdigo 4.2: Especicando una licencia truecrypt en package.license app-crypt/truecrypt truecrypt-2.7

Esto permite la instalacin de versiones de truecrypt que tengan la licencia truecrypt-2.7, pero no versiones con la licencia truecrypt-2.8.
Importante: Las licencias se almacenan en /usr/portage/licenses, y los grupos de licencias se guardan en /usr/portage/profiles /license_groups. La primera entrada de cada lnea en letras MAYSCULAS, es el nombre del grupo de licencias, y cada entrada detrs de sta es una licencia individual.

Los grupos de licencias denidos en ACCEPT_LICENSE se prejan con un signo @. Se muestra un ejemplo de un sistema que globalmente permite el grupo de licencias compatibles, as como otros grupos y licencias individuales:
Listado de Cdigo 4.3: ACCEPT_LICENSE en /etc/portage/make.conf ACCEPT_LICENSE="@GPL-COMPATIBLE @OSI-APPROVED @EULA atheros-hal BitstreamVera"

Si quiere solo software libre y documentacin en su sistema, debera usar la siguiente conguracin:
Listado de Cdigo 4.4: Usar nicamente licencias libres ACCEPT_LICENSE="-* @FREE"

En este caso, "free" est denido por la FSF y la OSI. Cualquier paquete cuya licencia no se ajuste a estos requisitos no ser instalado en su sistema.

1.e. Cuando Portage se queja...


Sobre SLOTs, paquetes virtuales, ramas, arquitecturas y perles

45 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

Como mencionamos anteriormente, Portage es muy potente y soporta muchas caractersticas de las que carecen otras herramientas de gestin de software. Para comprender esto, explicaremos unos cuantos aspectos de Portage sin profundizar demasiado en los detalles. Con Portage, diferentes versiones de un mismo paquete pueden coexistir en un sistema. Mientras otras distribuciones tienden a renombrar el paquete con sus versiones (por ejemplo freetype and freetype2). Portage usa una tecnologa llamada SLOTs (ranuras). Un ebuild declara un cierto SLOT para su versin. Ebuilds con diferentes SLOTs pueden coexistir en el mismo sistema. Por ejemplo, el paquete freetype tiene ebuilds con SLOT="1" y SLOT="2". Tambin existen paquetes que proporcionan la misma funcionalidad pero estn implementados de maneras distintas. Por ejemplo, metalogd, sysklogd y syslog-ng son todos paquetes de registro del sistema. Aplicaciones que necesitan la disponibilidad de un "registrador del sistema" no pueden depender, por ejemplo, de metalogd, ya que el resto de registradores del sistema son igualmente vlidos. Portage permite virtuals: cada paquete de registro del sistema se lista como una dependencia "exclusiva" del servicio de registro en el paquete virtual logger de la categora virtual, de esta forma las aplicaciones pueden depender del paquete virtual/logger. Cuando se instala el paquete, se obtendr el primer paquete de registro mencionado, a menos que ya se haya instalado previamente un paquete que ofrezca el servicio (en este caso, la dependencia virtual ya est satisfecha). Los programas en el rbol Portage puede residir en diferentes ramas. Por defecto, su sistema solamente acepta paquetes que Gentoo considera estables. La mayora de los paquetes nuevos, cuando son aceptados, ingresan en la rama inestable. Esto implica que necesitan hacerse ms pruebas antes de marcarlo como estable. Aunque puede ver los ebuilds de ese software en su rbol de Portage, Portage no los actualizar hasta que sean marcados como estables. Algunos programas solo estn disponibles para unas pocas arquitecturas. O los programas no funcionan en otras arquitecturas, o necesitan ms pruebas, o el desarrollador que aade el programa a Portage no es capaz de vericar si el paquete funciona en diferentes arquitecturas. Cada instalacin de Gentoo adhiere un cierto perfil el cual contiene, entre otra informacin, la lista de paquetes necesarios para que el sistema funcione normalmente.

Paquetes bloqueados
Listado de Cdigo 5.1: Aviso de Portage sobre paquetes bloqueados (con --pretend) [blocks B ] mail-mta/ssmtp (is blocking mail-mta/postfix-2.2.2-r1)

Listado de Cdigo 5.2: Aviso de Portage sobre paquetes bloqueados (sin --pretend) !!! Error: the mail-mta/postfix package conflicts with another package. !!! both can't be installed on the same system together. !!! Please use 'emerge --pretend' to determine blockers.

Los Ebuilds contienen campos especcos que informan a Portage sobre sus dependencias. Hay dos posibles dependencias: dependencias de compilacin, declaradas en DEPEND y dependencias en tiempo de ejecucin, declaradas en RDEPEND. Cuando una de estas dependencias marca explcitamente un paquete o paquete virtual como no compatible, se dispara un bloqueo. Aunque las versiones recientes de Portage son lo sucientemente inteligentes para resolver los bloqueos de menor importancia sin necesidad de la intervencin del usuario, ocasionalmente necesitar resolverlo a mano como se explica abajo. Para solucionar un bloqueo, puede elegir no instalar el paquete o desinstalar primero el paquete conictivo. En el ejemplo anterior, puedes optar por no instalar postfix o eliminar primero ssmtp. Tambin puede ocurrir que vea los paquetes en conicto con operadores lgicos concretos, como por ejemplo <mediavideo/mplayer-1.0_rc1-r2. En este caso, actualizar a la versin ms reciente del paquete bloqueante debera eliminar el bloqueo. Tambin es posible que dos paquetes que an no se han instalado se estn bloqueando mutuamente. En este caso (poco frecuente), se debera investigar por que necesitamos instalar ambos. En la mayora de los casos se puede realizar con uno solo de los paquetes. Si no, por favor enve un informe de error al sistema de seguimiento de errores de Gentoo.

Paquetes enmascarados (masked)


Listado de Cdigo 5.3: Aviso de Portage sobre paquetes enmascarados !!! all ebuilds that could satisfy "bootsplash" have been masked. Listado de Cdigo 5.4: Aviso de Portage sobre paquetes enmascarados - razn !!! possible candidates are: gnome-base/gnome-2.8.0_pre1 (masked by: ~x86 keyword) lm-sensors/lm-sensors-2.8.7 (masked by: -sparc keyword) sys-libs/glibc-2.3.4.20040808 (masked by: -* keyword) dev-util/cvsd-1.0.2 (masked by: missing keyword) games-fps/unreal-tournament-451 (masked by: package.mask) sys-libs/glibc-2.3.2-r11 (masked by: profile)

46 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86


- net-im/skype-2.1.0.81 (masked by: skype-eula license(s))

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

Cuando quiera instalar un paquete que no est disponible para su sistema, recibir un error de enmascaramiento. Debera probar a instalar una aplicacin distinta que este disponible para su sistema o esperar hasta que el paquete este disponible. Siempre hay una razn para que un paquete est enmascarado: ~arch keyword implica que la aplicacin no esta probada lo suciente para ser parte de la rama estable. Espere unos cuantos das o semanas y vuelva a intentarlo. -arch keyword o -* keyword implica que la aplicacin no funciona en su arquitectura. Si cree que el paquete funcionar, cree un bug en nuestro sitio web bugzilla. missing keyword indica que la aplicacin an no ha sido probada para su arquitectura. Pida al correspondiente equipo de arquitectura que pruebe el paquete o prubelo por ellos e informe de su experiencia en nuestro sitio web bugzilla. package.mask implica que el paquete se ha encontrado corrupto, inestable o peor y ha sido marcada deliberadamente para que no se use. prole implica que el paquete no est disponible para su perl. La aplicacin podra romper su sistema si la instala o no es compatible con el perl que est usando. license signica que la licencia del paquete no es compatible con su ajuste ACCEPT_LICENSE. Debe permitir explcitamente su licencia o grupo de licencias ajustndolo en /etc/portage/make.conf o en /etc/portage/package.license. Consulte Licencias para aprender cmo se gestionan las licencias.

Cambios necesarios en los ajustes USE


Listado de Cdigo 5.5: Advertencia de Portage acerca de cambios requeridos en los ajustes USE The following USE changes are necessary to proceed: #required by app-text/happypackage-2.0, required by happypackage (argument) >=app-text/feelings-1.0.0 test

Tambin puede que se muestre el siguiente mensaje de error, si no se ha habilitado --autounmask:


Listado de Cdigo 5.6: Error de Portage acerca de cambios requeridos en los ajustes USE emerge: there are no ebuilds built with USE flags to satisfy "app-text/feelings[test]". !!! One of the following packages is required to complete your request: - app-text/feelings-1.0.0 (Change USE: +test) (dependency required by "app-text/happypackage-2.0" [ebuild]) (dependency required by "happypackage" [argument])

Esta advertencia y error suceden cuando se quiere instalar un paquete que no solo depende de otro paquete, sino que requiere que ese paquete se haya construido con un ajuste USE en particular (o un conjunto de ajustes USE). En el ejemplo dado, el paquete app-text/feelings necesita construirse con USE="test", sin embargo, este ajuste USE no est habilitado en el sistema. Para resolver esta situacin, puede aadir el ajuste USE requerido a sus ajustes globales en /etc/portage/make.conf, o denirlo especcamente para el paquete en /etc/portage/package.use.

Dependencias perdidas
Listado de Cdigo 5.7: Aviso de Portage sobre dependencias perdidas emerge: there are no ebuilds to satisfy ">=sys-devel/gcc-3-4.2-r4". !!! Problem with ebuild sys-devel/gcc-3.4.2-r2 !!! Possibly a DEPEND/*DEPEND problem.

La aplicacin que est tratando instalar depende de otro paquete que no esta disponible para su sistema. Por favor, compruebe bugzilla para ver si el problema se conoce o no, en este caso informe de ello. A menos que este mezclando ramas esto no debera ocurrir y lo consideraremos un error.

Nombre ambiguo del Ebuild


Listado de Cdigo 5.8: Aviso de Portage sobre nombre ambiguos en ebuild [ Results for search key : listen ] [ Applications found : 2 ] * dev-tinyos/listen Latest version Latest version Size of files: Homepage: Description: [ Masked ] available: 1.1.15 installed: [ Not Installed ] 10,032 kB http://www.tinyos.net/ Raw listen for TinyOS

47 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86


License: * BSD

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

media-sound/listen [ Masked ] Latest version available: 0.6.3 Latest version installed: [ Not Installed ] Size of files: 859 kB Homepage: http://www.listen-project.org Description: A Music player and management for GNOME License: GPL-2

!!! The short ebuild name "listen" is ambiguous. Please specify !!! one of the above fully-qualified ebuild names instead.

La aplicacin que quiere instalar tiene un nombre que corresponde con ms de un paquete. Necesita aportar tambin el nombre de la categora. Portage le informar de los posibles casos entre los que puede elegir.

Dependencias Circulares
Listado de Cdigo 5.9: Aviso de Portage sobre dependencias circulares !!! Error: circular dependencies: ebuild / net-print/cups-1.1.15-r2 depends on ebuild / app-text/ghostscript-7.05.3-r1 ebuild / app-text/ghostscript-7.05.3-r1 depends on ebuild / net-print/cups-1.1.15-r2

Dos (o ms) paquetes que quiere instalar dependen uno de otro y, por tanto, no pueden instalarse. Esto casi siempre se considera un error en el rbol Portage. Por favor, vuelva a sincronizar despus de un tiempo e intntelo de nuevo. Tambin puede comprobar bugzilla para saber si se tiene conocimiento sobre el tema o si no, en cuyo caso informe sobre ello.

Fallo en la descarga
Listado de Cdigo 5.10: Aviso de Portage sobre un fallo en la descarga !!! Fetch failed for sys-libs/ncurses-5.4-r5, continuing... (...) !!! Some fetch errors were encountered. Please see above for details.

Portage no es capaz de descargar las fuentes para una aplicacin especca y tratar de continuar instalando el resto de aplicaciones (si es posible). Este fallo puede deberse a que un servidor rplica no esta bien sincronizado o a que el ebuild apunta a una localizacin incorrecta. El servidor donde residen las fuentes podra estar cado por alguna razn. Pruebe despus de una hora y vea si el problema persiste.

Proteccin del Perl de Sistema


Listado de Cdigo 5.11: Aviso de Portage sobre un paquete protegido por perl !!! Trying to unmerge package(s) in system profile. 'sys-apps/portage' !!! This could be damaging to your system.

Est intentando eliminar un paquete que es parte del fundamental de su sistema. ste se haya en su perl y es necesario, por tanto, no debera ser eliminado del sistema.

Errores en la vericacin del digest


A veces, al intentar hacer emerge a un paquete, ste fallar, con el siguiente mensaje:
Listado de Cdigo 5.12: Falla en la suma de control >>> checking ebuild checksums

Esta es una seal que hay algn problema con el rbol Portage -- muchas veces esto es porque un desarrollador ha cometido una equivocacin al ingresar un paquete en el rbol. Cuando falla la vericacin del digest, no intente recalcularlo. El ejecutar ebuild foo manifest no va a resolver el problema; seguramente lo empeorar! En lugar de esto, espere una o dos hora que el rbol estabilice. Es probable que el error haya sido detectado enseguida, pero podr tomar algn tiempo para que propague la correccin al rbol Portage. Mientras espera, revise Bugzilla a ver si alguien ha reportado el problema, si no, siga adelante y archive un "bug" reportando el paquete roto. Una vez que compruebe que el error ha sido reparado, tal vez quiera re-sincronizar para recoger la suma de control reparada.

48 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

Importante: Esto no implica que vaya re-sincronizar su rbol Portage mltiples veces! Tal como se establece en la directriz de rsync (al ejecutar emerge --sync), los usuarios que sincronicen con demasiada frecuencia sern bloqueados! De hecho, es mejor esperar a su prxima sincronizacin programada para no sobrecargar los servidores rsync.

2. Los parmetros USE


2.a. Qu son los parmetros USE?
Las ideas que hay detrs de los parmetros USE
Mientras est instalando Gentoo (o cualquier otra distribucin, incluso otro sistema operativo), tomar varias decisiones dependiendo del entorno en el que est trabajando. Una instalacin para un servidor es distinta a una para una estacin de trabajo. Tambin una estacin de trabajo dedicada a juegos es diferente a una estacin de trabajo que se use para renderizados en 3D. Estas diferencias no solo dependen de los paquetes instalados, si no tambin de las caractersticas para las que ciertos paquetes tienen soporte. Si no necesita OpenGL, para qu molestarse en instalar OpenGL y construir la mayora de sus aplicaciones con soporte OpenGL? Si no quiere usar KDE, para qu molestarte en compilar paquetes con soporte para KDE si podran funcionar perfectamente sin l? Para ayudar a los usuarios a decidir qu instalar/activar o no, necesitamos que el usuario especique su entorno de una manera sencilla. Esto obliga al usuario a decidir que es lo que realmente quiere; adems de facilitar a Portage, nuestro sistema de gestin de paquetes, la tarea de tomar decisiones tiles.

Denicin de un parmetro USE


Comencemos por denir qu son los parmetros USE. Un parmetro USE es una palabra clave que incorpora informacin de soporte y dependencias para un concepto en concreto. Si dene un determinado parmetro USE, Portage sabr que el usuario desea soporte para la palabra clave escogida. Por supuesto, tambin altera las dependencias de un paquete. Veamos un ejemplo especco: la palabra clave kde. Si no la tiene en su variable USE, todos los paquetes que tengan soporte opcional para KDE se construirn sin l. Los que tengan una dependencia opcional con KDE se instalarn sin instalar las libreras de KDE (como dependencia). Si ha denido la palabra clave kde, entonces dichos paquetes s se construirn con soporte para KDE, y las librera de KDE sern instaladas Deniendo correctamente las palabras clave, conseguir un sistema confeccionado especcamente para sus necesidades.

Qu parmetros USE existen?


Hay dos tipos de parmetros USE: globales y locales. Un parmetro USE global lo usan varios paquetes, en todo el sistema. Es lo que la mayora de la gente entiende como parmetros USE. Un parmetro USE local lo utiliza un solo paquete para tomar decisiones especcas para dicho paquete. Puede encontrar una lista de los parmetros USE globales en lnea o localmente en /usr/portage/profiles/use.desc. Se puede encontrar una lista de los parmetros USE locales en /usr/portage/profiles/use.local.desc.

2.b. Usando los parmetros USE


Declarar parmetros USE permanentes
Esperamos que se haya convencido de la importancia de los parmetros USE. Ahora pasaremos a explicar como se declaran estos parmetros. Como ya se ha dicho anteriormente, todos los parmetros USE se declaran dentro de la variable USE. Para simplicar al usuario la tarea de buscar y escoger parmetros USE, ya proporcionamos una conguracin predeterminada. Esta conguracin es un compendio de parmetros que creemos se utilizan frecuentemente por los usuarios de Gentoo. Dicha conguracin predeterminada se declara en los cheros make.defaults que forman parte de su perl. El perl al que atiende su sistema lo indica el enlace simblico /etc/portage/make.profile. Cada perl funciona sobre otro, ms extenso, y el resultado nal es una suma de todos ellos. El perl ms alto es el perl base (/usr/portage/profiles/base). Echemos un vistazo a la conguracin predeterminada para el perl 10.0:
Listado de Cdigo 2.1: Variable USE acumulada de make.defaults para el perl 10.0 (Esto es un ejemplo de la suma de configuraciones en: base, default/linux, default/linux/x86 y default/linux/x86/10.0/) USE="a52 aac acpi alsa branding cairo cdr dbus dts dvd dvdr emboss encode exif fam firefox flac gif gpm gtk hal jpeg lcms ldap libnotify mad mikmod mng mp3

49 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

mp4 mpeg ogg opengl pango pdf png ppds qt3support qt4 sdl spell startup-notification svg tiff truetype vorbis unicode usb X xcb x264 xml xv xvid"

Como puede ver, esta variable contiene bastantes palabras clave. No modique el chero make.defaults para ajustar la variable USE a sus necesidades: los cambios se perdern al actualizar el rbol del Portage! Para modicar esta conguracin predeterminada, necesita aadir o eliminar palabras clave a la variable USE. Para llevarlo a cabo, se dene la variable USE en /etc/portage/make.conf. En esta variable aada los parmetros USE que necesite o elimine los que no quiera. Para eliminarlos coloque el smbolo menos ("-") delante. Por ejemplo, para eliminar el soporte para KDE y QT adems de aadir soporte para ldap, puede denirse el siguiente parmetro USE en /etc/portage/make.conf:
Listado de Cdigo 2.2: Un ejemplo de conrmacin USE en /etc/portage/make.conf USE="-kde -qt4 ldap"

Declarar parmetros USE para paquetes especcos


A veces le interesar establecer un cierto parmetro USE tan solo para una o dos aplicaciones, pero no para todo el sistema. Para solventar, esto, necesitar crear el directorio /etc/portage (si no existiera) y editar /etc/portage/package.use. Esta ruta es generalmente un nico chero pero podria ser un directorio; vea man portaga para ms informacin. Los siguientes ejemplos asumirn que package.use es un nico chero. Por ejemplo, si no le interesa soporte global para berkdb pero lo quiere para mysql, necesita aadir:
Listado de Cdigo 2.3: Ejemplo de /etc/portage/package.use dev-db/mysql berkdb

Por supuesto tambin puede desactivar el empleo especco de un parmetro USE para una aplicacin en concreto. Por ejemplo si no quiere soporte para java en PHP:
Listado de Cdigo 2.4: Segundo ejemplo de /etc/portage/package.use dev-php/php -java

Declarar parmetros USE temporales


A veces necesitar utilizar una cierta conguracin de USE tan solo una vez. En lugar de editar /etc/portage/make.conf dos veces (una para hacer y otra para deshacer los cambios) puede declarar la variable USE como una variable de entorno. Recuerde que, si utiliza este mtodo, cuando vuelva a emerger o actualice este aplicacin (tanto si es particular como si forma parte de una actualizacin del sistema) Perder los cambios! Como ejemplo, vamos a eliminar temporalmente el parmetro java USE durante la instalacin de seamonkey.
Listado de Cdigo 2.5: Utilizando USE como una variable de entorno # USE="-java" emerge seamonkey

Precedencia
Por supuesto, hay una determinada precedencia respecto a qu conguracin tiene prioridad sobre la conguracin del USE. No querr declarar USE="-java" y comprobar posteriormente que java continua utilizndose debido a una conguracin que tiene mayor prioridad. La precedencia para la conguracin del USE es (el primero tiene la mnima prioridad): 1. Conguracin predeterminada de USE declarada en los archivos make.defaults de su perl. 2. Conguracin denida por el usuario en /etc/portage/make.conf 3. Conguracin denida por el usuario en /etc/portage/package.use 4. Conguracin denida por el usuario como variable de entorno Para observar el valor nal del USE tal y como lo ver Portage, ejecute emerge --info. Se listarn una serie de variables importantes (incluyendo la variable USE) con sus valores correspondientes.
Listado de Cdigo 2.6: Ejecutando emerge info # emerge --info

Adaptando su Sistema Completamente a los Nuevos Parmetros USE


Si ha cambiado sus parmetros USE y desea actualizar todo su sistema para que utilice el nuevo parmetro, utilice la opcin de

50 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86


emerge llamada --newuse:
Listado de Cdigo 2.7: Recompilando todo su sistema # emerge --update --deep --newuse world

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

A continuacin, ejecute una limpieza completa de Portage para eliminar las dependencias que haban sido instaladas en su "antiguo" sistema pero que han quedado obsoletas por los nuevos parmetros de USE.
Aviso: Ejecutar emerge depclean es una operacin peligrosa y debera tratarse con cuidado. Revise en profundidad la lista de paquetes "obsoletos" y asegrese de que no elimina ningn paquete que necesite. En el siguiente ejemplo hemos aadido -p para mostrar la lista de paquetes que seran eliminados pero sin eliminarlos fsicamente. Listado de Cdigo 2.8: Desinstalando los paquetes obsoletos # emerge -p depclean

Cuando haya nalizado la limpieza, ejecute revdep-rebuild para recompilar las aplicaciones que estn enlazadas dinmicamente con los objetos que proporcionaban los paquetes eliminados. revdep-rebuild forma parte del paquete gentoolkit; no olvide hacer emerge primero.
Listado de Cdigo 2.9: Ejecutando revdep-rebuild # revdep-rebuild

Cuando todo esto haya terminado, su sistema estar utilizando la nueva conguracin de los parmetros USE.

2.c. Parmetros USE especcos de un paquete


Viendo los parmetros USE disponibles
Veamos el ejemplo de seamonkey: Qu parmetros USE inuyen sobre l? Para averiguarlo, usamos emerge con las opciones --pretend (simula llevar a cabo la accin) y --verbose (obtener una salida ms detallada):
Listado de Cdigo 3.1: Viendo los parmetros USE usados # emerge --pretend --verbose seamonkey These are the packages that I would merge, in order: Calculating dependencies ...done! [ebuild R ] www-client/seamonkey-1.0.7 USE="crypt gnome java -debug -ipv6 -ldap -mozcalendar -mozdevelop -moznocompose -moznoirc -moznomail -moznopango -moznoroaming -postgres -xinerama -xprint" 0 kB

emerge no es la nica herramienta disponible para esta labor. De hecho, tenemos una herramienta llamada equery dedicada a obtener informacin sobre los paquetes; la cual se encuentra en el paquete gentoolkit. En primer lugar, instale gentoolkit:
Listado de Cdigo 3.2: Instalando gentoolkit # emerge gentoolkit

Ahora ejecute equery con el argumento uses para ver los parmetros del USE de un paquete en concreto. Por ejemplo, en el caso del paquete gnumeric:
Listado de Cdigo 3.3: Utilizando equery para ver los parmetros USE usados # [ [ [ [ [ equery --nocolor uses =gnumeric-1.6.3 -a Searching for packages matching =gnumeric-1.6.3... ] Colour Code : set unset ] Legend : Left column (U) - USE flags from make.conf ] : Right column (I) - USE flags packages was installed with ] Found these USE variables for app-office/gnumeric-1.6.3 ] U I - - debug : Enable extra debug codepaths, like asserts and extra output. If you want to get meaningful backtraces see http://www.gentoo.org/proj/en/qa/backtraces.xml . + + gnome : Adds GNOME support + + python : Adds support/bindings for the Python language - - static : !!do not set this during bootstrap!! Causes binaries to be statically linked instead of dynamically

3. Caractersticas de Portage

51 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86


3.a. Caractersticas de Portage

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

Portage tiene varias caractersticas adicionales que hacen de su experiencia con Gentoo algo mucho mejor. Muchas de estas caractersticas residen en ciertas herramientas software que mejoran el rendimiento, la estabilidad, la seguridad, ... Para activar o desactivar ciertas caractersticas de Portage necesita editar la variable FEATURES del archivo /etc/portage /make.conf. Esta variable contiene una lista con las palabras clave de cada caracterstica separadas por un espacio en blanco. En algunos casos necesita adems instalar la herramienta que implementa la caracterstica. No todas las caractersticas que soporta Portage estn aqu reejadas. Para una consulta completa por favor revise la pgina de la ayuda referente a make.conf
Listado de Cdigo 1.1: Consultar la pgina de ayuda sobre make.conf $ man make.conf

Para conocer qu caractersticas estn siendo utilizadas por defecto, ejecute emerge --info y busque la variable FEATURES o utilice grep:
Listado de Cdigo 1.2: Conociendo que caractersticas estn conguradas $ emerge --info | grep FEATURES

3.b. Compilacin Distribuida


Usar distcc
distcc es un programa para distribuir un trabajo de compilacin a travs de muchas, no necesariamente idnticas, mquinas en una red. Los clientes de distcc envan toda la informacin necesaria a los servidores DistCC disponibles (corriendo distccd) as pueden compilar trozos de cdigo fuente para el cliente. El resultado nal, es un tiempo de compilacin ms rpido. Puede encontrar informacin ms detallada sobre distcc (e informacin de como tenerlo funcionando sobre Gentoo) en nuestra Documentacin Gentoo de Distcc.

Instalar distcc
Distcc se distribuye con un monitor grco para monitorizar las tareas que su computador est enviando para compilar. Si usa Gnome entonces ponga 'gnome' en su conguracin USE. De todas formas, si no usa Gnome pero sigue deseando disponer de un monitor, entonces debera poner 'gtk' en su conguracin USE.
Listado de Cdigo 2.1: Instalar distcc # emerge distcc

Activar el soporte en Portage


Aada distcc a la variable FEATURES dentro de /etc/portage/make.conf. Hecho esto, edite la variable MAKEOPTS conforme a sus necesidades. Una pauta conocida para congurarla es poner -jX con X representando el nmero de CPUs que ejecutan distccd (incluyendo la mquina local) ms uno, pero quiz obtenga mejores resultados con otros nmeros. Ahora ejecute distcc-config y cree una lista de los servidores distcc disponibles. Para un ejemplo simple, supondremos que los servidores DistCC son 192.168.1.102 (el host local), 192.168.1.103 y 192.168.1.104 (los dos hosts "remotos"):
Listado de Cdigo 2.2: Congurar distcc para usar los tres servidores DistCC disponibles # distcc-config --set-hosts "192.168.1.102 192.168.1.103 192.168.1.104"

Por supuesto, no se olvide ejecutar tambin el demonio distccd:


Listado de Cdigo 2.3: Arrancar el demonio distcc # rc-update add distccd default # /etc/init.d/distccd start

3.c. Compilacin utilizando cach


Acerca de ccache
ccache es un cach de compilacin rpida. Cuando compila un programa, puede cachear resultados intermedios, de forma que, si recompila el mismo programa, el tiempo de compilacin se reducir ampliamente. La primera vez que se ejecuta ccache, sta ser ms lenta que una compilacin normal. Recompilaciones posteriores deberan ser ms rpidas. La herramienta ccache solo es til si va a recompilar la misma aplicacin muchas veces; por lo tanto en la mayora de los casos es til nicamente para los

52 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86


desarrolladores de software.

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

Si esta interesado en los pros y los contras de ccache, por favor visite la pgina web de ccache.
Aviso: ccache puede causar numerosos fallos de compilacin. Algunas veces ccache mantendr objetos con cdigo obsoleto o cheros corruptos que pueden llevar a que no se pueda hacer emerge de ciertos paquetes. Si esto ocurre (Si obtiene errores como "File not recognized: File truncated"), intente recompilar la aplicacin con ccache deshabilitado ( FEATURES="-ccache" en /etc/portage/make.conf) antes de informar de una incidencia bug. A menos que est realizando trabajo de desarrollo, no active ccache.

Instalar ccache
Para instalar ccache, ejecute emerge ccache:
Listado de Cdigo 3.1: Instalar ccache # emerge ccache

Activar el Soporte en Portage


Primero, edite el chero /etc/portage/make.conf y aada a la variable FEATURES la palabra clave ccache. A continuacin, aada una nueva variable llamada CCACHE_SIZE y dele el valor "2G":
Listado de Cdigo 3.2: Editar CCACHE_SIZE en /etc/portage/make.conf CCACHE_SIZE="2G"

Para comprobar si ccache funciona, pdale a ccache que te muestre las estadsticas. Ya que Portage utiliza un directorio diferente para guardar los datos, se necesita jar la variable CCACHE_DIR para reejar esto:
Listado de Cdigo 3.3: Observar las estadsticas de ccache # CCACHE_DIR="/var/tmp/ccache" ccache -s

La ruta /var/tmp/ccache es el directorio por defecto que emplea Portage para ccache; si quiere cambiar esta variable, congure CCACHE_DIR en /etc/portage/make.conf. Sin embargo, si ejecuta ccache, emplear como directorio por defecto ${HOME}/.ccache, que es la razn por la cual necesita congurar la variable CCACHE_DIR cuando se le pide a Portage que muestre las estadsticas de ccache.

Utilizar ccache para compilaciones de C sin relacin con Portage


Si quiere utilizar ccache para compilaciones que no tengan que ver con Portage, aada /usr/lib/ccache/bin al principio de su variable PATH (antes de /usr/bin). Esto puede llevarse a cabo editando el chero .bash_profile de su directorio home de usuario. .bash_profile es una de las maneras de denir las variables PATH.
Listado de Cdigo 3.4: Editar .bash_prole PATH="/usr/lib/ccache/bin:/opt/bin:${PATH}"

3.d. Soporte para Paquetes Binarios


Crear paquetes binarios
Portage soporta la instalacin de paquetes precompilados. A pesar de que Gentoo no proporciona paquetes precompilados por s mismo (excepto para las imgenes GRP) Portage puede funcionar perfectamente con paquetes precompilados. Para crear un paquete precompilado puede utilizar quickpkg si el paquete est instado en su sistema, o emerge con las opciones --buildpkg o --buildpkgonly. Si quiere que Portage cree paquetes precompilados de cada paquete individual que instale, aada buildpkg a la variable FEATURES. Puede encontrar mayor soporte para la creacin de conjuntos de paquetes precompilados con catalyst. Para ms informacin sobre catalyst, por favor lea las Preguntas frecuentes sobre Catalyst (en ingls).

Instalar Paquetes Precompilados


A pesar de que Gentoo no proporciona uno, puede crear un repositorio central donde almacene paquetes precompilados. Si quiere utilizar este repositorio, necesita que Portage lo conozca a travs de la variable PORTAGE_BINHOST que debe apuntar al repositorio. Por ejemplo, si los paquetes precompilados estn en ftp://buildhost/gentoo:
Listado de Cdigo 4.1: Congurar PORTAGE_BINHOST en /etc/portage/make.conf

53 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

PORTAGE_BINHOST="ftp://buildhost/gentoo"

Cuando quiera instalar un paquete precompilado, aada la opcin --getbinpkg a la orden emerge junto a la opcin --usepkg. La primera le indica a emerge que descargue el paquete precompilado del servidor denido previamente, mientras que el segundo indica a emerge que intente instalar el paquete precompilado antes de buscar el cdigo fuente y compilarlo. Por ejemplo, para instalar gnumeric a travs de paquetes precompilados:
Listado de Cdigo 4.2: Instalar el paquete precompilado gnumeric # emerge --usepkg --getbinpkg gnumeric

Ms informacin sobre las opciones para utilizar paquetes precompilados con emerge puede consultarse en la pgina de la ayuda:
Listado de Cdigo 4.3: Leyendo la pgina de ayuda sobre emerge $ man emerge

3.e. Descargar los Ficheros


Parallel fetch
Al hacer emerge a una serie de paquetes, Portage puede obtener las fuentes para el siguiente paquete en el lista an mientras est compilando otro paquete, acortando los tiempos de instalacin. Para hacer uso de esta opcin agregue "parallel-fetch" a su variable FEATURES. Observe que est activada por defecto de modo que no necesitara activarla explcitamente.

Userfetch
Cuando Portage se ejecuta por el usuario root, FEATURES="userfetch" permitir que Portage ejecute sin los privilegios de superusuario mientras obtiene las fuentes. Este es una pequea mejora en la seguridad.

3.f. Obteniendo instantneas validadas del rbol Portage


Como administrador, puede optar por actualizar nicamente su rbol Portage local con una instantnea del rbol validada criptogrcamente tal y como publica el equipo de infraestructura de Gentoo. Con esto se asegura que ningn otro servidor rplica falso est aadiendo cdigo no deseado u otros paquete en el rbol que est descargando. Para congurar Portage, en primer lugar cree un almacn de conanza en el cual pueda descargar y aceptar las claves del equipo de infraestructura de Gentoo responsable del rmado de las instantneas del rbol Portage. Desde luego, si lo desea puede validar esta clave GPG tal y como muestran estas instrucciones (por ejemplo comprobar la huella digital). Puede encontrar una lista de las claves GPG usadas por el equipo en ingeniera de lanzamientos en su pgina de proyecto.
Listado de Cdigo 6.1: Crear un almacn de conanza para Portage # mkdir -p /etc/portage/gpg # chmod 0700 /etc/portage/gpg (... Sustituya las claves con las mencionadas en el sitio del proyecto de ingeniera de lanzamientos ...) # gpg --homedir /etc/portage/gpg --keyserver subkeys.pgp.net --recv-keys 0x239C75C4 0x96D8BF6D # gpg --homedir /etc/portage/gpg --edit-key 0x96D8BF6D trust

A continuacin, edite el chero /etc/portage/make.conf y active el soporte para la validacin de las instantneas del rbol Portage rmadas (usando FEATURES="webrsync-gpg") y deshabilite la actualizacin del rbol Portage usando el mtodo comn emerge --sync.
Listado de Cdigo 7.8: Actualizar Portage para la validacn del rbol rmado FEATURES="webrsync-gpg" PORTAGE_GPG_DIR="/etc/portage/gpg" SYNC=""

Eso es todo. La prxima vez que ejecute emerge-webrsync, nicamente las instantneas con una rma vlida se expandirn en su sistema de cheros.

4. Scripts de arranque
4.a. Niveles de ejecucin
Iniciando su sistema
Al iniciar, notar que pasar al frente suyo una gran cantidad de texto. Si pone atencin, notar que estos textos son iguales cada

54 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

vez que reinicie su sistema. La secuencia de todas estas acciones se llama la secuencia de inicio y es (ms o menos) denido estticamente. En primer lugar, su gestor de arranque cargar en memoria la imagen del ncleo que deni en la conguracin del gestor de arranque, despus de lo cual, se indica a la CPU que debe ejecutar el ncleo. Al ser cargado y luego ejecutado inicializa todas las estructuras y tareas especcas del ncleo e inicia el proceso init. Este proceso asegura que todos los sistemas de archivo (denidos en /etc/fstab) estn montados y listos para usar. Luego ejecuta varios guiones en /etc/init.d, correspondientes a los servicios requeridos para tener un sistema correctamente iniciado. Finalmente, al concluir la ejecucin de los guiones, init activa los terminales (generalmente solo las consolas virtuales accesibles con Alt-F1, Alt-F2, etc.) jndoles un proceso especial denominado agetty. Este proceso har posible que pueda ingresar al sistema a travs de uno de estos terminales ejecutando login.

Guiones de inicio (init scripts)


Ahora bien, init no solamente ejecuta los guiones contenidos en /etc/init.d de manera aleatoria. An ms, no ejecuta todos los guiones del /etc/init.d, solamente los que han sido seleccionados para ejecutar. Los guiones seleccionados para ejecutar se encuentran dentro del directorio /etc/runlevels. Primero, init ejecuta todos los guiones de /etc/init.d cuyos vnculos simblicos se encuentran dentro de /etc/runlevels /boot. Usualmente los iniciar en orden alfabtico, pero algunos guiones tienen informacin relativa a dependencias, para lo cual otros guiones deben ser iniciados anteriormente. Cuando se ejecuten todos los guiones referenciados en /etc/runlevels/boot, init continua su trabajo con los guiones en /etc/runlevels/default. Una vez ms, usar el orden alfabtico, salvo cuando hay dependencias, en cuyo caso es alterado el orden de inicio para realizar una secuencia vlida de arranque.

Cmo funciona Init?


Por supuesto que init no decide todo eso por su cuenta. Requiere un archivo de conguracin que especica las acciones a tomar. Este archivo es /etc/inittab. Si recuerda al secuencia de inicio recin explicada, recordar que la primera accin de init es montar todos los sistemas de archivo. Esto est denido en la siguiente lnea de /etc/inittab:
Listado de Cdigo 1.1: La lnea de inicializacin del sistema en /etc/inittab si::sysinit:/sbin/rc sysinit

Esa lnea dice a init que debe ejecutar /sbin/rc sysinit al iniciar el sistema. Los guiones /sbin/rc se encargan de la inicializacin, con lo que podramos decir que init no hace mucho, delega la tarea de inicializacin del sistema a otro proceso. En segundo lugar, init ejecut los guiones con vnculos simblicos en /etc/runlevels/boot. Esto se dene en la siguiente lnea:
Listado de Cdigo 1.2: Inicializacin del sistema, continuada rc::bootwait:/sbin/rc boot

Una vez ms, el guin rc lleva a cabo las tareas necesarias. Note que la opcin de rc (boot) corresponde al subdirectorio usado bajo /etc/runlevels. Ahora init revisa su archivo de conguracin para ver que nivel de ejecucin debe ejecutar. Para decidirlo, lee la siguiente lnea de /etc/inittab:
Listado de Cdigo 1.3: La lnea init por defecto (default) id:3:initdefault:

En este caso (para la mayora de usuarios Gentoo), el identicador del nivel de ejecucin ser el 3. Con esta informacin init revisa qu debe ejecutar para iniciar el nivel de ejecucin 3:
Listado de Cdigo 1.4: Deniciones de niveles de ejecucin l0:0:wait:/sbin/rc shutdown l1:S1:wait:/sbin/rc single l2:2:wait:/sbin/rc nonetwork l3:3:wait:/sbin/rc default l4:4:wait:/sbin/rc default l5:5:wait:/sbin/rc default l6:6:wait:/sbin/rc reboot

La lnea que dene el nivel 3, de nuevo usa el guin rc para iniciar los servicios (ahora con el parmetro por defecto default). Note una vez ms que el parmetro pasado al guin rc corresponde al subdirectorio de /etc/runlevels.

55 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

Al terminar rc, init decide cules consolas virtuales debe activar y qu rdenes se deben ejecutar para cada una:
Listado de Cdigo 1.5: Denicin de las consolas virtuales c1:12345:respawn:/sbin/agetty c2:12345:respawn:/sbin/agetty c3:12345:respawn:/sbin/agetty c4:12345:respawn:/sbin/agetty c5:12345:respawn:/sbin/agetty c6:12345:respawn:/sbin/agetty 38400 38400 38400 38400 38400 38400 tty1 tty2 tty3 tty4 tty5 tty6 linux linux linux linux linux linux

Qu es un nivel de ejecucin?
Ha visto que init utiliza un esquema de numeracin para decidir cual nivel de ejecucin debe activar. Un nivel de ejecucin es un estado en el cual su sistema est corriendo y contiene guiones (del nivel de ejecucin o initscripts) que sern ejecutados al ingresar o salir del nivel de ejecucin. En Gentoo, hay siete niveles de ejecucin denidos: tres internos y cuatro denidos por el usuario. Los internos se llaman sysinit, shutdown y reboot y hacen exactamente lo que implican sus nombres, inicializacin, apagado y reinicio del sistema. Los niveles de ejecucin denidos por el usuario estn acompaados de un subdirectorio bajo /etc/runlevels: boot, default, nonetwork y single. El nivel de ejecucin boot inicia los servicios necesarios que requieren los dems niveles de ejecucin. Los tres niveles de ejecucin restantes dieren respecto a los servicios que inician: default es para uso diario, nonetwork en caso de no requerirse la red y single es utilizado en caso de necesitar arreglar el sistema.

Trabajando con los guiones de inicio


Los guiones iniciados por el proceso rc son llamados guiones de inicio o init scripts. Cada guin en /etc/init.d puede ser ejecutado con los parmetros start, stop, restart, pause, zap, status, ineed, iuse, needsme, usesme o broken. Para iniciar, parar o reiniciar un servicio (y sus respectivas dependencias), deben usarse start, stop y restart:
Listado de Cdigo 1.6: Iniciar postx # /etc/init.d/postfix start Nota: Solo los servicios que necesiten (need) del servicio nombrado sern parados o reiniciados. Los dems servicios, aquellos que usen (use) el servicio nombrado, pero que no lo necesiten) continuarn sin ser tocados.

Si desea parar un servicio, pero no los que dependan de el, puede usar el parmetro pause para pausarlo:
Listado de Cdigo 1.7: Detener postx, manteniendo la ejecucin de los dems servicios # /etc/init.d/postfix pause

Si desea ver el estado de un servicio (iniciado, parado, pausado, ...) puede usar el parmetro status:
Listado de Cdigo 1.8: Estado del servicio postx # /etc/init.d/postfix status

Si la respuesta a status indica que el servicio est corriendo, pero realmente no es as, puede reajustarlo manualmente con el parmetro zap:
Listado de Cdigo 1.9: Reajustar la informacin de estado del servicio postx # /etc/init.d/postfix zap

Para preguntar por las dependencias que tiene un servicio, puede usar iuse o ineed. Con ineed puede ver cuales servicios son realmente necesarios para el correcto funcionamiento del servicio nombrado. Por otra parte, el parmetro iuse muestra los servicios que pueden ser usados por el servicio nombrado, pero que no son requeridos para su correcto funcionamiento.
Listado de Cdigo 1.10: Solicitar una lista de servicios de los cuales depende postx # /etc/init.d/postfix ineed

De igual manera, puede indagar que servicios requieren el servicio nombrado ( needsme) o cules pueden usarlo (usesme):
Listado de Cdigo 1.11: Solicitar una lista de todos los servicios que requieren postx # /etc/init.d/postfix needsme

Finalmente, puede indagar cuales dependencias son requeridas y estn faltando:

56 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

Listado de Cdigo 1.12: Solicitar una lista de dependencias faltantes para postx # /etc/init.d/postfix broken

4.b. Trabajando con rc-update


Qu es rc-update?
El sistema de inicio (init) de Gentoo usa un rbol de dependencias para decidir qu servicios deben iniciarse primero. Como sta es una tarea tediosa, que no deseamos que nuestros usuarios tengan que hacer manualmente, hemos creado unas herramientas para facilitar la administracin de los niveles de ejecucin y los guiones de inicio. Con rc-update puede aadir o quitar guiones de inicio a un nivel de ejecucin. La herramienta rc-update automticamente usar el guin depscan.sh para reconstruir el rbol de dependencias.

Aadiendo y removiendo servicios


Ya hemos agregado guiones de inicio al nivel de ejecucin por defecto durante la instalacin de Gentoo. En ese instante tal vez no haya tenido una idea clara acerca del uso de un nivel de ejecucin "por defecto", aunque ahora s. El guin rc-update requiere un segundo parmetro que dene la accin a llevar a cabo: add, del o show para agregar, borrar o mostrar. Para aadir o quitar un guin de inicio, use rc-update con el parmetro add o del, seguido por el nombre del guin de inicio y el nivel de ejecucin, por ejemplo:
Listado de Cdigo 2.1: Quitar postx del nivel de ejecucin por defecto # rc-update del postfix default

La orden rc-update -v show mostrar todos los guiones de inicio con los niveles de ejecucin donde ejecutarn:
Listado de Cdigo 2.2: Recibir informacin de los guiones de inicio # rc-update -v show

Es posible ejecutar tambin rc-update show (sin -v) simplemente para ver los guiones de inicio activos y sus respectivos niveles de ejecucin.

4.c. Conguracin de servicios


Porqu requerimos conguracin adicional?
Los guiones de inicio pueden ser bastante complejos, por lo cual no es interesante que los usuarios modiquen directamente el guin de inicio, ya que esto puede ser propenso a errores. Sin embargo es importante poder congurar estos servicios, en caso que se quieren dar ms opciones al servicio. Una segunda razn para mantener esta informacin fuera del guin de inicio es para poder actualizar estos guiones sin que los cambios de conguracin sean perdidos.

El directorio /etc/conf.d
Gentoo provee una manera fcil de congurar estos servicios: cada guin de inicio congurable tiene un archivo dispuesto en /etc/conf.d. Por ejemplo, el guin de inicio apache2 (llamado /etc/init.d/apache2) tiene un archivo de conguracin de nombre /etc/conf.d/apache2, el cual contiene las opciones a pasar al servidor web Apache 2 en el momento de inicio:
Listado de Cdigo 3.1: Variables denidas en /etc/conf.d/apache2 APACHE2_OPTS="-D PHP5"

Este tipo de archivo de conguracin contiene solamente variables (como /etc/portage/make.conf), lo que facilita la conguracin de servicios. Tambin nos permite suministrar informacin adicional acerca de las variables (en forma de comentarios).

4.d. Escribiendo guiones de inicio


Realmente tengo que hacerlo?
Realmente, no. Escribir un guin de inicio usualmente no hace falta, ya que Gentoo provee guiones listos para usar para todos los servicios suministrados. Sin embargo, puede haber instalado un servicio sin usar Portage, en cuyo caso probablemente tenga que crear un guin de inicio. No use el guin de inicio suministrado por el servicio si no est explcitamente escrito para Gentoo: los guiones de inicio de Gentoo no son compatibles con los de las dems distribuciones!

57 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86


Disposicin

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

La disposicin bsica de un guin de inicio se muestra a continuacin.


Listado de Cdigo 4.1: Disposicin bsica de un guin de inicio #!/sbin/runscript depend() { (Informacin acerca de las dependencias) } start() { (rdenes requeridas para iniciar el servicio) } stop() { (rdenes requeridos para parar el servicio) }

Cualquier guin de inicio requiere la denicin de la funcin start(). Todas las dems son opcionales.

Dependencias
Hay dos dependencias que puede denir: use y need. Tal como hemos mencionado anteriormente, la dependencia need es ms estricta que la dependencia use. Siguiendo este esquema, se declaran los servicios que dependen de ste o la dependencia virtual. Existen dos ajustes relacionados con las dependencias que puede denir y que inuyen en el arranque o secuenciacin de los guiones de inicio: use y need. Aparte de estas dos, existen tambin dos mtodos que inuyen en el orden llamados: before y after. Estos ltimos no son dependencias en s mismos, no provocan el fallo del guin de inicio si el guin seleccionado no est programado para ser iniciado (o falla al iniciar). Los ajustes use informan al sistema de inicio que este guin utiliza funcionalidad ofrecida por el guin seleccionado, sin embargo no depende directamente de l. Un buen ejemplo sera use logger o use dns. Si estos servicios estn disponibles, se usarn de forma correcta, pero aunque no tenga instalado un programa de registro (logger) o servidor DNS, los servicios funcionarn de todos modos. Si estos servicios estn presentes en su sistema, entonces se arrancarn antes del guin que los utiliza. El ajuste need es una dependencia inevitable. Esto signica que el guin que necesita otro guin, no podr arrancar antes de que el otro guin se arranque de forma correcta. Si el otro guin es reiniciado, entonces el guin que depende de l ser reiniciado igualmente. Cuando se utiliza before, el guin dado es arrancado antes del guin seleccionado si el seleccionado forma parte del nivel de inicio. Por lo tanto, si el guin de inicio xdm dene before alsasound, ser arrancado antes que el guin alsasound, pero solo si alsasound est tambin programado para ser arrancado en el mismo nivel de inicio. Si alsasound no est programado para arrancar, entonces este ajuste en particular no tiene efecto y el guin xdm ser arrancado cuando el sistema de inicio lo juzgue apropiado. De modo similar, after informa al sistema de inicio que el guin dado debera ser arrancado antes que el seleccionado si el guin seleccionado forma parte de nivel de inicio. En caso contrario, el ajuste no tiene efecto y el guin ser arrancado por el sistema de inicio cuando ste lo juzgue apropiado. Debera quedar claro una vez leida la parte de arriba, que need es el nico ajuste que dene un "autntica" dependencia ya que afecta al hecho de que el guin sea arrancado o no. Las dems son simplemente apuntes al sistema de inicio para claricar el orden en el que los guiones deben (o deberan ser arrancados). Si echa un vistazo al muchos de los guiones de inicio disponibles en Gentoo, observar que algunos tienen dependencias de objetos que no son guiones de inicio. Estos "objetos" son los llamados virtuals (virtuales). Una dependencia virtual es una suministrada por un servicio, pero no solo por ese servicio. Su guin de inicio puede depender de un gestor de registro de sistema, habiendo disponibilidad de varios (metalogd, syslog-ng, sysklogd, ...). Como no se necesitan todos (ningn sistema normal tiene todos estos gestores de registro instalados y corriendo) nos aseguramos que todos estos servicios provean una dependencia virtual. Examinemos la informacin de dependencia del servicio postx.
Listado de Cdigo 4.2: Informacin de dependencias de postx depend() { need net use logger dns provide mta }

Como podemos ver, el servicio postx:

58 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

requiere la dependencia (virtual) net (suministrada por, en este caso, /etc/init.d/net.eth0) usa la dependencia (virtual) logger (suministrada por, en este caso, /etc/init.d/syslog-ng) usa la dependencia virtual (virtual) dns (suministrada por, en este caso, /etc/init.d/named) provee la dependencia (virtual) mta (comn a todos los servidores de correo electrnico)

Controlando el orden
Tal y como se ha descrito en la seccin anterior, puede indicarle al sistema de inicio qu orden debe seguir para arrancar (o parar) los guiones. Este orden es manejado tanto por los ajustes de dependencia use y need, como por los ajustes de orden before y after. Como ya hemos descrito estos ajustes, echemos un vistazo al servicio Portmap como ejemplo de guin de inicio.
Listado de Cdigo 4.3: La funcin depend() en el servicio portmap depend() { need net before inetd before xinetd }

Tambin puede usar el carcter que engloba "*" para todos los servicios, aunque no es aconsejable.
Listado de Cdigo 4.4: Ejecutando un guin de inicio como el primer guin del nivel de ejecucin depend() { before * }

Si su servicio debe escribir a discos locales, debe necesitar localmount. Si escribe algo en /var/run como un archivo pid, entonces debera comenzar despus de bootmisc:
Listado de Cdigo 4.5: Funcin ejemplo de depend() depend() { need localmount after bootmisc }

Funciones estndar
Junto con la funcin depend(), har falta denir la funcin start(), que contiene las rdenes necesarias para inicializar su servicio. Es aconsejable usar las funciones ebegin y eend para informarle al usuario acerca de lo que est ocurriendo:
Listado de Cdigo 4.6: Ejemplo de funcin start() start() { if [ "${RC_CMD}" = "restart" ]; then # Hacer algo en caso de que restart requiera algo ms que para y arrancar fi ebegin "Starting my_service" start-stop-daemon --start --exec /path/to/my_service \ --pidfile /path/to/my_pidfile eend $? }

Ambos --exec y --pidfile deben usarse en las funciones start y stop. Si el servicio no crea un archivo pid, entonces use --make-pidfile si es posible, aunque debe probar esto para estar seguro. De otra manera, no use archivos pid. Puede tambin agregar --quiet a las opciones al start-stop-daemon, pero esto no es recomendado a no ser que el el servicio sea extremadamente verboso. Usando --quiet puede interferir con la depuracin si el servicio no logra arrancar. Otro ajuste notable usado en el ejemplo de arriba es la comprobacin de los contenidos de la variable RC_CMD. Al contrario que el sistema de guiones de inicio anterior, el nuevo sistema openrc no soporta funcionalidad de reinicio especca de los guiones. En lugar de esto, el guin necesita comprobar el contenido de la variable RC_CMD para var si una funcin (sea start() o stop()) se llama como parte del reinicio o no.
Nota: Asegrese que --exec de hecho llame un servicio y no solamente un guin que lanza un servicio y termina -- despus de todo, eso es lo que el guin de inicio est supuesto de hacer.

Si requiere ms ejemplos de funciones start(), favor leer directamente las fuentes de los guiones de inicio en su directorio /etc/init.d.

59 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

Otra funcin que puede denir es stop(). Sin embargo, No est obligado a denir esta funcin! Nuestro sistema de inicio es lo sucientemente inteligente para rellenar esta funcin por s mismo si utiliza start-stop-daemon. A continuacin se muestra un ejemplo de la funcin stop():
Listado de Cdigo 4.7: Funcin stop() de ejemplo stop() { ebegin "Stopping my_service" start-stop-daemon --stop --exec /path/to/my_service \ --pidfile /path/to/my_pidfile eend $? }

Si su servicio corre otro guin (por ejemplo, bash, python o perl), y este guin luego cambia algn nombre (por ejemplo, foo.py a foo), entonces har falta agregar --name al start-stop-daemon. Debe especicar el nombre al cual cambiar el guin. En este ejemplo, un servicio inicia foo.py, el cual cambia de nombre a foo:
Listado de Cdigo 4.8: Un servicio que inicia el guin foo start() { ebegin "Starting my_script" start-stop-daemon --start --exec /path/to/my_script \ --pidfile /path/to/my_pidfile --name foo eend $? }

El start-stop-daemon tiene una excelente pgina man si requiere ms informacin:


Listado de Cdigo 4.9: Obteniendo la pgina man para el start-stop-daemon $ man start-stop-daemon

La sintaxis de los guiones de inicio de Gentoo est basada en el intrprete de comandos POSIX, de manera que es libre de usar construcciones compatibles con sh dentro del guin de inicio. No utilice otras construcciones, por ejemplo las del tipo bash, en los guiones de inicio para asegurarse de que los guiones funcionen en el futuro incluso si se cambia el sistema de inicio de Gentoo.

Aadiendo opciones personalizadas


Si desea que su guin de inicio soporte un mayor nmero de opciones de las que hemos encontrado hasta ahora, debe agregar la opcin a la variable extra_commands y crear una funcin con el mismo nombre que la opcin. Por ejemplo, para dar soporte a una opcin llamada restartdelay:
Listado de Cdigo 4.10: Soporte para la opcin restartdelay extra_commands="restartdelay" restartdelay() { stop # Espere 3 segundo antes de reiniciar sleep 3 start } Importante: La funcin restart() no puede ser sobreescrita en openrc!.

Variables para la conguracin de servicios


No hay que hacer nada para soportar un archivo de conguracin en /etc/conf.d: si su guin de inicio se ejecuta, los siguientes archivos sern automticamente ledos (sourced) y las variables estarn disponibles para usar. /etc/conf.d/<su guin de inicio> /etc/conf.d/basic /etc/rc.conf Tambin, si su guin de inicio provee una dependencia virtual (como net), el archivo asociado a esa dependencia (el /etc/conf.d/net) ser ledo tambin.

4.e. Cambiando el comportamiento del nivel de ejecucin


Quin puede beneciarse de esto?
Muchos usuarios de equipos porttiles conocen la situacin: en casa necesita iniciar net.eth0 mientras que puede no querer

60 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

iniciar net.eth0 mientras est de viaja (cuando no hay una red disponible). Con Gentoo puede modicar el comportamiento del nivel de ejecucin para sus propios propsitos. Por ejemplo puede crear un segundo nivel de ejecucin "default" con el cual puede arrancar y que utiliza otros guiones de inicio que le han sido asignados. Puede seleccionar al arrancar que nivel de ejecucin quiere utilizar.

Utilizando softlevel
Antes de nada, cree el directorio para su segundo nivel de ejecucin "default". Como ejemplo vamos a crear el nivel de ejecucin offline:
Listado de Cdigo 5.1: Creando el directorio para el nivel de ejecucin # mkdir /etc/runlevels/offline

Aada los guiones de inicio necesarios para el nuevo nivel de ejecucin. Por ejemplo, si quiere una copia exacta de su actual "default" pero sin net.eth0:
Listado de Cdigo 5.2: Aadiendo los guiones de inicio necesarios (Copiar todos los servicios desde el nivel de ejecucin default al nivel offline) # cd /etc/runlevels/default # for service in *; do rc-update add $service offline; done (Eliminar servicios no deseados en el nivel offline) # rc-update del net.eth0 offline (Mostrar los servicios activos en el nivel offline) # rc-update show offline (Salida incompleta de ejemplo) acpid | offline domainname | offline local | offline net.eth0 |

Incluso aunque se haya eliminado net.eth0 del nivel de ejecucin oine, puede que udev quiera intentar iniciar cualquier dispositivo que detecte y lanzar los servicios apropiados, una funcionalidad llamada hotplugging (enchufado en caliente). Por defecto Gentoo no habilita esta funcionalidad. Si quiere habilitar el hotplugging pero solo para un conjunto seleccionado de guiones, utilice la variable rc_hotplug en /etc/rc.conf:
Listado de Cdigo 5.3: Deshabilitando los servicions iniciados por dispositivos en /etc/rc.conf # Permite enchufar en caliente net.wlan as como cualquier otro # servicio excepto los que concuerden con net.* rc_hotplug="net.wlan !net.*" Nota: Para ms informacin sobre los servicios iniciados en funcin de dispositivos, consulte los comentarios del archivo /etc/rc.conf.

Ahora edite la conguracin de su gestor de arranca y aada una nueva entrada para el nivel de ejecucin offline. Por ejemplo, en /boot/grub/grub.conf:
Listado de Cdigo 5.4: Aadiendo una entrada para el nivel de ejecucin oine title Gentoo Linux Offline Usage root (hd0,0) kernel (hd0,0)/kernel-2.4.25 root=/dev/hda3 softlevel=offline

Listo, ha terminado de congurarlo. Si arranca su sistema y selecciona la nueva entrada al inicio, el nivel de ejecucin offline ser el utilizado en lugar del default.

Utilizando bootlevel
Utilizar bootlevel es completamente anlogo a softlevel. La nica diferencia es que se dene un segundo nivel de ejecucin "boot" en lugar de un segundo "default".

5. Variables de entorno
5.a. Variables de Entorno?
Qu son?
Una variable de entorno es un objeto designado para contener informacin usada por una o ms aplicaciones. Algunos usuarios

61 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

(especialmente aquellos nuevos en Linux) encuentran esto un poco extrao o inmanejable. Sin embargo esto no es cierto: usando variables de entorno hace que cualquiera pueda cambiar una opcin de conguracin para una o ms aplicaciones fcilmente.

Ejemplos Importantes
La siguiente tabla muestra un listado de variables de entorno usado por un sistema Linux y describe su uso. Los valores de ejemplo se encuentran despus de la tabla.
Variable
PATH

Descripcin
Esta variable contiene una lista de directorios separados por ":" en la cual el sistema buscar los archivos ejecutables. Al introducir el nombre de un ejecutable (como ls, rc-update o emerge) que no se encuentre en un de los directorios listados, el sistema no lo encontrar, (a menos que se introduzca la ruta completa, por ejemplo: /bin/ls). Esta variable tiene la misma funcin que PATH, pero nicamente contiene los directorios que el sistema debe revisar cuando el usuario root introduce una orden. Esta variable contiene una lista de directorios separados por ":" en la cual el enlazador dinmico busca para encontrar una librera. Esta variable contiene una lista de directorios separados por ":" en los cuales la orden man buscar las pginas de manual. Esta variable contiene una lista de directorios separados por ":" en la cual la orden info buscar las pginas info. Esta variable contiene la ruta hacia el programa utilizado para mostrar el contenido de los cheros (como less o more). Esta variable contiene la ruta hacia el programa utilizado para modicar el contenido de los archivos (como nano o vi). Esta variable contiene una lista de directorios separados por ":" los cuales contienen material especco de KDE. Esta variable una lista de directorios separados por espacio los cuales deben ser protegidos por Portage durante las actualizaciones. Esta variable una lista de directorios separados por espacio los cuales no deben ser protegidos por Portage durante las actualizaciones.

ROOTPATH LDPATH MANPATH INFODIR PAGER EDITOR KDEDIRS CONFIG_PROTECT CONFIG_PROTECT_MASK

A continuacin puedes encontrar ejemplos de deniciones para todas estas variables:


Listado de Cdigo 1.1: Deniciones de ejemplo PATH="/bin:/usr/bin:/usr/local/bin:/opt/bin:/usr/games/bin" ROOTPATH="/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin" LDPATH="/lib:/usr/lib:/usr/local/lib:/usr/lib/gcc-lib/i686-pc-linux-gnu/3.2.3" MANPATH="/usr/share/man:/usr/local/share/man" INFODIR="/usr/share/info:/usr/local/share/info" PAGER="/usr/bin/less" EDITOR="/usr/bin/vim" KDEDIRS="/usr" CONFIG_PROTECT="/usr/X11R6/lib/X11/xkb /opt/tomcat/conf \ /usr/kde/3.1/share/config /usr/share/texmf/tex/generic/config/ \ /usr/share/texmf/tex/platex/config/ /usr/share/config" CONFIG_PROTECT_MASK="/etc/gconf"

5.b. Deniendo variables globalmente


El directorio /etc/env.d
Para centralizar la denicin de estas variables, Gentoo introduce el directorio /etc/env.d. Dentro de este directorio se encuentran varios cheros como por ejemplo 00basic, 05gcc, etc. los cuales contienen las variables necesarias para la aplicacin de la cual llevan el nombre. Por ejemplo, al instalar gcc, un chero llamado 05gcc que contiene la denicin de las siguientes variables, fue creado por el ebuild:
Listado de Cdigo 2.1: /etc/env.d/05gcc PATH="/usr/i686-pc-linux-gnu/gcc-bin/3.2" ROOTPATH="/usr/i686-pc-linux-gnu/gcc-bin/3.2" MANPATH="/usr/share/gcc-data/i686-pc-linux-gnu/3.2/man" INFOPATH="/usr/share/gcc-data/i686-pc-linux-gnu/3.2/info" CC="gcc" CXX="g++" LDPATH="/usr/lib/gcc-lib/i686-pc-linux-gnu/3.2.3"

Otras distribuciones le piden modicar o aadir deniciones de variables de entorno semejantes en /etc/profile o en otros sitios. Por otro lado, Gentoo nos hace (y a Portage) ms fcil mantener y manejar las variables de entorno sin tener que prestar atencin a los numerosos cheros que pueden contenerlas. Por ejemplo, cuando gcc es actualizado, tambin es actualizado el chero /etc/env.d/05gcc sin ser necesaria ninguna interaccin por parte del usuario.

62 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

Esto no solo benecia a Portage, sino tambin al usuario. En ocasiones se podr pedir establecer cierta variable de entorno para todo el sistema. Como ejemplo, tomamos la variable http_proxy. En lugar de perder el tiempo con /etc/profile, puedes crear el chero (/etc/env.d/99local) y introducir la(s) denicin(es) en l:
Listado de Cdigo 2.2: /etc/env.d/99local http_proxy="proxy.server.com:8080"

Usando el mismo chero para todas las variables, se obtiene una visin rpida de las variables que denidas por uno mismo.

El guin env-update
Varios archivos de /etc/env.d denen la variable PATH. esto no es un error: cuando ejecute env-update, este concatenar las mltiples deniciones antes de actualizar las variables de entorno, haciendo ms fcil a los paquetes (o usuarios) aadir sus propias opciones en las variables de entorno sin interferir con los valores ya existentes. El guin env-update concatenar los valores alfabticamente ordenados por el nombre de los cheros de /etc/env.d. Los nombres de chero deben comenzar con dos dgitos decimales.
Listado de Cdigo 2.3: Update order used by env-update 00basic 99kde-env 99local +-------------+----------------+-------------+ PATH="/bin:/usr/bin:/usr/kde/3.2/bin:/usr/local/bin"

La concatenacin de variables no siempre funciona, solo con las siguientes variables: ADA_INCLUDE_PATH, ADA_OBJECTS_PATH, CLASSPATH, KDEDIRS, PATH, LDPATH, MANPATH, INFODIR, INFOPATH, ROOTPATH, CONFIG_PROTECT, CONFIG_PROTECT_MASK, PRELINK_PATH, PRELINK_PATH_MASK, PKG_CONFIG_PATH y PYTHONPATH. Para el resto de variables, se utiliza el ltimo valor denido (en orden alfabtico de cheros en /etc/env.d). Puede incluir ms variables en esta lista de variables concatenadas aadiendo el nombre de la variable a la variable COLON_SEPARATED o a la variable SPACE_SEPARATED (denidas tambin en el chero env.d). Cuando ejecute env-update, el guin crear todas las variables de entorno y las colocar en /etc/profile.env (el cual es usado por /etc/profile). Adems, tambin extraer la informacin de la variable LDPATH y la usar para crear /etc/ld.so.conf. Despus de esto, ejecutar ldconfig para recrear el archivo usado por el enlazador dinmico: /etc/ld.so.cache. Si quiere observar el efecto de env-update inmediatamente despus de ejecutarlo, ejecute la siguiente orden para actualizar su entorno. Posiblemente, los usuarios que instalaron Gentoo ellos mismos, recordarn estas instrucciones de la instalacin:
Listado de Cdigo 2.4: Actualizar el entorno # env-update && source /etc/profile Nota: La orden anterior actualiza nicamente las variables en la terminal actual, en las nuevas consolas y sus hijas. Sabiendo esto, si se est trabajando en X11, necesitar ejecutar source /etc/profile en las nuevas terminales que abra o reiniciar las X para que las nuevas terminales denan las nuevas variables. Si est utilizando un gestor de inicio, convirtase en root y ejecute /etc/init.d/xdm restart. En caso contrario, necesitar salir de la sesin y volver a entrar para que las X generen hijos con las nuevas variables. Importante: No se pueden utilizar las variables del terminal para denir otras variables. Esto implica que cosas como FOO="$BAR" (donde $BAR es otra variable) estn prohibidas.

5.c. Deniendo variables locales


Especcas de usuario
No siempre queremos denir variables de entorno globales. Por ejemplo, podramos querer aadir /home/my_user/bin y el directorio de trabajo actual (en el cual nos encontramos), a la variable PATH, pero no queremos que todos los usuarios de nuestro sistema lo tengan en su PATH. Si queremos denir una variable localmente, debemos usar ~/.bashrc o ~/.bash_profile:
Listado de Cdigo 3.1: Ampliar el PATH para uso local en: ~/.bashrc (Dos puntos sin incluir despus un directorio son tratados como el directorio de trabajo actual) PATH="${PATH}:/home/my_user/bin:"

Cuando vuelva a iniciar la sesin, su variable PATH ser actualizada.

Especcas de sesin
En ocasiones, se requieren deniciones an ms estrictas. Puede querer usar binarios de un directorio temporal que ha creado sin tener que usar la trayectoria completa a los binarios o sin editar ~/.bashrc. Para estos momentos necesitar esto.

63 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

En este caso, puede denir la variable PATH en su sesin activa usando la orden export. Mientras no cierre la sesin, la variable PATH usar los valores temporales.
Listado de Cdigo 3.2: Denir una variable especca a la sesin # export PATH="${PATH}:/home/my_user/tmp/usr/bin"

C. Trabajando con Portage


1. Archivos y directorios
1.a. Ficheros de Portage
Directivas de conguracin
Portage viene con una conguracin predenida guardada en /etc/make.globals. Cuando le eche un vistazo, comprobar que toda la conguracin de Portage se realiza a travs de variables. A qu variables atiende Portage y que signican se describe un poco despus. Como muchas directivas de conguracin varan de unas arquitecturas a otras, Portage tambin posee algunos archivos de conguracin que son parte de perl. Su perl est apuntado por el enlace simblico /etc/portage/make.profile; las conguraciones de Portage se realizan en los archivos make.defaults de su perl y de todos los perles padres. Explicaremos algo ms sobre perles y el directorio /etc/portage/make.profile ms adelante. Si est pensando en cambiar una variable de conguracin, no modique /etc/make.globals o make.defaults. En lugar de eso utilice /etc/portage/make.conf el cual tiene preferencia sobre los archivos anteriores. Tambin encontrar usr/share/portage /config/make.conf.example. Como su propio nombre indica, este archivo es meramente un ejemplo y Portage no lo utilizar con ningn propsito. Tambin puede denir una variable de conguracin para Portage como una variable de entorno, pero no es recomendable.

Informacin especca del perl


Ya hemos hablado del directorio /etc/portage/make.profile. Bien, exactamente no es un directorio pero es un enlace simblico a un perl, por defecto uno perteneciente a /usr/portage/profiles tambin puede crear un perl en cualquier otro lado y apuntarlo. El perl al cual apunta el enlace simblico ser el que tenga en cuenta su sistema. Un perl contiene informacin especca para Portage sobre cada arquitectura, tal como una lista de paquetes que pertenecen al sistema correspondiente con ese perl, una lista de paquetes que no funcionan (o estn enmascarados) para ese perl, etc.

Conguracin especca para usuarios


Cuando necesite sobreescribir una caracterstica de Portage relativa a la instalacin de software, necesitar editar los archivos contenidos en /etc/portage. Se recomienda encarecidamente que utilice los archivos pertenecientes a /etc/portage y est desaconsejada la sobreescritura de estas caractersticas con variables de entorno.! Dentro de /etc/portage puede crear los siguientes archivos: package.mask el cual especica los paquetes que nunca quiere que Portage instale en su sistema. package.unmask especica los paquetes que quiere instalar a pesar de haber sido desaconsejados por los desarrolladores. package.accept_keywords especica los paquetes que quiere instalar a pesar de no haber sido considerados adecuados para su sistema o arquitectura (todava). package.use especica la lista de variables USE que quiere utilizar para unos determinados paquetes sin tener que congurar el sistema por completo para que use esas variables USE. Estos no tienen que ser archivos; tambin pueden ser directorios que contengan un archivo por paquete. Podemos obtener ms informacin acerca del directorio /etc/portage y una lista de archivos que pueden crearse all en la pgina man de Portage.
Listado de Cdigo 1.1: Leyendo la pgina del manual sobre Portage $ man portage

Cambiando el chero de Portage y el lugar del directorio


Los archivos de conguracin mencionados anteriormente no pueden ser guardados en ningn otro sitio, Portage siempre los buscar en esos lugares exactos. Sin embargo, Portage utiliza otras muchos lugares para varios propsitos: el directorio de compilacin, el lugar donde guardar el cdigo fuente, la localizacin del rbol de Portage, ... Todos estos propsitos tienen unas direcciones predeterminadas muy claras pero puede cambiarlas por las que ms le gusten indicndolo en /etc/portage/make.conf. El resto de este captulo explica los lugares destinados a un propsito especial que utiliza Portage y como puede ser modicado su emplazamiento en el sistema de cheros.

64 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

Este documento no pretende ser utilizado como referencia. Si necesita una cobertura 100%, por favor consulte las pginas del man relativas a Portage y make.conf:
Listado de Cdigo 1.2: Leyendo las pginas del manual sobre Portage y make.conf $ man portage $ man make.conf

1.b. Guardando cheros


El rbol Portage
La ubicacin predeterminada del rbol de Portage es /usr/portage. Esta denida por la variable PORTDIR. Cuando guarde el rbol de Portage en cualquier otro lugar (modicando esta variable), no olvide cambiar el enlace simblico /etc/portage /make.profile de acuerdo con su cambio. Si modica la variable PORTDIR, seguramente quiera cambiar las siguientes variables ya que no tienen constancia del cambio de PORTDIR. Esto es debido a cmo Portage maneja las variables: PKGDIR, DISTDIR, RPMDIR.

Binarios Pre-compilados
Aunque Portage no utilice binarios pre-compilados por defecto, tiene un buen soporte para ellos. Cuando a Portage se le indica que trabaje con paquetes pre-compilados, los buscar en /usr/portage/packages. Esta ubicacin est denida por la variable PKGDIR.

Cdigo Fuente
El cdigo fuente de las aplicaciones se guarda por defecto en /usr/portage/distfiles. Esta ubicacin viene denida por la variable DISTDIR.

Base de datos de Portage


Portage guarda el estado del sistema (que paquetes estn instalados, qu archivos pertenecen a cada paquete, ...) en /var/db/pkg. No se deben modicar estos archivos manualmente! Podra romper el conocimiento que tiene Portage sobre el sistema.

Cach de Portage
La cach de Portage (con modicaciones temporales, paquetes virtuales, rbol de dependencias, ...) se guarda en /var/cache/edb. Esta ubicacin es una verdadera cach: se puede limpiar si no se est ejecutando ninguna aplicacin que tenga relacin con Portage en este momento.

1.c. Compilando aplicaciones


Ficheros temporales de Portage
Los cheros temporales de portage se guardan por defecto en /var/tmp. Esta ubicacin se dene en la variable PORTAGE_TMPDIR. Si modica la variable PORTAGE_TMPDIR, necesitar cambiar las siguientes variables ya que no tendrn constancia del cambio. Esto es debido a cmo Portage maneja la variable: BUILD_PREFIX.

Directorio de compilacin
Portage crea directorios de compilacin especcos para cada paquete que se emerge dentro de /var/tmp/portage. Esta ubicacin viene denida por la variable BUILD_PREFIX.

Ubicacin del sistema de cheros


Por defecto, Portage instala todas los archivos en el sistema de cheros activo (/), pero puede cambiarse esta conguracin a travs de la variable de entorno ROOT. Esto es til cuando quiera crear nuevas imgenes compiladas.

1.d. Caractersticas de registro de acciones (log)


Registro de acciones de Ebuilds
Portage puede crear un registro por ebuild, pero solamente cuando la variable PORT_LOGDIR est congurada y apuntando a una direccin con permisos de escritura para Portage (usuario Portage). De manera predeterminada est variable est desactivada. Si no congura PORT_LOGDIR no recibir los registros con el sistema de registro actual, aunque tal vez reciba algn registro del nuevo elog. Si no tiene denido PORT_LOGDIR y usa elog, recibir los registros de construccin de paquetes y cualquier otro registro salvado por elog, como se explica a continuacin.

65 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

Portage ofrece un control de grano no sobre el registro de sistema mediante el uso de elog: PORTAGE_ELOG_CLASSES: Es donde se dene cules mensajes sern registrados. Puede utilizarse cualquier cualquier combinacin separada por espacios en blanco de info, warn, error, log and qa. info: Registra los mensajes "einfo" generados por un ebuild warn: Registra los mensajes "ewarn" generados por un ebuild error: Registra los mensajes "eerror" generados por un ebuild log: Registra los mensajes "elog" encontrados en algunos ebuilds qa:: Registra los mensajes del tipo "QA Notice" mostrados por un ebuild. PORTAGE_ELOG_SYSTEM: Selecciona el (los) mdulos para procesar los mensajes de registro. Si se deja sin denir, se desactiva la funcin de registro. Puede usar cualquier combinacin separada por espacios en blanco de save, custom, syslog , mail, save_summary y mail_summary. Debe seleccionar al menos un mdulo para poder usar elog. save: Almacena un registro por paquete en $PORT_LOGDIR/elog, o /var/log/portage/elog si $PORT_LOGDIR no est denido. custom: Pasa todos los mensajes a una orden denida por el usuario en $PORTAGE_ELOG_COMMAND; esto se discutir ms adelante. syslog: Enva todos los mensajes al gestor de registro de sistema instalado. mail: Pasa todos los mensaje a un servidor de correo denido por el usuario en $PORTAGE_ELOG_MAILURI; esto se discutir ms adelante. Las caractersticas de correo de elog requieren >= portage-2.1.1. save_summary: parecido a save, pero fusionando todos los mensajes en $PORT_LOGDIR/elog/summary.log, o /var/log/portage/elog/summary.log si $PORT_LOGDIR fue denido. mail_summary: parecido a mail, pero enva todos los mensajes en un solo mensaje de correo cuando emerge naliza. PORTAGE_ELOG_COMMAND: Esto solamente se usa al activarse el mdulo custom. Aqu podemos especicar una orden con la cual se procesarn los mensajes de registro. Observe que puede hacer uso de dos variables de entorno: ${PACKAGE} es el nombre del paquete y la versin, mientras que ${LOGFILE} es la ruta absoluta del archivo de registro. A continuacin se muestra un posible uso: PORTAGE_ELOG_COMMAND="/trayectoria/al/gestor -p '\${PACKAGE}' -f '\${LOGFILE}'" PORTAGE_ELOG_MAILURI: Contiene la conguracin del mdulo mail, tal como direccin, usuario, contrasea, servidor de correo y nmero de puerto. Por defecto est congurado a "root@localhost localhost". Aqu presentamos un ejemplo para un servidor smtp que requiere autenticacin con nombre de usuario y contrasea en un puerto en particular (el puerto por defecto es el 25): PORTAGE_ELOG_MAILURI="user@some.domain username:password@smtp.some.domain:995" PORTAGE_ELOG_MAILFROM: Permite congurar la direccin "from" de los correos de registro; su valor por defecto es "portage". PORTAGE_ELOG_MAILSUBJECT: Permite la creacin de una lnea de asunto para los correos de registro. Note que puede hacer uso de dos variables de entorno: ${PACKAGE} mostrar el nombre y la versin del paquete, mientras que ${HOST} es el nombre del dominio completo del antrin donde est corriendo Portage. Aqu est un posible uso: PORTAGE_ELOG_MAILSUBJECT="El paquete \${PACKAGE} fue instalado en \${HOST} con algunos mensajes"
Importante: Si ha usado enotice con Portage-2.0.*, elimine enotice, ya que es incompatible con elog.

2. Conguracin por medio de variables


2.a. Conguracin del sistema Portage
Como hemos acotado previamente, Portage es congurable a travs de mltiples variables de entorno que se deben denir en /etc/portage/make.conf. Por favor, consulte la pgina man de make.conf para una informacin ms completa:
Listado de Cdigo 1.1: Lectura de la pgina man de make.conf $ man make.conf

2.b. Opciones al momento de construccin


Opciones de conguracin y del compilador
Cuando Portage construye las aplicaciones, pasa el contenido de las siguientes variables al guin de compilacin y conguracin: CFLAGS & CXXFLAGS dene los parmetros deseados para la compilacin de fuentes en C y C++. CHOST dene la plataforma correspondiente a la mquina en la que se construye para el guin de conguracin MAKEOPTS se pasa a la orden make para denir el grado de paralelismo al compilar. Para ms informacin acerca de sus opciones, vea la pgina man de make.

66 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

El parmetro USE tambin se usa al congurar y compilar, pero ste ha sido explicado ampliamente en captulos previos.

Opciones al integrar
Cuando Portage integra una versin ms nueva de algn paquete de software, tambin eliminar los archivos obsoletos de la versin anterior del sistema. Portage otorga un tiempo de gracia de 5 segundos al usuario antes de llevar esta tarea a cabo. Este tiempo se dene por medio de la variable CLEAN_DELAY . Puede decirle a emerge que use ciertas opciones cada vez que sea ejecutado congurando la variable EMERGE_DEFAULT_OPTS. algunas opciones tiles podran ser --ask, --verbose, --tree, etc.

2.c. Proteccin de los archivos de conguracin


Ubicaciones protegidas por Portage
Portage sobreescribe los archivos provistos por versiones ms nuevas de un paquete si estos no estan almacenados en un lugar protegido. Estos lugares protegidos se denen con la variable CONFIG_PROTECT y generalmente corresponden a rutas de archivos de conguracin. Este listado de directorios es delimitado con espacios en blanco. Los archivos de conguracin nuevos que se escriban en rutas protegidas lo sern con un nombre modicado y el usuario ser advertido acerca de su presencia. Puede averiguar qu lugares estn protegidos en la variable CONFIG_PROTECT con la salida de la orden emerge --info:
Listado de Cdigo 3.1: Obtener informacin acerca del contenido de CONFIG_PROTECT $ emerge --info | grep 'CONFIG_PROTECT='

Ms informacin acerca de la proteccin de archivos de conguracin por Portage est disponible en la seccin de archivos de conguracin (CONFIGURATION FILES) de la pgina man de emerge:
Listado de Cdigo 3.2: Ms informacin acerca de la proteccin de archivos de conguracin $ man emerge

Exclusin de directorios
Para 'desproteger' ciertos subdirectorios en directorios protegidos, use la variable CONFIG_PROTECT_MASK.

2.d. Opciones de descarga


Ubicaciones de servidores
Cuando la informacin o datos no estn disponibles en su sistema, Portage los descargar de la Internet. Las ubicaciones de los servidores para los canales de informacin y datos se denen mediante los siguientes variables: GENTOO_MIRRORS dene una lista de servidores que contienen cdigo fuente (distles) PORTAGE_BINHOST dene un servidor en particular que contiene paquetes pre-compilados para su sistema Un tercer parmetro involucra la ubicacin del servidor rsync utilizado al actualizar el rbol Portage: SYNC dene un servidor en particular a ser utilizado por Portage para descargar el rbol Las variables GENTOO_MIRRORS y SYNC pueden ser congurados automticamente a travs de la aplicacin mirrorselect. Debe hacer emerge mirrorselect primero, antes de usarla. Para ms informacin, vea la ayuda de mirrorselect en lnea:
Listado de Cdigo 4.1: Ms informacin acerca de mirrorselect # mirrorselect --help

Si su entorno requiere el uso de un servidor proxy, congure las variables http_proxy, ftp_proxy y RSYNC_PROXY para declararlos.

rdenes para descargar


Cuando Portage requiera descargar fuentes, utiliza por defecto la orden wget. Puede cambiar esto usando la variable FETCHCOMMAND. Portage puede continuar una descarga hecha en forma parcial. Usa wget por defecto, pero puede cambiarlo usando la variable RESUMECOMMAND. Asegrese que sus FETCHCOMMAND y RESUMECOMMAND guarde las fuentes en la ubicacin correcta. Al denir las variables debe usar \${URI} y \${DISTDIR} para apuntar a la ubicacin de las fuentes y la ubicacin del directorio distles respectivamente.

67 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

Puede denir manejadores especcos por protocolo con FETCHCOMMAND_HTTP, FETCHCOMMAND_FTP, RESUMECOMMAND_HTTP, RESUMECOMMAND_FTP, etc.

Conguracin de rsync
Aunque no se puede alterar la orden rsync usada para actualizar el rbol Portage, podr congurar algunas de las variables para modicar su comportamiento: PORTAGE_RSYNC_OPTS congura un nmero de variables por defecto usadas durante la sincronizacin, separado por espacios en blanco. Estos no deberan ser cambiados a no ser que sepa exactamente lo que est haciendo. Note que ciertas opciones requeridas con obligatoriedad sern siempre usadas aunque PORTAGE_RSYNC_OPTS no tenga valor asignado. PORTAGE_RSYNC_EXTRA_OPTS puede ser usado para congurar opciones adicionales al sincronizar. Cada opcin deber ser separada con un espacio en blanco. --timeout=<number>: dene la cantidad de segundos que una conexin rsync puede permanecer sin que caduque. Esta variable tiene un valor por defecto 180, pero los usuarios con conexiones dialup o individuos con computadoras lentas podran aumentar a 300 o ms. --exclude-from=/etc/portage/rsync_excludes: Esto apunta a un archivo que lista los paquetes y/o categoras que rsync debe ignorar durante el proceso de actualizacin. En este caso, apunta a /etc/portage/rsync_excludes. Por favor lea Utilizando un subconjunto del rbol Portage para la sintaxis de este archivo. --quiet: Reduces output to the screen --verbose: Prints a complete lelist --progress: Displays a progress meter for each le PORTAGE_RSYNC_RETRIES denes how many times rsync should try connecting to the mirror pointed to by the SYNC variable before bailing out. This variable defaults to 3. For more information on these options and others, please read man rsync.

2.e. Conguracin de Gentoo


Seleccin de rama
Puede escoger su rama por defecto a travs de la variable ACCEPT_KEYWORDS. El valor por defecto es la rama estable de su plataforma. Para ms informacin acerca de las ramas de Gentoo, vea el captulo siguiente.

Caractersticas de Portage
Puede activar ciertas caractersticas de Portage por medio de la variable FEATURES. Estas han sido discutidas en captulos previos, por ejemplo Caractersticas de Portage.

2.f. Comportamiento de Portage


Manejo de recursos
Con la variable PORTAGE_NICENESS, puede aumentar o reducir el valor "nice" con el que ejecuta Portage. El valor de la variable PORTAGE_NICENESS se suma al valor "nice" actual. Para ms informacin acerca de valores "nice", vea la pgina man de nice:
Listado de Cdigo 6.1: Ms informacin acerca de nice $ man nice

Comportamiento de la salida
El valor de NOCOLOR, que por defecto es "falso", dene si Portage desactiva el uso de los colores en su salida.

3. Mezcla de ramales de software


3.a. Utilizando una sola rama
La rama estable
La variable ACCEPT_KEYWORDS dene que rama de programas va a utilizar en su sistema. Como predeterminada gura la rama estable para su arquitectura, por ejemplo x86. Recomendamos que solamente utilice la rama estable. Sin embargo si no le importa demasiado la estabilidad y quiere ayudar a Gentoo a travs del envo de informes de error a http://bugs.gentoo.org, siga leyendo.

68 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86


La rama de pruebas

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

Si quiere utilizar los programas ms recientes, puede considerar utilizar la rama de pruebas. Para que Portage utilice la rama de pruebas, aada un ~ delante de su arquitectura. La rama de pruebas es exactamente para eso - pruebas. Si un paquete se encuentra en pruebas, eso signica que los desarrolladores creen que funciona, pero no ha sido probado concienzudamente. Podra, perfectamente, ser el primero en descubrir un error en el paquete, en cuyo caso puede rellenar un informe para ponerlo en conocimiento de los desarrolladores. Aunque se debe tener cuidado, se pueden experimentar problemas de estabilidad, gestin del paquete imperfecta (por ejemplo dependencias errneas), actualizaciones demasiado frecuentes (que dan cmo resultado mltiples compilaciones) o paquetes que no funcionan. Si no se conoce cmo funciona Gentoo y como resolver los problemas, recomendamos que se quede con la rama probada y estable. Por ejemplo, para seleccionar la rama de pruebas en una arquitectura x86, edite /etc/portage/make.conf y escriba:
Listado de Cdigo 1.1: Congurar la variables ACCEPT_KEYWORDS ACCEPT_KEYWORDS="~x86"

Si actualiza su sistema ahora, encontrar que muchos paquetes sern actualizados. Tenga cuidado ya que: cuando haya actualizado su sistema para emplear la rama inestable, normalmente no hay una manera sencilla de volver a la rama estable (excepto mediante el empleo de copias de seguridad, claro).

3.b. Mezclando ramales estable con pruebas


La ubicacin package.accept_keywords
Puede pedirle a Portage que le permita utilizar la rama de pruebas para algunos paquetes pero seguir utilizando la rama estable en el resto del sistema. Para realizar esto, aada la categora del paquete y el nombre si quiere utilizar la rama de pruebas al chero /etc/portage/package.accept_keywords. Adems podra crear un directorio (con este mismo nombre) y situar all el paquete en un chero. Por ejemplo, para utilizar la rama de pruebas con gnumeric:
Listado de Cdigo 2.1: Congurar /etc/portage/package.accept_keywords para gnumeric app-office/gnumeric

Probando versiones especcas


Si quiere utilizar una versin especca de algn paquete de la rama de pruebas pero no quiere que portage utiliza esa rama de pruebas para las siguientes versiones, puede aadir la versin a package.accept_keywords. En este caso se debe utilizar el operador =. Tambin puede introducir un rango de versiones con los operadores <=, <, > or >= . En cualquier caso, si aade informacin sobre una versin, debe utilizar un operador. Si lo deja sin informacin sobre la versin, no puede emplear un operador. En el siguiente ejemplo indicamos a Portage que acepte gnumeric-1.2.13:
Listado de Cdigo 2.2: Utilizar una versin especca de gnumeric =app-office/gnumeric-1.2.13

3.c. Empleo de paquetes enmascarados


La ubicacin package.unmask
Importante: Los desarrolladores de Gentoo no darn soporte al empleo de estos archivos. Por favor, tenga cuidado cuando haga esto. Las peticiones de soporte relacionadas con package.unmask y/o package.mask no sern respondidas. Considrese advertido.

Cuando un paquete ha sido enmascarado por los desarrolladores de Gentoo y an as desea utilizarlo a pesar de la razn que se menciona en el chero package.mask (situado por defecto en /usr/portage/profiles), aada la versin deseada (normalmente ser exactamente la misma lnea de profiles) en el chero /etc/portage/package.unmask (o en un archivo dentro de ese directorio, si es que es un directorio). Por ejemplo, si =net-mail/hotwayd-0.8 est enmascarado, puede desenmascararlo aadiendo exactamente la misma lnea en package.unmask:
Listado de Cdigo 3.1: /etc/portage/package.unmask =net-mail/hotwayd-0.8 Nota: Si una entrada en /usr/portage/profiles/package.mask contiene un rango de versiones de paquete, necesitar desenmascarar

69 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

nicamente la versin o versiones que realmente necesita. Por favor, lea la seccin previa para aprender cmo especicar versiones en package.unmask.

La ubicacin package.mask
Cuando no quiera que Portage instale un paquete en concreto o una versin especca de un paquete en su sistema, puede enmascararlo simplemente aadiendo la lnea apropiada a /etc/portage/package.mask (tanto si es un chero como si es un directorio y se hace en un chero dentro de l). Por ejemplo, si no quiere que Portage instale otras fuentes del ncleo que no sean gentoo-sources-2.6.8.1, aada la siguiente lnea a package.mask:
Listado de Cdigo 3.2: ejemplo de /etc/portage/package.mask >sys-kernel/gentoo-sources-2.6.8.1

4. Herramientas adicionales de portage


4.a. dispatch-conf
dispatch-conf es una herramienta diseada para combinar los archivos ._cfg0000_<name>. Los archivos ._cfg0000_<name> son generados por Portage cuando intenta sobreescribir un archivo en un directorio protegido por la variable CONFIG_PROTECT. Empleando dispatch-conf, se puede actualizar la conguracin mientras se registran todos los cambios realizados. dispatch-conf guarda las diferencias entre las distintas conguraciones como parches utilizando el sistema de control de versiones RCS. Esto implica que, si se comete un error en la actualizacin de un archivo de conguracin, se puede regresar a la versin anterior del archivo en cualquier momento. Cuando se utiliza dispatch-conf, se le puede indicar que deje el archivo de conguracin tal cual, que utilice la nueva conguracin, que permita editar la conguracin actual o que combine los cambios interactivamente. dispatch-conf adems dispone de algunas funcionalidades adicionales: Automticamente actualizar el chero de conguracin si las actualizaciones solamente afectan a comentarios Automticamente actualizar los cheros de conguracin que slo dieren en la cantidad de espacios en blanco. Hay que asegurarse de primero editar /etc/dispatch-conf.conf y crear el directorio al que hace referencia la variable archive-dir.
Listado de Cdigo 1.1: Ejecutar dispatch-conf # dispatch-conf

Cuando se ejecuta dispatch-conf, se procesan todos los cheros de conguracin que cambian, uno por uno. Pulse u para actualizar (reemplazar) el chero actual por el nuevo y continuar con el siguiente. Pulse z para omitir (borrar) el nuevo chero de conguracin y continuar con el siguiente. Una vez que se hayan procesado todos los cheros , dispatch-conf terminar. Tambin se puede pulsar q en cualquier momento. Para ms informacin, consulte la pgina del manual de dispatch-conf. All se detalla como combinar interactivamente los de conguracin actuales y los nuevos, editar nuevos archivos de conguracin, comprobar las diferencias entre archivos y mucho ms.
Listado de Cdigo 1.2: Consultar la pgina del manual de dispatch-conf $ man dispatch-conf

4.b. etc-update
Tambin se puede utilizar etc-update para instalar los cheros de conguracin. No es tan simple como dispatch-conf, ni dispone de tantas funcionalidades, pero proporciona un mtodo de combinacin interactivo y tambin puede realizar actualizaciones triviales de manera automtica. Sin embargo, al contrario que dispatch-conf, etc-update no conserva las versiones antiguas de los archivos de conguracin. Una vez se ha actualizado el chero, la versin anterior se habr eliminado de manera permanente. Ha de ser cuidadoso, ya que utilizar etc-update es sensiblemente menos seguro que dispatch-conf.
Listado de Cdigo 2.1: Ejecutar etc-update # etc-update

Despus de combinar los cambios sencillos, se presentar una lista con los cheros protegidos que tienen una actualizacin pendiente. Al nal se muestran las opciones posibles:

70 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

Listado de Cdigo 2.2: etc-update options Por favor, seleccione el fichero a editar introduciendo el nmero correspondiente. (-1 para salir) (-3 para auto-combinar todos los ficheros restantes) (-5 para auto-combinar SIN usar 'mv -i'):

Si se indica -1, etc-update terminar y no continuar con el resto. Si se introduce -3 o -5, todos los cheros de conguracin listados sern sobreescritos con las nuevas versiones. Por tanto es muy importante seleccionar primero los cheros de conguracin que no deben ser automticamente actualizados. Esto se consigue simplemente indicando el nmero que aparece a la izquierda del chero de conguracin. Como ejemplo, seleccionamos el chero de conguracin /etc/pear.conf:
Listado de Cdigo 2.3: Actualizar un chero de conguracin concreto Comienzo de diferencias entre /etc/pear.conf y /etc/._cfg0000_pear.conf [...] Fin de diferencias entre /etc/pear.conf y /etc/._cfg0000_pear.conf 1) Reemplazar el original con la actualizacin 2) Borrar la actualizacin, manteniendo el original inalterado 3) Combinar interactivamente el original y la actualizacin 4) Mostrar de nuevo las diferencias

Ahora puede ver las diferencias entre los dos cheros. Si cree que el chero de conguracin actualizado puede ser utilizado sin problemas, indique 1. Si cree que el chero de conguracin actualizado no es necesario, o no proporciona ninguna informacin nueva o til, indique 2. Si quiere actualizar su chero de conguracin actual de forma interactiva, introduzca 3. Por ahora, no tiene sentido profundizar ms sobre la actualizacin interactiva. Para completarlo, listaremos los comandos que estn disponibles durante la combinacin interactiva de ambos cheros. Son mostradas dos lneas (la original, y la nueva propuesta) y un punto indicativo en el cual puede introducir uno de los comandos siguientes:
Listado de Cdigo 2.4: Comandos disponibles en la combinacin interactiva ed: eb: el: er: e: l: r: s: v: q: Editar usando ambas versiones, cada una decorada con una cabecera. Editar usando ambas versiones. Editar usando la versin de la izquierda. Editar usando la versin de la derecha. Editar una nueva versin. Usar la versin de la izquierda. Usar la versin de la derecha. Incluir las lneas comunes sin comentarios. Incluir las lneas comunes con comentarios. Salir.

Cuando haya acabado de actualizar los cheros de conguracin importantes, puede actualizar automticamente el resto. etc-update acabar si no encuentra ms cheros de conguracin para actualizar.

4.c. quickpkg
Con quickpkg se pueden crear archivos de paquetes que ya han sido instalados en el sistema. Estos archivos pueden usarse como paquetes precompilados. Ejecutar quickpkg es sencillo: basta aadir los nombres de los paquetes que se quiere archivar. Por ejemplo, para archivar curl, orage y procps:
Listado de Cdigo 3.1: Ejemplo de uso de quickpkg # quickpkg curl orage procps

Los paquetes precompilados se almacenarn en $PKGDIR (por defecto /usr/portage/packages/). Los paquetes sern ubicados en $PKGDIR/<category>.

5. Divergiendo del rbol ocial


5.a. Utilizando un subconjunto del rbol Portage
Excluyendo categoras/paquetes
Puede realizar una actualizacin selectiva de ciertas categoras/paquetes e ignorar el resto. Esto se realiza indicando a rsync que excluya categoras/paquetes durante el proceso emerge --sync. Necesita denir el nombre del chero que contiene los patrones de exclusin en la variable PORTAGE_RSYNC_EXTRA_OPTS de su /etc/portage/make.conf.

71 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

Listado de Cdigo 1.1: Denir el archivo de exclusiones en /etc/portage/make.conf PORTAGE_RSYNC_EXTRA_OPTS="--exclude-from=/etc/portage/rsync_excludes" Listado de Cdigo 1.2: Excluir todos los juegos en /etc/portage/rsync_excludes games-*/*

Recuerde que esto puede provocar ciertos problemas con las dependencias, ya que paquetes nuevos y aceptados en su sistema pueden depender de otros excluidos.

5.b. Aadiendo Ebuilds no ociales


Deniendo un directorio extensin de Portage (overlay)
Puede indicarle a Portage que utilice ebuilds que no estn disponibles ocialmente a travs del rbol de Portage. Cree un nuevo directorio (por ejemplo /usr/local/portage) en el cual guardar los ebuilds procedentes de otras fuentes. Utilice la misma estructura de directorios que tenemos en Portage. Despus dena la variable PORTDIR_OVERLAY en /etc/portage/make.conf y haga que apunte al directorio creado previamente. Cuando ahora utilice Portage, ste tendr en cuenta aquellos ebuilds para no eliminarlos/sobreescribirlos la prxima vez que ejecute emerge --sync.

Trabajando con varias extensiones (overlays)


Para los usuarios que desarrollan en varias extensiones, probar los paquetes antes de que lleguen al rbol de Portage o simplemente que quieren utilizar ebuilds no ociales procedentes de varias fuentes, el paquete app-portage/layman incorpora layman, una herramienta que ayudar a conservar las extensiones actualizadas. En primer lugar, instale y congure layman como se muestra en la Gua del Usuario de Overlays de Gentoo, y aada los repositorios que desee con layman -a <overlay-name>. Suponiendo que tiene dos repositorios llamados java (para las ebuilds en desarrollo) y entapps (para aplicaciones desarrolladas en casa para su empresa). Puede actualizar estos repositorios con la orden:
Listado de Cdigo 2.1: Usando layman para actualizar todos los repositorios # layman -S

Para ms informacin sobre el trabajo con extensiones, por favor, lea man layman y la Gua de usuario de layman/overlay.

5.c. Software no mantenido por Portage


Utilizando Portage con programas con auto-mantenidos
En algunos casos querr congurar, instalar y mantener programas por s mismo sin que Portage automatice el proceso, incluso aunque Portage pueda suministrarle esos programas. Conocidos son los casos de las fuentes del ncleo y los controladores de nvidia. Puede congurar Portage para que conozca cuando un determinado paquete ha sido instalado manualmente en el sistema. Este proceso recibe el nombre de inyectar y est soportado por Portage a travs del archivo /etc/portage/profile /package.provided. Por ejemplo, si quiere que Portage le informe sobre gentoo-sources-2.6.11.6 el cual ha sido instalado manualmente, aada la siguiente lnea a /etc/portage/profile/package.provided:
Listado de Cdigo 3.1: Lnea de ejemplo para package.provided sys-kernel/gentoo-sources-2.6.11.6

6. Caractersticas avanzadas de Portage


6.a. Introduccin
Para la mayora de los usuarios, la informacin recibida hasta ahora es suciente para todas sus operaciones en Linux. Sin embargo, Portage es capaz de mucho ms; gran parte de sus caractersticas estn dirigidas a usuarios avanzados o aplicable solo en casos muy particulares. En todo caso, esto es excusa para no documentarlas. Por supuesto que con gran exibilidad viene una gran lista de casos potenciales. No ser posible documentarlos todos aqu. En cambio, esperamos poder enfocarnos en algunas situaciones genricas que pueden ser modicadas para cumplir las necesidades de cada quien. Si requiere anamientos o datos ms especcos, intente encontrarlos ms bien en el Wiki Gentoo. La mayora, si acaso no todas estas caractersticas adicionales puede encontrarlas fcilmente leyendo las pginas del manual de Portage:

72 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

Listado de Cdigo 1.1: Leyendo las pginas man de Portage $ man portage $ man make.conf

Finalmente, sabemos que, si estas caractersticas avanzadas no son usadas correctamente, pueden hacer el solucionar fallos pueda hacerse muy difcil. Asegrese de mencionarlas en caso crea que ha tropezado con un fallo y desea abrir un reporte.

6.b. Variables de entorno por paquete


Usando /etc/portage/env
De manera predeterminada, se usarn en la construccin de un paquete las variables de entorno denidas en /etc/portage /make.conf, tales como CFLAGS, MAKEOPTS etc. Sin embargo, en algunos casos, tal vez quisiramos proporcionar diferentes variables para paquetes especcos. Para esto, Portage soporta el uso de /etc/portage/env y /etc/portage/package.env. El archivo /etc/portage/package.env contiene una lista de paquetes que proporcionan variables con valores distintos y un identicador especco que indica a Portage los cambios deseados. Portage buscar este identicador, cuyo nombre puede escoger uno mismo, en el archivo /etc/portage/env/<identifier>.

Ejemplo: Depurando fallos en paquetes especcos


Como ejemplo, activaremos la depuracin para el paquete media-video/mplayer. Primero registramos las variables para depuracin en un archivo llamado /etc/portage/env/debug-cflags. El nombre es escogido arbitrariamente, pero por supuesto reeja claramente su razn de ser para que sea obvia en el futuro.
Listado de Cdigo 2.1: Contenido de /etc/portage/env/debug-cags CFLAGS="-O2 -ggdb -pipe" FEATURES="${FEATURES} nostrip"

Luego agregamos el rtulo al paquete media-video/mplayer para usar su contenido:


Listado de Cdigo 2.2: Contenido de /etc/portage/package.env media-video/mplayer debug-cflags

6.c. Enganchndose en el proceso del emerge


Usando /etc/portage/bashrc y archivos aliados
Al trabajar Portage con los ebuilds, usa un entorno bash en el cual llama las distintas funciones de construccin (como src_prepare, src_congure, pkg_postinst, etc.). Portage tambin permite que uno mismo establezca el entorno bash. La ventaja de usar un entorno bash propio es poder engancharse en el proceso de emerge en cada paso realizado. Esto puede hacerse para cada emerge (por medio de /etc/portage/bashrc) o con entornos individuales por paquete (con /etc/portage/env, como expusimos anteriormente). Para engancharse al proceso emerge, el entorno bash puede inspeccionar las variables EBUILD_PHASE, CATEGORY y las variables que siempre estn disponibles durante el desarrollo del ebuild (tales como P, PF, ...). En base a los valores de estas variables, podemos ejecutar pasos adicionales.

Ejemplo: Actualizando bases de datos de archivos


En este ejemplo usaremos /etc/portage/bashrc para llamar algunas aplicaciones de bases de datos para asegurar que sus bases de datos estn actualizadas con respecto al sistema. En el ejemplo usaremos aide (una herramienta para detectar intrusiones) y updatedb (usado por locate), pero solo como ejemplo. No considere que esto sea un CMO para aide ;-) Para usar /etc/portage/bashrc en este caso, necesitaremos "enganchar" a las funciones postrm (despus de borrar archivos) y postinst (despus de instalar archivos) porque es cuando los archivos en el sistema de archivos han sido cambiados.
Listado de Cdigo 3.1: Ejemplo de /etc/portage/bashrc if [ "${EBUILD_PHASE}" == "postinst"] || [ "${EBUILD_PHASE}" == "postrm" ]; then echo ":: Calling aide --update to update its database"; aide --update; echo ":: Calling updatedb to update its database"; updatedb; fi

73 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86


6.d. Ejecutando tareas despus de --sync
La ubicacin de /etc/portage/postsync.d

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

Hasta ahora hemos conversado acerca de engancharnos a procesos del ebuild. Sin embargo, Portage tambin tiene otra funcin importante: actualizar el rbol Portage. Para ejecutar tareas despus de actualizar el rbol Portage, coloque el guin dentro de /etc/portage/postsync.d y asegrese que est marcado ejecutable.

Ejemplo: ejecutar eix-update


Aunque no haya usado eix-sync para actualizar el rbol, todava puede actualizar su base de datos despus de ejecutar la orden emerge --sync (o emerge-webrsync)) colocando un enlace simblico a /usr/bin/eix llamado eix-update en /etc/portage /postsync.d.
Listado de Cdigo 4.1: Ejecutando eix-update luego de un sync # ln -s /usr/bin/eix /etc/portage/postsync.d/eix-update Nota: Si preere usar otro nombre, deber escribir un guin que llame a /usr/bin/eix-update. El binario eix puede averigua cmo ha sido llamado y deduce qu funcin debe ejecutar. Si crea un enlace simblico a eix que no sea eix-update, no se ejecutar correctamente.

6.e. Haciendo caso omiso a la conguracin de perl


La ubicacin de /etc/portage/prole
De manera predeterminada, Gentoo usa la conguracin del perl apuntado por /etc/portage/make.profile (un enlace simblico al directorio del perl correcto). Estos perles denen conguraciones especcas al igual que hereda conguraciones de otros perles (por medio de su archivo parent). Al usar /etc/portage/profile, podemos hacer caso omiso de las conguraciones de perl, tales como packages (los paquetes considerados parte del conjunto system), ajustes use forzados y dems.

Ejemplo: Agregar nfs-utils al conjunto system


Si usa sistemas de archivo NFS en sistemas de archivos crticos, tal vez quiera "proteger" al paquete net-fs/nfs-utils para que forme parte de system, lo cual ocasionar fuertes advertencias por parte de Portage en caso que se tratara de borrar. Para hacer esto, agregamos el paquete a /etc/portage/profile/packages, antecedido por un *:
Listado de Cdigo 5.1: Contenido de /etc/portage/prole/packages *net-fs/nfs-utils

6.f. Aplicando parches no normados


Usando epatch_user
Para manejar varios ebuilds similarmente, los desarrolladores de ebuilds usan eclasses (especie de libreras al nivel del intrprete de comandos) que denen funciones comunes. Una de estas eclasses es eutils.eclass que ofrece una interesante funcin de nombre epatch_user. La funcin epatch_user aplica parches encontrados en /etc/portage/patches/<category>/<package>[-<version> [-<revision>]] al cdigo fuente, en el directorio que encuentre primero. Lamentablemente no todos los ebuilds llaman automticamente a esta funcin, as que el solo hecho de colocar el parche en esta ubicacin no implica que funcione siempre. Con suerte, con la informacin proporcionada arriba, se puede llamar esta funcin para enganchar a, por ejemplo, la fase prepare. La funcin puede ser llamada cuantas veces lo desee, pero aplicar los parches una sola vez.

Ejemplo: Aplicando parches a Firefox


El paquete www-client/firefox es uno de los pocos que llaman a epatch_user desde el ebuild, de manera que no hace falta sustituir nada en particular. Si necesita parchear refox (por ejemplo, en el caso en que un desarrollador le ofrezca un parche y le pidiera que compruebe si corrige una incidencia de la que ha informado), coloque el parche en /etc/portage/patches/www-client/firefox (probablemente sea mejor usar el nombre completo, incluyendo la versin para que el parche no interera con versiones) y vuelva a construir refox.

D. Conguracin de Redes en Gentoo


1. Inicindonos

74 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86


1.a. Comenzando

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

Nota: Este documento asume que se tiene correctamente congurado el ncleo, los mdulos para su hardware y que conoce el nombre de su interfaz hardware. Tambin asumiremos que se est congurando eth0, pero podra tratarse de eth1, wlan0, etc.

Para comenzar a congurar su tarjeta de red, necesitamos que el sistema RC (guiones de inicio) de Gentoo la reconozca. Esto se hace creando un enlace simblico desde net.lo a net.eth0 en /etc/init.d
Listado de Cdigo 1.1: Crear el enlace simblico net.eth0 apuntando a net.lo # cd /etc/init.d # ln -s net.lo net.eth0

El sistema RC de Gentoo ahora conoce la interfaz. Tambin necesita saber cmo congurar la nueva interfaz. Todas las interfaces de red son conguradas en /etc/conf.d/net. A continuacin se muestra un ejemplo de conguracin para DHCP y direcciones estticas:
Listado de Cdigo 1.2: Ejemplos de /etc/conf.d/net # Para DHCP config_eth0="dhcp" # Para una IP esttica usando notacin CIDR config_eth0="192.168.0.7/24" routes_eth0="default via 192.168.0.1" dns_servers_eth0="192.168.0.1 8.8.8.8" # Para una IP esttica usando notacin de mscara de red config_eth0="192.168.0.7 netmask 255.255.255.0" routes_eth0="default via 192.168.0.1" dns_servers_eth0="192.168.0.1 8.8.8.8" Nota: Si no especica una conguracin para la interfaz entonces se asume el uso de DHCP. Nota: CIDR (Classless InterDomain Routing) Originariamente, las direcciones IPv4 fueron clasicadas en A, B, o C. Esta clasicacin temprana no tuvo en cuenta la gran popularidad que obtendra Internet, y ahora corre el riesgo de no tener sucientes direcciones nicas. CIDR es un esquema de direccionamiento que permite que una direccin IP designe muchas direcciones IP. Una direccin IP CIDR es igual que una direccin IP normal excepto que termina con una barra invertida seguida de un nmero; por ejemplo: 192.168.0.0/16. CIDR se describe en RFC 1519.

Ahora que ya hemos congurado nuestra interfaz, podemos iniciarla o detenerla utilizando las siguientes rdenes:
Listado de Cdigo 1.3: Comenzar y detener los guiones de red # /etc/init.d/net.eth0 start # /etc/init.d/net.eth0 stop Importante: Cuando est solucionando problemas con la red, chele una mirada a /var/log/rc.log. A no ser que haya congurado rc_logger="NO" en /etc/rc.conf, encontrar informacin almacenada en este archivo de registro acerca de las actividades al arrancar.

Ahora que ya ha iniciado y detenido la interfaz de red, quiz quiera que comience automticamente cuando Gentoo arranca. Aqu tiene cmo hacerlo. La ltima orden "rc" indica a Gentoo que inicie todos los guiones en el nivel de ejecucin actual que todava no se hayan sido iniciado.
Listado de Cdigo 1.4: Congurando una interfaz de red para que inicie en el arranque # rc-update add net.eth0 default # rc

2. Conguracin Avanzada
2.a. Conguracin Avanzada
La variable config_eth0 es el corazn de la conguracin de una interfaz. Es una lista de instrucciones de alto nivel para congurar la interfaz (eth0 en este caso). Cada comando en la lista de instrucciones se ejecuta de manera secuencial. La interfaz ser evaluada como OK si, al menos, un comando funciona. Aqu tiene una lista de instrucciones integradas:
Comando Descripcin

75 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

null noop una direccin IPv4 o IPv6 dhcp,adsl o apipa (o un comando propio perteneciente a un mdulo de terceras partes)

No hace nada Si la interfaz est funcionando y existe una direccin entonces aborta la conguracin con xito. Aade la direccin a la interfaz Ejecuta el mdulo que proporciona el comando. Por ejemplo dhcp ejecutar un mdulo que proporcione dhcp, que pudiera ser uno cualquiera de los siguientes: dhcpcd, dhclient o pump.

Si un comando falla, puede especicar un comando de retorno (fallback). El retorno tiene que coincidir exactamente con la estructura de la conguracin. Puede encadenar estos comandos. Aqu se muestran algunos ejemplo reales:
Listado de Cdigo 1.1: Ejemplos de conguracin # Aadir tres direcciones IPv4 config_eth0="192.168.0.2/24 192.168.0.3/24 192.168.0.4/24" # Aadir una direccin IPv4 y dos IPv6 config_eth0="192.168.0.2/24 4321:0:1:2:3:4:567:89ab 4321:0:1:2:3:4:567:89ac" # Mantener la direccin asignada por el kernel, a menos que la interfaz se caiga, entonces asignar otra va DHCP. Si DHCP falla entonces aadir una direccin esttica determinada mediante APIPA config_eth0="noop dhcp" fallback_eth0="null apipa" Nota: Cuando se utiliza el mdulo ifconfig y se aade ms de una direccin, se crean alias de interfaz para cada direccin extra. De esta manera los dos ejemplos anteriores tendrn interfaces eth0, eth0:1 y eth0:2. No se puede hacer nada especial con estas interfaces ya que el kernel y otros programas simplemente tratan eth0:1 y eth0:2 como eth0. Importante: La orden de retorno es importante! Si no especicamos la opcin null, el comando apipa solamente se ejecutara si el comando noop falla. Nota: APIPA y DHCP sern tratados ms adelante.

2.b. Dependencias de red


Los guiones en /etc/init.d pueden depender de una interfaz de red especca o, simplemente, de net (red). Todos los interfaces de red en el sistema de inicio de Gentoo proporcionan algo llamado net. Si est congurado rc_depend_strict="YES" en /etc/rc.conf, entonces todos los interfaces de red que proporcionen net deben estar activos antes que pueda considerarse cumplida la dependencia en "net". En otras palabras, si tienen los interfaces net.eth0 y net.eth1 y un guin de inicio depende de "net", ambos deben estar activados. Por otro lado, si est congurado rc_depend_strict="NO", entonces la dependencia de "net" se considera cumplida al momento de estar activo al menos uno de los interfaces de red. Pero, y qu pasa si net.br0 depende de net.eth0 y net.eth1? net.eth1 podra ser un dispositivo wireless o ppp que necesita congurarse antes de aadirse al puente. Esto no puede hacerse en /etc/init.d/net.br0 ya que es un enlaces simblico a net.lo. La respuesta es denir nuestra propia requerimiento rc_need_ en /etc/conf.d/net
Listado de Cdigo 2.1: Dependencia de net.br0 en /etc/conf.d/net rc_need_br0="net.eth0 net.eth1"

Lo anterior no es suciente. Los guiones de inicio de Gentoo utilizan una dependencia virtual llamada net para informar al sistema cuando est disponible la conexin a red. Claramente, en el caso de arriba la conexin a red debera marcarse como disponible cuando net.br0 est funcionando, no cuando lo estn las otras. Por lo que tenemos que indicar tambin esto en /etc/conf.d/net:
Listado de Cdigo 2.2: Actualizar las dependencias y provisiones para los servicios de red

76 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

rc_net_lo_provide="!net" rc_net_eth0_provide="!net" rc_net_eth1_provide="!net"

Para una lectura ms detallada sobre dependencias, consulte la seccin Guiones de Inicio en el manual de Gentoo. Se puede encontrar ms informacin acerca de /etc/rc.conf en los comentarios dentro del propio archivo.

2.c. Nombre de variables y valores


Los nombre de variables son dinmicos. Normalmente sigue la estructura variable_${interface|mac|essid|apmac}. Por ejemplo, la variable dhcpcd_eth0 guarda los valores para las opciones de dhcpcd para eth0 y dhcpcd_essid los valores para dhcpcd cuando cualquier interfaz se conecta al ESSID "essid". Sin embargo, no hay ninguna regla que indique que los nombre de las interfaces sean ethx. De hecho, muchas interfaces wireless tienen nombres como wlanx, rax o ethx. Tambin, algunas interfaces denidas por el usuario como pueden ser puentes puede tener cualquier nombre, como foo. Para hacer la vida un poco ms interesante, los puntos de acceso wireless pueden tener nombres con caracteres no alfanumricos - esto es importante porque puede congurar los parmetros de red por ESSID. La desventaja de todo esto es que Gentoo usa variables bash para la red - y bash no puede utilizar nada fuera de caracteres alfanumricos ingleses. Para solucionar esta limitacin cambiamos cada carcter que no sea alfanumrico ingls por un carcter _. Otra desventaja de bash es el contenido de las variables - algunos caracteres necesitan especicarse de manera especial. Esto se hace utilizando \ delante del carcter. A continuacin tenemos una lista de caracteres especiales que necesitamos indicar de esta manera. ",' y \. En este ejemplo utilizamos ESSID wireless ya que puede contener un amplio abanico de caracteres. Deberemos utilizar ESSID My "\ NET:
Listado de Cdigo 3.1: Ejemplo de nombre para la variable (Esto funciona, pero el dominio no es vlido) dns_domain_My____NET="My \"\\ NET" (Lo que hay arriba configura el dominio dns a My "\ NET cuando una tarjeta wireless se conecta a un AP cuyo ESSID es My "\ NET)

3. Trabajo Modular con Redes


3.a. Mdulos de Red
Ahora tenemos soporte para guiones de red, lo cual signica que podemos fcilmente aadir soporte para nuevos tipos de interfaces y mdulos de conguracin mientras mantenemos la compatibilidad con los actuales. Los mdulos se cargan por defecto si el paquete que los requiere est instalado. Si especica un modulo aqu que no tiene su paquete instalado, entonces obtendr un error acerca del paquete que necesita instalar. Lo ideal sera que solamente use la conguracin con mdulos si tiene dos o ms paquetes que proporcionen el mismo servicio y necesita marcar su preferencia de uno sobre los otros.
Nota: Todas las conguraciones que aqu se comentan, son almacenadas en /etc/conf.d/net a menos que se especique lo contrario. Listado de Cdigo 1.1: Preferencias en los mdulos # Preferir ifconfig sobre iproute2 modules="ifconfig" # Tambin se puede especificar otros mdulos para una interfaz # En este caso preferimos a udhcpc sobre dhcpcd modules_eth0="pump" # Tambin podemos especificar mdulos que no queremos utilizar # por ejemplo, puede querer utilizar un suplicante o linux-wlang-ng # para controlar la configuracin inalmbrica, pero querer seguir # configurando la red por ESSID asociado. modules="!iwconfig"

3.b. Manejadores de interfaces


Proporcionamos dos manejadores de interfaces: ifconfig e iproute2. Har falta uno de estos para cualquier tipo de conguracin de red.

77 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

Por defecto se instala ifconfig (el paquete net-tools es parte del perl system). El paquete iproute2 es ms poderoso y exible, pero no se incluye por defecto.
Listado de Cdigo 2.1: Para instalar iproute2 # emerge sys-apps/iproute2 # Para preferir ifconfig sobre iproute2 si ambos estn instalados y debido a que openrc # utilizar iproute2, debe hacer: modules="ifconfig"

Ya que ifconfig e iproute2 hacen cosas muy parecidas, nos permitimos usar la misma conguracin bsica para ambos. Los ejemplos a continuacin funcionarn sin importar cul mdulo tenga instalado.
Listado de Cdigo 2.2: Ejemplos de ifcong e iproute2 config_eth0="192.168.0.2/24" config_eth0="192.168.0.2 netmask 255.255.255.0" # Tambin podemos especificar la direccin de difusin config_eth0="192.168.0.2/24 brd 192.168.0.255" config_eth0="192.168.0.2 netmask 255.255.255.0 broadcast 192.168.0.255"

1.c. DHCP
El DHCP es un medio para obtener informacin de red (direccin IP, servidores DNS, puerta de enlace, etc) de un servidor DHCP. Si existe un servidor DHCP en su red, apenas tendr que decirle a cada cliente que utilice DHCP y el servidor se encargar de congurar el resto. Por supuesto, tendr que congurar otras cosas la red inalmbrica, el ppp, etc. u otros si hacen falta antes de poder utilizar DHCP. DHCP puede ser proporcionado por: dhclient, dhcpcd o pump. Cada mdulo DHCP tiene sus propios pros y contras - aqu tiene un pequeo resumen:
Mdulo DHCP
dhclient

Paquete
net-misc/dhcp

Pros
Creado por la ISC, la misma gente que hacen el software dns BIND. Muy congurable Durante largo tiempo ha sido la opcin por defecto de Gentoo, no depende de herramientas externas, activamente desarrollada por Gentoo. Ligero, no depende de herramientas externas.

Contras
Conguracin excesivamente complicada, software bastante hinchado, no se puede obtener servidores NTP desde DHCP, no enva el nombre de host por defecto. Puede ser un poco lento a veces, no se convierte en demonio cuando el arrendamiento de la direccin es innito. Ya no es mantenido por los desarrolladores, no es able especialmente a travs de modems, no se puede obtener servidores de NIS desde DHCP.

dhcpcd

net-misc/dhcpcd

pump

net-misc/pump

Si tiene ms de un cliente DHCP instalado, har falta especicar cul utilizar - sino, utilizaremos dhcpcd por defecto, si est disponible. Para enviar opciones especcas al mdulo dhcp, utilizamos module_eth0="..."(cambie "module" por el nombre del mdulo dhcp que vaya a utilizar - por ejemplo: dhcpcd_eth0). Tratamos que el servicio DHCP sea relativamente agnstico, de manera que soportamos los siguientes comandos usando la variable dhcp_eth0. Por defecto no se conguran ninguno de ellos. release- suelta la direccin IP para ser re-utilizada rnodns - no sobre-escriba el /etc/resolv.conf rnontp - no sobre-escriba el /etc/ntp.conf rnonis - no sobre-escriba el /etc/yp.conf
Listado de Cdigo 3.1: Ejemplo de conguracin DHCP en /etc/conf.d/net # Solamente necesita hacerlo si tiene ms de un mdulo instalado modules="dhcpcd" config_eth0="dhcp" dhcpcd_eth0="-t 10" # Espera agotada (timeout) despus de 10 segundos dhcp_eth0="release nodns nontp nonis" # Solamente obtenga la direccin IP Nota: dhcpcd y dpump envan el nombre de mquina al servidor DHCP por defecto as que no necesita especicarlo ms.

78 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86


3.d. ADSL con PPPoE/PPPoA
Primero necesitamos instalar el software ADSL.
Listado de Cdigo 4.1: Instalar el paquete rp-pppoe # emerge net-dialup/ppp

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

Segundo, cree el guin de red PPP y el guin de red para la interfaz ethernet que se utilizar con PPP:
Listado de Cdigo 4.2: Crear los guiones para PPP y ethernet # ln -s /etc/init.d/net.lo /etc/init.d/net.ppp0 # ln -s /etc/init.d/net.lo /etc/init.d/net.eth0

Asegrese de congurar rc_depend_strict a "YES" en /etc/conf.d/rc. Ahora necesitamos congurar /etc/conf.d/net.


Listado de Cdigo 4.3: Una conguracin bsica PPPoE config_eth0=null (Especifique su intefaz ethernet) config_ppp0="ppp" link_ppp0="eth0" (Especifique su interfaz ethernet) plugins_ppp0="pppoe" username_ppp0='user' password_ppp0='password' pppd_ppp0=" noauth defaultroute usepeerdns holdoff 3 child-timeout 60 lcp-echo-interval 15 lcp-echo-failure 3 noaccomp noccp nobsdcomp nodeflate nopcomp novj novjccomp" rc_need_ppp0="net.eth0"

Tambin puede congurar su password en /etc/ppp/pap-secrets.


Listado de Cdigo 4.4: Ejemplo /etc/ppp/pap-secrets # Ojo: el * es importante "nombre-usuario" * "contrasea"

Si utiliza PPPoE con un modem USB necesitar instalar br2684ctl. Por favor, lea /usr/portage/net-dialup/speedtouchusb/files/README para conseguir la informacin de cmo congurarlo adecuadamente.
Importante: Por favor, lea con detenimiento la seccin sobre ADSL y PPP en /usr/share/doc/openrc-0.8.3-r1/net.example.bz2. Contiene muchas explicaciones mucho ms detalladas de las conguraciones que su instalacin PPP podra necesitar. Por supuesto, cambie 0.8.3-r1 a la versin de OpenRC que est instalada en su sistema.

3.e. APIPA Direccionamiento Privado Automtico (Automatic Private IP Addressing)


APIPA intenta encontrar una direccin libre en el rango 169.254.0.0-169.254.255.255 haciendo arping a direcciones aleatorias en ese rango para el interfaz. Si no se obtiene respuesta, se asigna esa direccin al interfaz. Esto es til solamente en redes donde no hay servidor DHCP y no hay conexin directa al Internet y que todos los dems computadores tambin usen APIPA. Para soporte APIPA, haga emerge net-misc/iputils o net-analyzer/arping.
Listado de Cdigo 5.1: Conguracin de APIPA en /etc/conf.d/net # Intentar DHCP primero - y si falla, entonces usar APIPA config_eth0="dhcp" fallback_eth0="apipa" # Usar nicamente APIPA config_eth0="apipa"

79 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86


3.f. Bonding

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

Para unir enlaces con bonding/trunking haga emerge net-misc/ifenslave. El "bonding" se utiliza para aumentar el ancho de banda hacia la red. Si tiene dos interfaces que van a usar la misma red, puede unirlos (bond, en ingls) para que las aplicaciones vean solo uno, aunque en realidad use ambos interfaces.
Listado de Cdigo 6.1: Conguracin del bonding en /etc/conf.d/net Para unir dos interfaces slaves_bond0="eth0 eth1 eth2" # Tal vez no quiera asignarle direccin IP al interfaz conjunto config_bond0="null" # Depende de eth0, eth1 y eth2, ya que podra requerir configuracin adicional rc_need_bond0="net.eth0 net.eth1 net.eth2" }

3.g. Puentes (soporte para 802.1d)


Para soportar puentes, haga emerge net-misc/bridge-utils. Los puentes se usan para unir redes. Por ejemplo, puede tener un servidor conectando al internet va modem ADSL y una tarjeta inalmbrica para que otros computadores se conecten al internet por medio del modem ADSL. Se puede crear un puente para unir ambos interfaces.
Listado de Cdigo 7.1: Congurar un puente en /etc/conf.d/net # Configure el puente - para ms detalles vea "man brctl" brctl_br0="setfd 0" "sethello 0" "stp off" ) # Para agregar puertos al puente br0 bridge_br0="eth0 eth1" # Har falta configurar los puertos a valores nulos para no iniciar dhcp config_eth0="null" config_eth1="null" # Finalmente, dle una direccin al puente - para esto puede usar DHCP tambin config_br0="192.168.0.1/24" # Depend de eth0 y eth1 ya que pueden requerir configuracin adicional rc_need_br0="net.eth0 net.eth1" } Importante: Para usar algunas conguraciones de puente, tal vez tenga que consultar la documentacin de Conguracin por medio de variables.

3.h. Direccin MAC


Si lo requiere, tambin puede cambiar la direccin MAC de los interfaces por medio del archivo de conguracin de red.
Listado de Cdigo 8.1: Ejemplo de cambio de una direccin MAC # Establecer una direccin MAC de un interfaz mac_eth0="00:11:22:33:44:55" # Para cambiar aleatoriamente solo los ltimos 3 bytes mac_eth0="random-ending" # Para cambiar aleatoriamente entre tipos de conexin # fsicamente iguales (por ejemplo: fibra ptica, cobre, inalmbrica), # para todos los proveedores mac_eth0="random-samekind" # Para cambiar aleatoriamente entre cualquier tipo fsico de # conexin (por ejemplo fibra ptica, cobre, inalmbrica), # para todos los proveedores

80 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86


mac_eth0="random-anykind"

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

# Generacin completamente aleatoria # ADVERTENCIA: algunas direcciones MAC generadas de esta manera # tal vez NO se comporten de la forma esperada mac_eth0="random-full"

3.i. Haciendo tneles


No se requiere hacer emerge de paquete alguno para tneles, ya que el manejador del interfaz se encarga de esto.
Listado de Cdigo 9.1: Conguracin de tneles en /etc/conf.d/net # Para tneles GRE iptunnel_vpn0="mode gre remote 207.170.82.1 key 0xffffffff ttl 255" # Para tneles IPIP iptunnel_vpn0="mode ipip remote 207.170.82.2 ttl 255" # Para configurar el interfaz config_vpn0="192.168.0.2 peer 192.168.1.1"

3.j. VLAN (soporte para 802.1q)


Para soporte VLAN, haga emerge net-misc/vconfig. Las redes virtuales son un grupo de dispositivos de red que se comportan como si estuviesen conectados a un solo segmento de red - aunque no lo estn. Miembros de una VLAN solo pueden ver miembros de la misma VLAN, aunque no compartan la misma red fsica.
Listado de Cdigo 10.1: Conguracin de VLANs en /etc/conf.d/net # Especificar los nmeros de las VLAN para el interfaz as # Por favor asegurar que los ID de las VLANs # NO tengan ceros a la izquierda vlans_eth0="1 2" # Tambin se puede configurar la VLAN # vea la pgina man de vconfig para ms detalles vconfig_eth0="set_name_type VLAN_PLUS_VID_NO_PAD" vconfig_vlan1="set_flag 1" "set_egress_map 2 6" # Configure el interfaz como siempre config_vlan1="172.16.3.1 netmask 255.255.254.0" config_vlan2="172.16.2.1 netmask 255.255.254.0" Importante: Para usar algunas conguraciones de VLAN, tal vez haga falta consultar la documentacin de Conguracin por medio de variables.

4. Redes Inalmbricas
4.a. Introduccin
Las redes inalmbricas en Linux, normalmente se conguran de forma fcil. Hay dos formas de realizar esta conguracin: clientes grcos y la lnea de comandos. La forma ms fcil es usar el cliente grco, una vea haya instalado un entorno de escritorio. La mayora de clientes grcos, como wicd y NetworkManager, son bastante autoexplicativos. Ofrecen una interfaz del tipo apuntar y hacer clic que le conectan a una red en cuestin de segundos.
Nota: wicd ofrece una utilidad de lnea de comandos adems de la interfaz grca principal. Puede obtenerla haciendo emerge de wicd con el ajuste USE ncurses activado. Esta utilidad wicd-curses es particularmente til para aqullos que no usan un entrono de escritorio basado en gtk, pero quieren una herramienta de lnea de comandos fcil que no requiere conguracin a mano de los cheros.

Sin embargo, si no quiere usar un cliente grco, puede congurar la red inalmbrica con la lnea de comandos, editando unos pocos cheros de conguracin. Esto toma un poco ms de tiempo, pero tambin requiere de menos paquetes que descargar e instalar. Ya que los clientes grcos son en su mayora autoexplicativos (con capturas de pantalla tiles en sus pginas ociales), nos centraremos en las alternativas de lnea de comandos. Puede congurar una red inalmbrica usando la lnea de comandos, instalando wireless-tools o wpa_supplicant. Lo

81 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

importante a recordar es que puede congurar las redes locales de forma global, no dependiendo de la interfaz. La mejor opcin es wpa_supplicant. Para un listado de los controladores soportados, lea la pgina de wpa_supplicant. Adems, actualmente, wpa_supplicant slo puede conectarse a SSIDs para los cuales haya sido congurado. Los wireless-tools soportan casi todas las tarjetas y controladores, pero no puede conectarse a PAs (puntos de acceso) con WPA solamente. Si sus redes ofrecen nicamente cifrado WEP o estn completamente abiertas, puede que preera la simpleza de wireless-tools.
Aviso: Actualmente el controlador linux-wlan-ng no est soportado por baselayout. Esto es debido a que linux-wlan-ng tiene su propia conguracin que es completamente diferente a las dems. Se rumorea que los desarrolladores de linux-wlan-ng estn pensando en cambiar su conguracin a wireless-tools. Cuando esto suceda, podremos utilizar linux-wlan-ng con baselayout.

4.b. WPA Supplicant


WPA Supplicant es un paquete que le permite conectarse a puntos de acceso habilitados con WPA.
Listado de Cdigo 2.1: Instalacin de wpa_supplicant # emerge net-wireless/wpa_supplicant Importante: Debe activar CONFIG_PACKET en su kernel para que funcione wpa_supplicant. Intente ejecutar grep CONFIG_PACKET /usr/src /linux/.config para comprobar si lo tiene activado en su ncleo. Nota: Dependiendo de sus ajustes USE, wpa_supplicant puede instalar una interfaz grca escrita en Qt4, que se integrar de forma adecuada con KDE. Para obtenerla, ejecute echo "net-wireless/wpa_supplicant qt4" >> /etc/portage/package.use como root antes de hacer emerge de wpa_supplicant.

Ahora debemos congurar /etc/conf.d/net para elegir wpa_supplicant sobre wireless-tools (si ambos estn instalados, wireless-tools ser usado por defecto).
Listado de Cdigo 2.2: Congurar /etc/conf.d/net para wpa_supplicant # Preferimos wpa_supplicant sobre wireless-tools modules="wpa_supplicant" # Es importante decirle a wpa_supplicant cul controlador # debemos usar ya que todava no adivina bien wpa_supplicant_eth0="-Dmadwifi" Nota: Si est usando el controlador host-ap, har falta colocar el interfaz en modalidad gestin (Managed mode) antes de poder usarlo correctamente con wpa_supplicant. Para esto puede usar iwcong_eth0="mode managed" en /etc/conf.d/net.

Eso fue sencillo, verdad? Sin embargo, todava nos queda congurar wpa_supplicant, que es algo ms difcil, dependiendo de cun seguros son los PAs a los cuales tratamos de conectarnos. A continuacin mostramos un ejemplo simplicado del archivo /etc/wpa_supplicant.conf.example, parte del paquete wpa_supplicant.
Listado de Cdigo 2.3: Un ejemplo de /etc/wpa_supplicant.conf # No cambie la siguiente lnea, a riesgo que no funcione ctrl_interface=/var/run/wpa_supplicant # Asegrese que slo root puede leer la configuracin de WPA ctrl_interface_group=0 # Permtale a wpa_supplicant encargarse del barrido y seleccin de los PA ap_scan=1 # Caso sencillo: WPA-PSK, PSK como contrasea-frase ASCII, # permitiendo todas las encriptaciones vlidas network={ ssid="sencillo" psk="contrasea-frase muy secreta" # A mayor prioridad, ms rpido nos conectaremos priority=5 } # Igual que el ejemplo anterior, pero barriendo por un SSID # especfico (para los PAs que rechazan transmitir el SSID) network={ ssid="segundo ssid"

82 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86


scan_ssid=1 psk="contrasea-frase muy secreta" priority=2 }

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

# Solamente estamos usando WPA-PSK. Se aceptada cualquier encriptacin vlida network={ ssid="ejemplo" proto=WPA key_mgmt=WPA-PSK pairwise=CCMP TKIP group=CCMP TKIP WEP104 WEP40 psk=06b4be19da289f475aa46a33cb793029d4ab3db7a23ee92382eb0106c72ac7bb priority=2 } # Conexin sin encriptar (sin WPA, o IEEE 802.1X) network={ ssid="prueba-noencriptada" key_mgmt=NONE } # Conexin con clave WEP compartida (sin WPA, o IEEE 802.1X) network={ ssid="prueba-estatica-wep" key_mgmt=NONE # Claves entrecomilladas son ASCII wep_key0="abcde" # Claves sin comillas en hexadecimal wep_key1=0102030405 wep_key2="1234567890123" wep_tx_keyidx=0 priority=5 } # Conexin con clave WEP compartida (sin WPA, o IEEE 802.1X) # usando autentificacin con clave compartida IEEE 802.11 network={ ssid="prueba-estatica-wep2" key_mgmt=NONE wep_key0="abcde" wep_key1=0102030405 wep_key2="1234567890123" wep_tx_keyidx=0 priority=5 auth_alg=SHARED } # Red IBSS/ad-hoc con WPA-None/TKIP network={ ssid="prueba adhoc" mode=1 proto=WPA key_mgmt=WPA-NONE pairwise=NONE group=TKIP psk="contrasea-frase secreta" }

4.c. Wireless Tools


Conguracin inicial y modo manejado
Los Wireless Tools proveen una manera genrica para congurar los interfaces inalmbricos bsicos hasta el nivel de seguridad WEP. Aunque WEP es un sistema de seguridad dbil, tambin es el ms prevalente. La conguracin de Wireless Tools es controlado por algunas variables principales. El archivo ejemplo de conguracin a continuacin deber describir todo lo requerido. Algo para mantener presente es que ninguna conguracin signica "conectarse al punto de acceso sin encriptacin que tenga la seal ms fuerte" - de manera que siempre tratar de conectarse con lo que sea.

83 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

Listado de Cdigo 3.1: Instalar wireless-tools # emerge net-wireless/wireless-tools Nota: Aunque pueda almacenar su conguracin inalmbrica en /etc/conf.d/wireless, esta gua le recomienda hacerlo en /etc/conf.d/net. Importante: Har falta consultar la documentacin acerca de nombres de variables. Listado de Cdigo 3.2: Conguracin ejemplo con iwcong en /etc/conf.d/net # Prefiera iwconfig sobre wpa_supplicant modules="iwconfig" # Configure las claves WEP para los PAs ESSID1 y ESSID2 # Pueden configurarse hasta 4 claves WEP, pero solo una puede # estar activa a la vez, as que tenemos un ndice por defecto # de [1] para la clave [1] y luego otra vez para cambiar la clave activa a [1] # Hacemos esto en caso que defina otros ESSIDs para usar claves WEP que no sean 1 # # El prefijar la clave con s: significa que es una clave ASCII, # porque sino es una clave HEX # # enc open especifica seguridad abierta (mxima seguridad) # enc restricted especifica seguridad restringida (menos segura) key_ESSID1="[1] s:suclaveaqui key [1] enc open" key_ESSID2="[1] aaaa-bbbb-cccc-dd key [1] enc restricted" # Los ejemplos a continuacin solo funcionan una vez que se # haya barrido para los PAs disponibles. # A veces se registra ms de un PA, as que har falta definir # un orden de preferencia para conectarse preferred_aps="'ESSID1' 'ESSID2'"

Anamiento en la seleccin de puntos de acceso


Puede agregar opciones adicionales para anar la seleccin de puntos de acceso, pero normalmente esto no hace falta. Puede decidirse si conectarse solamente a PAs preferidos o no. Por defecto, si falla todo lo congurado y nos podemos conectar a un PA no encriptado, entonces se har. Esto puede ser controlado con la variable associate_order (orden asociado). Sigue una tabla de valores y como estos ejercen este control.
Valor
any preferredonly forcepreferred forcepreferredonly forceany

Descripcin
(cualquiera) Comportamiento por defecto (solo preferidos) Solamente nos conectaremos a PAs visibles en la lista de preferidos (obligado a preferidos) Nos conectaremos obligatoriamente a los PAs en el orden preferido aunque no se encuentren en un barrido (solamente preferidos obligados) No barrer buscando PAs - solo tratar de conectar a cada uno en orden (obligar a cualquiera) Igual que forcepreferred y adems se conecta a cualquier otro disponible

Finalmente podemos hacer una lista negra de PAs (blacklist_aps) y seleccionar un nico PA (unique_ap). blacklist_aps funciona de manera similar a preferred_aps. unique_ap es un valor si o no (yes o no) que determina si un segundo interfaz inalmbrico se puede conectar al mismo punto de acceso que el primer interfaz.
Listado de Cdigo 3.3: Ejemplo de blacklist_aps y de unique_ap # A veces nunca queremos conectarnos a algunos PAs blacklist_aps="'ESSID3' 'ESSID4'" # Si tiene ms de una tarjeta inalmbrica, puede determinar # que cada interfaz se asocie al mismo PA o no # Los valores son "yes" y "no" # El valor por defecto es "yes" unique_ap="yes"

Modos Ad-Hoc y Master


Si desea establecerse como un nodo Ad-Hoc al no lograr conectarse a algn PA en modo manejado, puede hacerlo tambin.
Listado de Cdigo 3.4: Usar modo ad-hoc en caso de no conectar en modo manejado

84 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

adhoc_essid_eth0="This Adhoc Node"

Y qu tal conectarse a redes Ad-Hoc o funcionar en modo Master para convertirse en PA? Aqu tenemos una conguracin justo para eso! Tal vez tenga que especicar alguna clave WEP como se muestra arriba.
Listado de Cdigo 3.5: Ejemplo de conguracin ad-hoc/master # Establezca el modo - que puede ser manejado (por defecto), ad-hoc o master # No todos los manejadores soportan todos los modos mode_eth0="ad-hoc" # Establezca el ESSID del interfaz # En modo manejado, esto obliga el interfaz intentar conectarse al # ESSID especificado solamente essid_eth0="This Adhoc Node" # Usamos el canal 3 si no se establece otro channel_eth0="9" Importante: A continuacin citamos la documentacin wavelan de BSD encontrado en la documentacin de NetBSD Existen 14 canales posibles; Se nos informa que los canales 1-11 son legales para Norteamrica , los canales 1-13 para la mayor parte de Europa, los canales 10-13 para Francia y slo el canal 14 para el Japn. En caso de duda, por favor rerase a la documentacin que acompaa la tarjeta o el PA. Asegrese que el canal que selecciona es el mismo del PA (o de la otra tarjeta en caso de ser red ad-hoc). Para las tarjetas vendidas en Norteamrica y la mayor parte de Europa, es el canal 3 por defecto; en Francia el 11 y en el Japn es el 14.

Solucionando problemas con Wireless Tools


Existen ms variables que sirven para ayudar a congurar y operar una red inalmbrica por problemas ambientales o del manejador. Aqu presentamos una tabla de otras cosas para intentar.
Variable
iwconfig_eth0 iwpriv_eth0 sleep_scan_eth0 sleep_associate_eth0 associate_test_eth0 0 5 MAC

Valor por defecto

Descripcin
Vea la pgina man de iwcong para detalles acerca de qu enviar a iwconfig Vea la pgina man de iwpriv para detalles acerca de qu enviar a iwpriv La cantidad en segundos a dormir antes de intentar un barrido. Esto hace falta cuando el manejador/rmware requiere de ms tiempo para activarse antes de poder usarlos. La cantidad en segundos a esperar para que el interfaz se asocie con el PA antes de continuar al siguiente. Algunos manejadores no resetean la direccin MAC asociada a una invlida cuando pierden la seal o intentan asociarse. Algunos manejadores no resetean el nivel de calidad cuando pierden la seal o intentan asociarse. La conguraciones vlidas son MAC, quality y all. Algunos manejadores tienen que hacer el barrido en modo ad-hoc, as que, si falla el barrido, intente congurar aqu como ad-hoc. Enva algunos comandos iwpriv al interfaz antes del barrido. Consulte la pgina man de iwpriv para ms detalles. Enva algunos comandos iwpriv al interfaz despus del barrido. Vea la pgina man de iwpriv para ms detalles.

scan_mode_eth0 iwpriv_scan_pre_eth0 iwpriv_scan_post_eth0

4.d. Deniendo la conguracin de la red por ESSID


A veces, se necesita una direccin IP esttica cuando se conecta a un ESSID1 y cuando lo hace a ESSID2, se utiliza DHCP. De hecho, casi todas las variables de mdulo pueden cambiarse por ESSID. A continuacin mostramos cmo se hace.
Nota: Esto funciona sin importar si usa WPA Supplicant o Wireless Tools. Importante: Necesitar consultar la documentacin variable name. Listado de Cdigo 4.1: Reemplazar conguracin de red por ESSID config_ESSID1="192.168.0.3/24 brd 192.168.0.255" routes_ESSID1="default via 192.168.0.1" config_ESSID2="dhcp" fallback_ESSID2="192.168.3.4/24" fallback_route_ESSID2="default via 192.168.3.1" # Podemos definir servidores DNS y otras cosas tambin # NOTA: DHCP reemplazar esta configuracin si no se le pide que no lo haga dns_servers_ESSID1="192.168.0.1 192.168.0.2" dns_domain_ESSID1="algun.dominio" dns_search_domains_ESSID1="busque.eneste.dominio busque.enaquel.dominio"

85 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

# Reemplace usando la direccin MAC del PA # Esto es muy til si usa distintas ubicaciones con el mismo ESSID config_001122334455="dhcp" dhcpcd_001122334455="-t 10" dns_servers_001122334455="192.168.0.1 192.168.0.2"

5. Agregando Funcionalidad
5.a. Puntos de enlace standard en las funciones
Se pueden denir cuatro funciones en /etc/conf.d/net, que pueden ser llamadas antes o despus de las operaciones start/stop, de arranque/parada. Sus nombres se componen empezando con el nombre de interfaz, de manera que una funcin puede controlar mltiples interfaces. Los valores de retorno de las funciones preup y predown deben ser cero (xito) indicando que la conguracin o la des-conguracin de los interfaces pueden continuar. Si preup devuelve un valor no-cero, se detendr la conguracin del interfaz. Si predown devuelve un valor no-cero, no se permite que el interfaz contine descongurndose. Los valores de retorno de las funciones postup() y postdown() sern ignorados, ya que no hay nada que hacer si hay indicacin de algn fallo. ${IFACE} es el interfaz que ser encendido/apagado, ${IFVAR} es ${IFACE} convertido a un nombre de variable vlido segn bash.
Listado de Cdigo 1.1: Ejemplo de funciones pre/post up/down preup() { # Comprobacin del enlace de la interfaz antes de activarla. # Esto solamente funciona con algunos interfaces de red y necesita # que el paquete ethtool este instalado. if ethtool ${IFACE} | grep -q 'Link detected: no'; then ewarn "No link on ${IFACE}, aborting configuration" return 1 fi # Recordamos devolver cero si todo fue correcto return 0 } predown() { # Por defecto en el guin de inicio se comprueba si # el sistema (root) est montado por NFS y en ese caso no permitir # que las interfaces se desactiven. Tenga en cuenta que, si # especifica una funcin predown() sobreescribir est regla. # Aqu la tiene en caso de que todava quiera utilizarla... if is_net_fs /; then eerror "root filesystem is network mounted -- can't stop ${IFACE}" return 1 fi # Recordamos devolver cero si todo fue correcto return 0 } postup() { # Esta funcin podra utilizarse, por ejemplo, para # registrarse en un servicio dinmico de DNS. Otra posibilidad # sera enviar un correo cada vez que la interfaz se conecta. return 0 } postdown() { # Esta funcin est aqu mayormente para redondear ... An no hemos pensado en algo interesante que pueda hacer ;-) return 0 } Nota: Para mayor informacin acerca de escribir sus propias funciones, agradecemos lea /usr/share/doc/openrc-*/net.example.bz2.

86 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

5.b. Puntos de enlace para las herramientas inalmbricas


Nota: Esto no funcionar con WPA suplicante - pero las variables ${ESSID} y ${ESSIDVAR} estn disponibles en la funcin postup().

Se pueden denir dos funciones en /etc/conf.d/net que se ejecutan antes y despus de la funcin asociada referida. Estas funciones se nombran antecedindole el nombre del interfaz, de manera que la misma funcin puede controlar mltiples interfaces. El valor retornado por la funcin preassociate() debe ser 0 (xito) para indicar que la conguracin o desconguracin del interfaz puede continuar. Si la funcin preassociate() retorna un valor no-cero, se interrumpir la conguracin del interfaz. El valor retornado por la funcin postassociate() se ignora, ya que no hay nada que hacer si llegase a indicarse una falla. A ${ESSID} se le asigna el ESSID exacto del PA al cual se est conectando, ya que ${ESSIDVAR} es ${ESSID}, convertido a un nombre de variable permitido por bash.
Listado de Cdigo 2.1: Funciones pre/post asociacin en /etc/conf.d/net preassociate() { # A continuacin se agregan 2 variables # de configuracin leap_user_ESSID y leap_pass_ESSID. Cuando # ambos estn configurados para el ESSID al que se conectan, # corremos el guin LEAP de CISCO. local user pass eval user=\"\$\{leap_user_${ESSIDVAR}\}\" eval pass=\"\$\{leap_pass_${ESSIDVAR}\}\" if [[ -n ${user} && -n ${pass} ]]; then if [[ ! -x /opt/cisco/bin/leapscript ]]; then eend "For LEAP support, please emerge net-misc/cisco-aironet-client-utils" return 1 fi einfo "Waiting for LEAP Authentication on \"${ESSID//\\\\//}\"" if /opt/cisco/bin/leapscript ${user} ${pass} | grep -q 'Login incorrect'; then ewarn "Login Failed for ${user}" return 1 fi fi return 0 } postassociate() { # Esta funcin existe mayormente para completar ... # aunque no he pensado en algo interesante para hacer ac # todava ;-) return 0 } Nota: Las variables ${ESSID} y ${ESSIDVAR} no estn disponibles en las funciones predown() y postdown(). Nota: Para mayor informacin acerca de cmo escribir sus propias funciones, agradecemos lea /usr/share/doc/openrc-* /net.example.bz2.

6. Manejo de Redes
6.a. Gestin de la red
Si el ordenador est en continuo movimiento, no siempre tendr un cable ethernet conectado o un punto de acceso disponible. Tambin, puede querer que la red funcione automticamente cuando un cable ethernet se conecte o se encuentre un punto de acceso. Aqu se encuentran algunas herramientas que puede ayudar a gestionar esto.
Nota: Esto documento solamente tiene habla sobre ifplugd, pero hay alternativas como netplub. netplug es una alternativa ligera a ifplugd, pero confa en que tus controladores de red del ncleo funcionen correctamente, cosa que muchas veces no es as.

6.b. ifplugd

87 de 88

01-12-2012 13:00

Documentacin Gentoo Linux -- Manuales Gentoo Linux/x86

http://www.gentoo.org/doc/es/handbook/handbook-x86.x...

ifplugd es un demonio que arranca y para las interfaces de red cuando un cable se conecta o se desconecta. Tambin puede gestionar la deteccin asocindose a un punto de acceso o cuando uno nuevo entra dentro del radio de deteccin.
Listado de Cdigo 3.3: Instalar ifplugd # emerge sys-apps/ifplugd

La conguracin de ifplugd es bastante clara. El archivo de conguracin se encuentra en /etc/conf.d/net. Ejecute man ifplugd para obtener ms detalles sobre las variables disponibles. Adems, puede consultar ms ejemplos en /usr/share /doc/openrc-*/net.example.bz2.
Listado de Cdigo 2.2: Ejemplo de conguracin de ifplug (Sustituya eth0 con la interfaz que quiera monitorizar) ifplugd_eth0="..." (Para monitorizar una interfaz wireless) ifplugd_eth0="--api-mode=wlan"

Adems, para manejar mltiples conexiones de red, quiz quiera instalar una herramienta que facilita el trabajo con mltiples conguraciones y servidores DNS. Es realmente til cuando se recibe la direccin IP via DHCP. Simplemente instale openresolv.
Listado de Cdigo 2.3: Instalar openresolv # emerge openresolv

Consulte man resolvconf para aprender ms cosas sobre sus caractersticas.


El contenido de este documento, a no ser que se especique expresamente, est registrado bajo los trminos de la licencia CC-BY-SA-2.5. Se aplican las Pautas de Utilizacin del logo y nombre de Gentoo.

88 de 88

01-12-2012 13:00

You might also like