Instalar Gentoo desde módulos precompilados.

By 5 de agosto de 2006 Linux No Comments

Gentoo Reference Platform (GRP). Instalación de Gentoo en una tarde.

Esta guía está indicada para usuarios que, o bien no disponen de internet en el preciso momento en el que instalan la distribución, o bien que neceitan hacer una instalación para depués hacer una posterior optimización si lo desean, omitiremos los pasos de instalación del kernel así como de algunas coas que vienen muy bien detallada en el handbook (http://www.gentoo.org).Basaremos nuestra instalación en la arquitectura x86, (intel, amd).

1° wget http...

Nos bajaremos la Live CD de el site de gentoo, este debe ser la Live 'universal' desde algún mirror de http://www.gentoo.org, la cual tiene el stage 3, el portage y distfiles y el CD Package (GRP) correspondiente a nuestra arquitectura o a la gernérica x86 que puede encontrarse aquí: http://chod.cwru.edu/gentoo/releases/x86/2004.2/packagecd/x86/ o en un enlace similar.

Una vez arrancado el sistema con la Live, eligiendo siempre que tipo de kernel queremos que nos inicie, procedemos a la particiones en las cuales queremos instalar nuestra Gentoo, para ello el Live CD viene con la aplicación fdisk , tremendamente espartana y con el inconveniente de que no podemos detectar el espacio libre del que disponemos en el hdx y eso haría que borremos particiones con suma facilidad, (el Live CD también nos viene con cfdisk, mucho mñas amigable pero con el mismo problema). Lo que quiere decir que siempre podemos optar por programas gráficos que nos darán más seguridad a la hora de redimensionar o elegir donde queremos nuestra partición/nes para instlar nuestro sistema, como por ejemplo qtparted, que nos viene en lal nunca bien ponderada Live CD Knoppix.

Si instaláramos desde un sistema sin información podemos aventurarnos a trabajar con fdisk (#fdisk /dev/hdx o #cfdisk) y hacer las particiones a nuestro gusto.

Activamos las particiones: (ext3)

# mke2fs -j /dev/hda -> Formateamos la partición creada para ext3.
# mkswap /dev/hda4 -> Creamos las particion swap.
# swapon /dev/hda4 -> Para activarla.

Montamos las particiones para poder escribir información desde el Live CD a nuestro hd.

# mount /dev/hda2 /mnt/gentoo

2° Instalando Gentoo

Ahora instalaremos las stage 3.

Para ello necesitamos que esté montado el cd-rom /mnt/cdrom.

Es muy importante fijar la hora y fecha actuales, si no elcomando tar podría dar problemas.

# date --set="09/14/04 18:26"

Procedemos a descomprimir el stage:

# cd /mnt/gentoo
# tar -xjvpf /mnt/cdrom/stages/stage3-x86-2004.2.tar.bz2

El stage que acabamos de instalar contiene bastantes paquetes que están en el Portage. Los paquetes prevompilados que vamos ainstalar también están en el Portage, y todos están conuna versión determinada (al igual que los del stage), por tanto para que nuestro sistema Gentoo sea coherente, nuestro árbol del Portage ha de ser sincronizados con todas estas versiones. Ha de ser una 'captura' del árbol del Portage con todas las versiones de los paquetes necesitadas. Yesa captura se encuentra en el directorio snapshots del Live CD, descomprimimos la captura en /usr, ya que, todo el POrtage se encuentra en /usr/portage y el archivo al descomprimir nos genera el propio directorio portage:

# tar -xjvf /mnt/cdrom/snapshots(portge-20040710.tar.bz2 -C /mnt/gentoo/usr

También hay que copiar otro directório del Live CD:

# mkdir /mnt/gentoo/usr/portage/distfiles
# cp /mnt/cdrom/distfiles/* /mnt/gentoo/usr/portage/distfiles

El directorio distfiles es una de las novedades de Gentoo respecto a otras distribuciones. En él se encuentran todos los archivos que Gentoo se baja de la red cuando va a inastalar cualquier aplicacion. No sólo están los tar.gz o tbz2 si no los parches y bugs que necesitern las aplicaciones que lo necesiten.

El motivo de copiar en directorio distfiles es que nos proportciona el código fuente de algunas aplicaciones que nos interesará compilar más adelante.

Hacer CHROOT (chrooting)

Esto lo hacemos para pasar desde la Live CD a la / del sistema que estamos instalando con la 'base' que ya tenemos, de forma que estamos trabajando en la particion de destino. Es más que reomendaple que pongamos un password de root a la Live CD, ya que de esa manera dispondremos de varias consolas qeu al no haber hecho chroot estarán 'trabajando' desde la / del Live CD con lo que para acceder a nuestra instalación desde esas cónsolas deberemos is mediante cd /mnt/gentoo.

# passwd root

Antes de hacer chroot deberemos montar los directórios /dev y /proc y de esa forma nos aseguraremos de que éstos tienen un contenido válido para poder operar en ellos de forma normal.

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

Si hubiéramos arrancado nuestro sistema conun kernel 2.6 tendríamos que hacer lo mismo con el directorio /sys.

# mkdir /mnt/gentoo/sys
# mount -o bind /sys /mnt/gentoo/sys

Vemos que estamo montando los directorios verdaderos dentro de nuestra partición y esto como hemos visto se hace con mount y la opción bind. El directorio /dyd lo debemos crear nosotros por que éste no viene en la stage3

Hagamos de una vez chroot:

# chroot /mnt/gentoo /bin/bash

Ya estamos dentro de nuestro recien instalado sistema ahora teclearemos:

# env-update
# source /etc/profile

Muy bien, pero ... ¿Que hemos hecho? (a mi personalmente no me gusta hacer actos de fé en la informática, más bien lo detesto :)
El primer comando sirve para crear el entorno de una Gentoo normal. El segundo, para cargar en memoria ciertas variables de entorno que se necesitan para el funcionamienteo cotidiano de la distribución..

4° Instalar un KERNEL

Esta lid es de las más sangrientas que se puede encontrar un principiante en el mundo GNU/Linux, para ello hay un aguía escepcional que podéis encontrar en:

http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=1&chap=7

(también existe la versión española)

La alternativa a esto sería la herramienta creada por el equipo de desarrolladores de Gentoo: genkernel esto también lo podéis encontrar en la página que os he comentado más arriba, una de las mejores cosas que tiene esta aplicación es que recoge la configuración del Live CD y la empasta en nuestro kernel. En contra: Un montón de módulos que no nos hacen falta y nos comen memoria. A favor: un kernel que funciona... ya nos curraremos otro que esté 'pata negra' :)

con:

# emerge -usepkg genkernel
# genkernel --bootsplash --install all

--bootsplash -> instala el efectivo bootsplash de inicio (logo, etc.).
--install -> instala el núcleo depués de su compilación.
--no-install -> no instala el núcleo después de su compilación.

A la opción -usepkg no le des mucha importancia en este punto del manual, es la piedra filosofal de la instalacion GRP, pero más adelante explicaremos para que se utiliza.

5º Edición del archivo /etc/fstab

En él daremos las instrucciones para que se monten las unidades que necesitamos; /boot/ , / , swap etc.

/dev/hda1   /boot     ext2    noauto,noatime    1 2 /dev/hda2   none      swap    sw                0 0 /dev/hda3   /         ext3    noatime           0 1  none        /proc     proc    defaults          0 0 none        /dev/shm  tmpfs   defaults          0 0  /dev/cdroms/cdrom0    /mnt/cdrom    auto      noauto,user    0 0

Sustituyendo hdxy por los que nosotros tengamos, y porsupuesto añadiendo los dispositivos que nosotros necesitemos.

6° Configuración de un gestor de arranque.

En Gentoo el gestor de arranque favorito es grub, siempre que estemos hablando de plataformas x86. La otra alternativa seríoa lilo. Una de las ventajas que tenemos a la hora de elegir grub es que no tenemos que ejecutar ningún programa para que los cambios se vean reflejados. Así que:

# emerge grub
# grub

grub> root (hd0,0)          (Especifiqua donde está tu partición /boot) grub> setup (hd0)           (Instala GRUB en el MBR) grub> quit                  (Sal del interfaz de comando de GRUB)

grub tiene una manera muy curiosa de nombrar a los discos (y esto es lo que más lia), nombra los discos como lo haría en BSD de forma que (hd0,0) sería igual a: hda1, (hd1,1) a hdb2 y así.

A la hora de configurar grub es necesario tener en cuenta cuan es la clave para no equivocarnos al llamar a /boot/kernel{versión}. Por ejemplo; si hemos configurado:

Partición Sistema de Ficheros Tamaño Descripción

no debemos descuidar que para grub (Linux) el boot esta en el / de /dev/hda1 con lo que la linea de llamada al boot será algo así:

(listado correspondiente a grub cuendo hemos utilizado genkernel)

default 0 timeout 30 splashimage=(hd0,0)/grub/splash.xpm.gz  title=Gentoo Linux 2.4.22 root (hd0,0) kernel (hd0,0)/kernel-2.4.22 root=/dev/hda3 initrd (hd0,0)/initrd-2.4.22
# Solo en caso de arranque doble title=Windows XP root (hd0,5) chainloader +1

Pero si sólo temenos dos particiones (swap y boot+sistema_de_ficheros) la cosa cambiaría:

splashimage=(hd0,0)/boot/grub/splash.xpm.gz  title=Gentoo Linux 2.4.22 root (hd0,0) kernel (hd0,0)/boot/kernel-2.4.22 root=/dev/hda3 initrd (hd0,0)/boot/initrd-2.4.22

Ya que no existe un punto de montaje en /boot que corresponda a /dev/hda1 y portnto se comporte como un directorio sólo si se monta en /etc/fstab al inicio y bien si lo montamos nosotros a mano, si no que /boot/ es un directorio y debe ser detallado.

Antes de reiniciar el sistema deberemos poner un password de root ara poder acceder al S.O.

7º Intalando más aplicaciones.

Aquí vendría la parte a la que nos referíamos desde un buen principio la instalación de paquetes precompilados mediante GRP. Pero antes deberemos instalar una aplicaciones básicas, una de herramienta de logs, otra de planificación de tareas y el paquete gentoolkit.

# emerge vixie-corn metalog gentoolkit

Estas herramientas combiene ejecutarlas en el arranque del sistema así que:

# rc-update add syslog-ng default
# rc-update add vixie-cron default

Y de esta manera el script rc-update nos añade al runlevel denominado default estos dos programas.

Ahora ya podemos usar GRP. Insertamos el "Packages CD" y lo montamos en /mnt/cdrom y con la variable de entorno PKGDIR indicamos a nuestro sistema Genbtoo donde se encuentra un directório con la forma ya descrita de /usr/portage/packages. Nosotros tendremos que hacer que esta variable apunte al CD-ROM, por ello tecleamos:

# export PKGDIR="/mnt/cdrom"

A partir de este momento, estamos en disposición todos los paquetes binarios del CD. Por ejemplo para instalar kde sería:

# emerge --usepkg kde

La opción --usepkg se puede abreviar usando -k.

Ya estás preparado para instalar los binarios. Si hicieras un emerge sync para actualizar el Portage, los binarios preconstruídos tal vez no sean las mismas versiones que los ebuild en tu árbol Portage actualizado. Esto lo puedes intentar evitar utilizando emerge --usepkgonly en vez de emerge --usepkg. Pero yo personalmente no haría una acción de ese tipo, lo más recomendable sería instalar todo como he relatado y una vez acabado de instalar el sistema más o menos como has querido, una noche ejecutas:

# emerge sync && emerge -e system && emerge --update --deep world

y con eso tendrás el sistema actualizado.

El propósito de éste manual no es hacer tunnig de Gentoo Linux, sólo es el de la instalación. Con lo que no hablare más que lo que he dicho al respecto.

Este manual está sugeto a la evolución a partir del feedback de los lectores, intentando de esa manera mejorarlo y hacerlo más práctico y llevadero.

aupa!

Leave a Reply

Your email address will not be published.