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/.
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.
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.
Para dhcpd, ejecute emerge dhcp (o cualquier otro servidor DHCP de su elección). Asegúrese de que el interfaz correcto está seleccionado en /etc/conf.d/dhcpd y configúrelo conforme a sus necesidades. Después añada en /etc/dhcp/dhcpd.conf lo siguiente:
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 ethernet del cliente y el directorio donde pondrá los archivos del cliente por los que vaya a usar. |
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 |
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
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!
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!
El contenido de este documento está registrado bajo los términos de la licencia Creative Commons - Reconocimiento / Compartir Igual