Gentoo Logo

Método alternativo de instalación de Gentoo Linux (HOWTO)

Contenido:

1.  Acerca de este documento

Si el método estándar de arranque para la instalación por CD no es posible desde su ordenador (o simplemente no es el que le gusta) ahora tiene ayuda al respecto. Este documento servirá para proveerle de un repositorio de técnicas y métodos alternativos para la instalación de Gentoo Linux. O si lo prefiere, servirá como medio para publicar su más novedoso método de instalación. Si posee alguna técnica de instalación, la cual considera útil para sí mismo, o conoce de alguna otra manera adecuada para instalar Gentoo Linux, por favor, no dude en documentarla y enviarla a Bugzilla.

2.  Iniciando el CD de Instalación con Smart BootManager

Descargue Smart BootManager desde http://btmgr.sourceforge.net/download.html. Las versiones en código fuente para linux o formato binario y los .exe de windows están disponibles, así como muchos packs de idiomas. Sin embargo, por ahora, el método más adecuado sería utilizar el formato binario, ya que el código no compila con las nuevas versiones de NASM.

Compile el programa desde el código o simplemente grabe el archivo binario. Hay varias opciones que pueden utilizarse durante la creación de su disco de arranque, como puede observar a continuación.

Listado de Código 2.1: Opciones de Smart BootManager

sbminst [-t theme] [-d drv] [-b backup_file] [-u backup_file]

   -t theme     select the theme to be used, in which the theme could be:
                  us = English theme       de = German theme 
                  hu = Hungarian theme     zh = Chinese theme 
                  ru = Russian theme       cz = Czech theme
                  es = Spanish theme       fr = French theme 
                  pt = Portuguese theme 

                 
   -d drv       set the drive that you want to install Smart BootManager on;
                for Linux:
                  /dev/fd0 is the first floppy driver, 
                  /dev/hda is the first IDE harddisk driver.
                  /dev/sda is the first SCSI harddisk driver.
                for DOS:
                  0   is the first floppy drive
                  128 is the first hard drive;

   -c             disable CD-ROM booting feature;

   -b backup_file backup the data that will be overwritten for
                  future uninstallation;

   -u backup_file uninstall Smart BootManager, should be used alone;

   -y             do not ask any question or warning.

Listado de Código 2.2: Utilizando sbminst para crear el disco de arranque

# sbminst -t us  -d /dev/fd0

Nota: Reemplace fd0 por el nombre de su dispositivo de disquetes si fuera distinto.

Ahora simplemente sitúe el disquete en la disquetera del ordenador si quiere cargar el CD de Instalación, así como el CD de Instalación dentro del CD-ROM e inicie el ordenador.

Será recibido por el menú del Smart BootManager. Seleccione su CD-ROM y presione ENTER para cargar el CD. Una vez cargado, continúe con las instrucciones normales de instalación.

Puede encontrar más información sobre Smart BootManager en http://btmgr.sourceforge.net/.

3.  Instalación con Knoppix

Nota: Knoppix solamente está disponible para usuarios de arquitecturas x86.

Iniciar desde el LiveCD Knoppix es una manera de tener un sistema completamente funcional mientras está compilando Gentoo. Tux Racer le ayudará a pasar el rato mientras espera, además de poder utilizar OpenOffice para trabajar.

Aviso: Sepa que si guarda cualquier cosa en el directorio de usuario de Knoppix mientras espera a que se instale su sistema Gentoo, lo perderá todo cuando reinicie a Gentoo. ¡Asegúrese de guardar los ficheros importantes en el disco duro o en otro ordenador!

Inicie desde el CD de Knoppix. Si tiene Knoppix 3.6-3.8.2, necesitará especificar knoppix26 como opción de inicio para cargar un kernel 2.6. Si omite este paso, cuando haga chroot, recibirá un error diciendo que su kernel es deasiado antiguo. Si, por el contrario, tiene Knoppix 3.9+, este paso es innecesario, desde que el kernel 2.6 es el predeterminado.

Por defecto, Knoppix carga un escritorio KDE. Abra konsole y teclee su - para así poder cambiar su contraseña. Esto le permite poner la contraseña de root para Knoppix. Ahora puede configurar sshd para acceder remotamente al sistema, como prefiera.

Listado de Código 3.1: Creando el punto de montaje /mnt/gentoo

# mkdir /mnt/gentoo

Llegados a este punto, puede seguir con la instalación normal en la parte 4. Sin embargo, cuando tenga que montar el sistema proc, sustituya el comando por:

Listado de Código 3.2: Montando el pseudo sistema de archivos /proc con bind

# mount -o bind /proc /mnt/gentoo/proc

También, sepa que algunas de las características de Portage no funcionarán en knoppix. Tenga especialmente cuidado con userpriv y usersandbox. Si se encuentra con errores, puede ser acertado desactivar algunas, o todas, de las características opcionales.

4.  Instalación sin disco, usando el arranque PXE.

Requerimientos

Necesitará una tarjeta de red en la máquina cliente que use el protocolo PXE para arrancar, como muchas tarjetas 3Com. Necesitará también una BIOS que soporte el arranque desde PXE.

Configuración básica del servidor

Crear directorios: lo primero que hay que hacer es crear los directorios donde su sistema sin disco será almacenado. Cree un directorio llamado /diskless el cual acogerá un directorio para cada cliente sin disco. De aquí en adelante trabajaremos con un cliente llamado 'eta'.

Listado de Código 4.1: Configuración de directorios

# mkdir /diskless
# mkdir /diskless/eta
# mkdir /diskless/eta/boot

Configurar DHCP y TFTP: el cliente dará información de arranque utilizando DHCP y descargando todos los archivos requeridos usando TFTP. Sólo tiene que emerger DHCP y configurarlo según sus necesidades básicas. Entonces, añada lo siguiente en/etc/dhcp/dhcpd.conf.

Nota: Esto proporciona una dirección IP estática para el cliente y la ruta imagen de arranque PXE, aquí pxegrub. Tendrá que reemplazar la dirección MAC de la tarjeta del Ethernet del cliente y el directorio donde pondrá los archivos del cliente, por los que vaya a usar.

Para DHCPd, ejecute emerge dhcp (o cualquier otro servidor de DHCP de su elección). Asegúrese de que el interfaz correcto haya sido seleccionado en /etc/conf.d/dhcpd.conf.

Listado de Código 4.2: dhcpd.conf

option option-150 code 150 = text ;
ddns-update-style none ;
host eta {
hardware ethernet 00:00:00:00:00:00;
fixed-address ip.add.re.ss;
option option-150 "/eta/boot/grub.lst";
filename "/eta/boot/pxegrub";
}

Luego configuremos el interfaz en /etc/conf.d/net de manera que no pierda la configuración al arrancar. Vea el archivo /etc/conf.d/net.example para más información.

Listado de Código 4.3: /etc/conf.d/net

(Reemplace eth0 con el interfaz adecuado)
config_eth0=( "noop" )

Para TFTP, realice un emerge app-admin/tftp-hpa. En el archivo /etc/conf.d/in.tftpd, ponga lo siguiente:

Listado de Código 4.4: in.tftpd

INTFTPD_PATH="/diskless"
INTFTPD_USER="nobody"
INTFTPD_OPTS="-u ${INTFTPD_USER} -l -vvvvvv -p -c -s ${INTFTPD_PATH}"

Configurar GRUB: para habilitar arranques PXE utilizo GRUB. con el parámetro USE netboot activado. Una vez que GRUB está compilado, copio la imagen PXE al directorio de arranque del cliente sin disco. A continuación edito el fichero de configuración grub.lst.

Listado de Código 4.5: Configuración de Grub

# echo "sys-boot/grub netboot" >> /etc/portage/package.use
# emerge -av grub
# cp /usr/lib/grub/pxegrub /diskless/eta/boot/pxegrub
# nano -w /diskless/eta/boot/grub.lst>

Listado de Código 4.6: grub.lst

default 0
timeout 30

title=Diskless Gentoo
root (nd)
kernel /eta/bzImage ip=dhcp root=/dev/nfs nfsroot=ip.add.re.ss:/diskless/eta

# Para la opción nfsroot, la dirección IP es la del servidor
y el directorio es en el cual los archivos del cliente sin disco están
ubicados (en el servidor).

Configurar NFS: NFS es bastante fácil de configurar. Lo único que debe hacer es añadir una línea en el archivo de configuración /etc/exports:

Listado de Código 4.7: /etc/exports

# nano -w /etc/exports
# /etc/exports: NFS file systems being exported. See exports(5).
/diskless/eta eta(rw,sync,no_root_squash)

Actualice su archivo hosts: una cosa importante que hacer ahora, es modificar su archivo /etc/hosts para ajustarlo a sus necesidades.

Listado de Código 4.8: /etc/hosts

127.0.0.1 localhost

192.168.1.10 eta.example.com eta
192.168.1.20 sigma.example.com sigma

Creando el sistema en el servidor

Quizá quiera reiniciar el servidor con un CD de Instalación Gentoo, aunque también puede continuar perfectamente (sin reiniciar) si conoce como proceder con las instrucciones de instalación de Gentoo desde una instalación existente. Siga el procedimiento de instalación estándar como se explica en el Manual de Gentoo PERO con las siguientes diferencias. Cuando monte el sistema de archivos, haga lo siguiente (donde hdaX es la partición en la cual creó el directorio /diskless). No necesita montar ninguna otra partición, ya que todos los archivos residirán en el directorio /diskless/eta.

Listado de Código 4.9: Montando el sistema de ficheros

# mount /dev/hdaX /mnt/gentoo

Tarballs stage y chroot: Este ejemplo utiliza el tarball de stage3. Monte /proc en su directorio /diskless y haga chroot para continuar con la instalación. Después siga el manual de instalación hasta la configuración del kernel.

Aviso: Sea cuidadoso cuando extraiga su tarball stage. No quiere terminar extrayéndolo sobre su instalación existente.

Listado de Código 4.10: Extrayendo el tarball stage

# cd /mnt/gentoo/diskless/eta/
# tar -xvjpf  /mnt/cdrom/gentoo/stage3-*.tar.bz2
# mount -t proc /proc /mnt/gentoo/diskless/eta/proc
# cp /etc/resolv.conf /mnt/gentoo/diskless/eta/etc/resolv.conf
# chroot /mnt/gentoo/diskless/eta/ /bin/bash
# env-update
# source /etc/profile

Configuración del Kernel: cuando haga el make menuconfig en su configuración kernel, no olvide habilitar las siguientes opciones junto a las otras recomendadas en el manual de instalación.

Listado de Código 4.11: Opciones de menuconfig

- Your network card device support
 (¡En el kernel, no como un módulo!)
 
- Bajo "Networking options" :

[*] TCP/IP networking
[*] IP: kernel level autoconfiguration
[*] IP: DHCP support
[*] IP: BOOTP support


- Bajo "File systems --> Network File Systems" :

<*> NFS file system support
[*] Provide NFSv3 client support
[*] Root file system on NFS

Guarde el kernel en su / de chroot (no en /boot) de acuerdo con las configuraciones de pxegrub definidas anteriormente. A continuación, configure el archivo /etc/fstab de su cliente sin disco.

Listado de Código 4.12: /etc/fstab

# nano -w /etc/fstab
/dev/cdroms/cdrom0 /mnt/cdrom iso9660 noauto,ro 0 0
proc /proc proc defaults 0 0
tmpfs /dev/shm tmpfs defaults 0 0

También necesita prevenir al cliente de ejecutar un chequeo sobre el sistema de archivos:

Listado de Código 4.13: Previniendo al cliente de la ejecución de un chequeo sobre el sistema de ficheros

# touch /fastboot
# echo "touch /fastboot" >> /etc/conf.d/local.start

Instale nfs-utils ya que su cliente dependerá en gran parte de ellas.

Listado de Código 4.14: Installing nfs-utils

# emerge nfs-utils

Gestor de arranque. No instale otro gestor de arranque, porque ya tenemos uno - pxegrub. Simplemente acabe la instalación y reinicie el servidor. Inicie los servicios que necesitará para arrancar el nuevo cliente: DHCP, TFTPD, y NFS.

Listado de Código 4.15: Iniciando los servicios

# /etc/init.d/dhcp start
# /etc/init.d/tftpd start
# /etc/init.d/nfs start

Iniciando el nuevo cliente

Para que el nuevo cliente arranque adecuadamente, necesitará configurar la BIOS y la tarjeta de red para que use PXE como primer método de arranque - antes CD-ROM o floppy. Para ayudarle con esto, consulte los manuales de su hardware o la página web de los proveedores. La tarjeta de red debería conseguir una dirección IP usando DHCP y descargar la imagen PXE del grub usando TFTP. Entonces, debería ver un bonito menú de arranque del grub blanco y negro en el que seleccionará el kernel de arranque y presione intro. Si todo está bien, el kernel debería arrancar, montando el sistema de archivos del root usando NFS y poniendo a su disposición el símbolo de sistema para hacer el login. Disfrute.

5.  Instalando Gentoo desde una distribución Linux existente

Requerimientos

Para instalar Gentoo desde su distribución Linux, necesita tener el comando chroot instalado, y tener una copia del tarball (o ISO) de instalación de Gentoo que quiera instalar. Una conexión a la red sería lo aconsejado, si desea más de lo que viene suministrado en su tarball (de todas formas, un tarball es sólo un archivo terminado en .tbz o .tar.gz). El autor usó RedHat Linux 7.3 como sistema operativo anfitrión, pero no importa mucho. ¡Empecemos!

Perspectiva general

Primero asignaremos una partición a Gentoo reajustando el tamaño de nuestra partición Linux ya existente, montar la partición, descomprimir el tarball en la partición montada, hacer chroot dentro del pseudo-sistema y empezar a compilar. Una vez que la rutina de arranque se ha llevado a cabo, haremos una configuración final en el sistema para asegurarnos de que arranca, entonces estaremos preparados para reiniciar y usar Gentoo.

¿Cómo deberíamos hacer espacio a Gentoo?

La partición de root es el sistema de fichero montado bajo /. Una rápida ejecución de mount en mi sistema muestra de qué estoy hablando. Usamos también df (disco libre) para ver cuánto espacio nos queda y como reajustar su tamaño. ¡Tenga en cuenta que no es obligatorio redistribuir la partición de su root! Podría redistribuir cualquier cosa soportada por nuestro redistribuidor, pero hablemos de eso más tarde.

Listado de Código 5.1: Información del sistema de ficheros

# mount
/dev/hdb2 on / type ext3 (rw) 
none on /proc type proc (rw) 
none on /dev/pts type devpts (rw,gid=5,mode=620) 
none on /dev/shm type tmpfs (rw) 
# df -h 
Filesystem           Size Used Avail Use% Mounted on 
/dev/hdb2            4.0G 1.9G  2.4G  82% /
none		      38M    0    38M   0% /dev/shm 

Como se puede ver, la partición montada como / llamada /dev/hdb2 tiene 2.4 gigabytes libres. En mi caso, creo que lo redistribuiré para dejar 400 Mb de espacio libre, asignando 2 Gb para Gentoo. No está mal, tendría bastante material instalado. De todas formas, creo que 1 gigabyte suele ser suficiente para la mayoría de los usuarios. ¡Así que, vamos a particionarlo!

Instalando parted para redistribuir particiones. 

Parted es una aplicación suministrada por la fundación GNU, un antiguo y respetable gran proyecto cuyo software está usando en este mismo momento. De todas formas, hay una herramienta que ahora nos es extremadamente útil. Se llama parted, editor de particiones y podemos conseguirlo en http://www.gnu.org/software/parted/.

Nota: Hay otras herramientas para redistribuir particiones, pero el autor no está seguro/interesado en que ni PartitionMagic(tm) ni ningún otro software de ese tipo lo haga. Es trabajo del lector probarlos.

Busque en esta página el tipo de sistema de archivos cuyo tamaño desea reajustar y vea si parted puede hacerlo. Si no, no ha tenido suerte, tendrá que borrar alguna partición para hacerle espacio a Gentoo, y volver a instalar. Adelante, descargue el software e instálelo. Aquí encontramos un problema. Queremos reajustar el tamaño de nuestra partición root de Linux, por tanto, debemos iniciar desde un disquete un sistema linux mínimo y usar un parted previamente compilado y copiado a un disquete para redimensionar /. De todas formas, si puede desmontar la partición estando aún en Linux, es afortunado, no necesitará hacer lo siguiente. Sólo compile parted y ejecútelo en una partición desmontada que elija para reajustar su tamaño. Así es como yo lo hice en mi sistema.

Importante: ¡Asegúrese de que las operaciones que desea hacer en su partición son soportadas por parted!

Obtenga el disco de inicio mininux (una mini distribución de Linux basada en un kernel 2.4 y que cabe en un solo disquete, además de ser gratuito) de http://mininux.free.fr/uk/, cree un disquete como viene indicado en la documentación que acompaña el paquete de software e inserte un nuevo disquete en la disquetera para el siguiente paso.

Nota: Observe de nuevo que Linux es sinónimo de "Hay más de una forma de hacerlo". Su objetivo es ejecutar parted en una partición desmontada para que pueda funcionar. Podría utilizar algún software de discos de inicio diferente de mininux. No debería necesitar hacer este paso, es sólo desmontar el sistema de archivos que desea reparticionar en su sesión de Linux y ejecutar parted en ella.

Listado de Código 5.2: Creación del disco de utilidad

# mkfs.minix /dev/fd0
480 inodes
1440 blocks
Firstdatazone=19 (19)
Zonesize=1024
Maxsize=268966912

Ahora procederemos con la configuración e instalación de parted. Si no está todavía descargado y descomprimido, hágalo ahora y cambie de directorio al correspondiente (a parted). Ahora ejecute la siguiente secuencia de comandos para construir la aplicación y cópielo en su disquete.

Listado de Código 5.3: Generando el disco de utilidad

#  mkdir /floppy; mount -t minix /dev/fd0 /floppy && 
export CFLAGS="-O3 -pipe -fomit-frame-pointer -static" && ./configure 
&& make && cp parted/parted /floppy && umount /floppy 

Enhorabuena, está preparado para reiniciar y redistribuir su partición. Hágalo sólo después de echarle un vistazo a la documentación de parted en el website de GNU. El reajuste de tamaño suele tardar unos 30 minutos para los discos duros más largos, sea paciente. Reinicie su sistema con el disco de minuiux (sólo déjelo dentro), y una vez que se haya iniciado la sesión, sustituya el disco de la unidad por el disco de utilidades que hemos creado arriba y teclee mount /dev/fd0 /floppy para montar parted bajo /floppy. Ejecute parted y podrá redimensionar su partición. Una vez acabado este largo proceso, estaremos listos para lo realmente divertido, instalar Gentoo. Vuelva a iniciar su sistema linux anterior. La unidad en la que desea operar es la que contiene la partición cuyo tamaño queremos reajustar. Por ejemplo, si queremos reajustar /dev/hda3, el disco es /dev/hda.

Listado de Código 5.4: Comandos a ejecutar una vez estemos dentro del sistema mininux

# mount /dev/fd0 /floppy 
# cd /floppy; ./parted [disco sobre el que se trabaja]
(parted)  print 
Disk geometry for /dev/hdb: 0.000-9787.148 megabytes
Disk label type: msdos
Minor    Start       End     Type      Filesystem  Flags
1          0.031   2953.125  primary   ntfs        
3       2953.125   3133.265  primary   linux-swap  
2       3133.266   5633.085  primary   ext3        
4       5633.086   9787.148  extended              
5       5633.117   6633.210  logical               
6       6633.242   9787.148  logical   ext3        
(parted)  help resize 
  resize MINOR START END        resize filesystem on partition MINOR

        MINOR is the partition number used by Linux.  On msdos disk labels, the
        primary partitions number from 1-4, and logical partitions are 5
        onwards.
        START and END are in megabytes
(parted)  resize 2 3133.266 4000.000 

Importante: ¡Sea paciente! ¡El ordenador está trabajando! Revise el led en su cpu para ver que realmente está funcionando. Esto llevará entre 2 y 30 minutos.

Una vez que haya reajustado el tamaño, inicie de nuevo su linux antiguo como hemos descrito. Después vaya a El Gentoo Handbook: Preparando los discos y siga las instrucciones. Cuando haga el chroot, use el siguiente comando para limpiar su entorno:

Listado de Código 5.5: Limpiando el entorno durante chroot

 # env -i HOME=$HOME TERM=$TERM chroot /mnt/gentoo /bin/bash
 # /usr/sbin/env-update
 # source /etc/profile

¡Disfrute!



Imprimir

Actualizado 9 de enero, 2008

Sumario: Este HOWTO tiene como fin, ofrecer los diferentes métodos alternativos para la instalación de Gentoo/Linux, es decir, para aquellos con necesidades especiales de instalación tales como falta de cdrom u ordenadores que no puedan arrancar por medio de cds.

Gerald Normandin Jr.
Contributor

Travis Tilley
Contributor

Oleg Raisky
Contributor

Alex Garbutt
Contributor

Alexandre Georges
Contributor

Magnus Backanda
Contributor

Faust A. Tanasescu
Contributor

Daniel Ahlberg
Contributor

Sven Vermeulen
Editor

Ken Nowack
Reviewer

Tiemo Kieft
Editor

Benny Chuang
Editor

Jonathan Smith
Editor

John Christian Stoddart
Traductor

José Luis Rivero
Traductor

Cristina Aguilar
Traductora

Enrique Barbeito García
Traductor

Donate to support our development efforts.

Support OSL

Support OSL

Gentoo Centric Hosting: vr.org

VR Hosted

Tek Alchemy

Tek Alchemy

SevenL.net

SevenL.net

Global Netoptex Inc.

Global Netoptex Inc.

Linux World Expo

Linux World Expo

Copyright 2001-2008 Gentoo Foundation, Inc. Questions, Comments? Contact us.