
Introducción:
Alguno se preguntará, ¿por qué pegarse el curro de escribir una entrada tan larga en un blog cuando la documentación de Gentoo es tan buena? Bueno, los motivos son varios. Esta documentación no va dirigida para aquellos que se hagan esta pregunta. Seguramente si te has hecho la pregunta anterior es porque ya tienes unos conocimientos suficientes como para “pelearte” con una distribución como Gentoo y salir victorioso. Esta documentación va más bien dirigida para aquellos que no lo tienen tan claro, para los que quieren ir “al grano” y por supuesto para facilitarme la labor en mi próxima instalación
Debe quedar claro que toda la documentación presenta ejemplos que no serán válidos para todas las instalaciones. En momentos determinados el usuario deberá tomar decisiones propias para llevar a cabo la instalación. El equipo en el que se realizó esta instalación en un Acer Ferrari 3400 (CPU: AMD64).
Otro dato interesante es que se muestra como instalar la tarjeta inalámbrica (Broadcom 4306) sin necesidad de usar Ndiswrapper, es decir, más adelante se explica como instalar drivers nativos de esta tarjeta para Linux.
Arranque desde CD
Lo primero es bajase un CD de instalación, quemar un CD con tu aplicación favorita y arrancar desde el CD.
Instalación por Red
La instalación elegida requiere conexión a internet. Configuraremos unos cuantos parámetros, personalizaremos el sistema y después durante la instalación se desgargará el código fuente de la mayoría de los paquetes seleccionados, se compilarán con los parámetros introducidos y se instalarán en nuestro equipo.
Si estamos conectados mediante ethernet en una red con DHCP deberiamos tener red nada más arrancar. Sino, ejecutaremos el siguiente comando para configurar el dispositivo de red: net-setup eth0
Probamos que tenemos red (ej: ping -c 3 www.gentoo.org) y si es así (debería ser así) seguimos adelante.
Preparando el disco duro
A continuación particionaremos el disco duro para llevar a cabo la instalación. Para ellos mediante el comando fdisk /dev/hda podremos realizar las operaciones oportunas. Si fdisk te resulta complicado de usar, también puedes usar cfdisk /dev/hda que es un poco más amigable.
Yo uso únicamente Linux en mi portátil, y cuando necesito por algún motivo determinado usar alguna aplicación de Windows uso una instalación de Microsoft Windows XP desde Linux. ¿Como es esto?, pues sencillo, se usa una máquina virtual, VMware Player en mi caso y se ejecuta Windows desde Linux. En principio no voy a comentar los pasos para llevar a cabo este proceso pero si recibo las suficientes peticiones (con un par me animo :p) lo añado en un futuro post.
Bueno, centrándonos en las particiones, por ejemplo podríamos dejarlo de la siguiente manera:
| Partición |
Punto de montaje |
Tamaño |
Sistema de fichero |
| /dev/hda1 |
/boot |
100 MB |
ext3 |
| /dev/hda2 |
none |
2048 MB |
swap |
| /dev/hda3 |
/ |
12288 MB |
reiserFS |
| /dev/hda4 |
/home |
resto de espacio libre |
reiserFS |
Los tamaños de cada partición deberá elegirlos cada uno.
Ahora debemos dar formato a las particiones. Siguiendo la configuración de la tabla ejecutariamos los siguientes comandos:
# mkreiserfs /dev/hda3
# mkreiserfs /dev/hda4
# mke2fs -j /dev/hda1
# mkswap /dev/hda2
# swapon /dev/hda2
Configuración del sistema
Montamos las particiones
# mkdir /mnt/gento/boot
# mkdir /mnt/gentoo/home
# mount /dev/hda3 /mnt/gentoo
# mount /dev/hda4 /mnt/gentoo/home
# mount /dev/hda1 /mnt/gentoo/boot
Configuración de fecha
El comando para configurar la fecha es date [date MMDDhhmmYYYY]. Así por ejemplo para introducir la medianoche del 18 de Julio del 2007 debemos introducir date 071800002007
Descarga de Stage3 y Portage
Para empezar nos situarems en el punto de montaje gentoo
# cd /mnt/gentoo
Ahora usaremos links (un navegador en modo texto), descargaremos los ficheros que nos interesan (para descargar un fichero nos situamos sobre él y apretamos “D” [Download]) y finalmente los descomprimiremos donde corresponda.
# links http://www.gentoo.org/main/en/mirrors.xml
Elegimos nuestro país favorito y vamos a “releases” –> “amd64″ –> “current” –> “stages” –> stage3-amd64-2007.0.tar.bz2 y presionamos “D” para descargarlo. También descargamos en el mismo directorio el fichero stage3-amd64-2007.0.tar.bz2.DIGEST para comprobar la autenticidad del primero. Vamos al directorio “snapshots” (3 niveles arriba) ayudándonos de la techa de retroceso (Backspace). De este directorio descargamos el fichero portage-latest.tar.bz2 y portage-latest.tar.bz2.md5sum de la misma forma que con los dos ficheros anteriores. Ya tenemos lo que necesitamos, ahora salimos de links presionando “q” (quit).
Lo siguiente es comprobar que los ficheros descargados no están corruptos y si están en perfecto estado, los descomprimimos en su lugar correspondiente.
Para comprobar que los fichero estan bien ejecutaremos los siguientes comandos:
# md5sum -c stage3-amd64-2007.0.tar.bz2.DIGEST
# md5sum -c portage-latest.tar.bz2.md5sum
Si todo va bien los descomprimimos de la siguiente manera:
# tar xvjpf stage3-amd64-2007.0.tar.bz2
# tar xvjf /mnt/gentoo/portage-latest.tar.bz2 -C /mnt/gentoo/usr
Añadiendo GENTOO_MIRRORS y GENTOO_RSYNC_MIRRORS a make.conf
Como comentaba antes, Gentoo descargará el código fuente de la mayor parte de los paquetes pero antes debemos decirle de donde queremos que se los descargue. Para ello ejecutaremos el siguiente comando que nos abrirá una ventana donde podremos seleccionar los servidores desde los que queremos que se realicen las descargas [añadirá la línea GENTOO_MIRRORS="servidores elegidos"]:
# mirrorselect -i -o >> /mnt/gentoo/etc/make.conf
A continuación debemos añadir también donde queremos que Gentoo compruebe las futuras actualizaciones. Para ello usamos el siguiente comando [añadirá la línea GENTOO_RSYNC_MIRRORS="servidor elegido"]:
# mirrorselect -i -r -o >> /mnt/gentoo/etc/make.conf
Para que encuentre los servidores añadidos con los dos comandos anteriores debemos copiar la información actual sobre los servidores DNS. Ejecutando el siguiente comando conseguimos lo que buscamos:
# cp -L /etc/resolv.conf /mnt/gentoo/etc/resolv.conf
Chrooting
Tenemos que montar /proc en /mnt/gentoo/proc para permitir que durante la instalación se use la información del kernel en ejecución dentro del nuevo entorno al hacer un chroot. También será necesario montar el sistema de fichero /dev en /mnt/gentoo/dev. Este último lo montaremos mediante mount-bind para crear un directorio con permiso total de escritura y para que sea un directorio permamente. Al decir permanente, me refiero que no se pueda borrar.
Los comandos para conseguir lo anterior son:
# mount -t proc none /mnt/gentoo/proc
# mount -o bind /dev/ /mnt/gentoo/dev
Ya estamos preparados para entrar en nuestro nuevo entorno:
# chroot /mnt/gentoo /bin/bash
# env-update
# source /etc/profile
# export PS1=”(chroot) $PS1″
Actualización de Portage
Lo primero que haremos en nuestro nuevo entorno será actualizar el portage de Gentoo. Para ello ejecutamos el siguiente comando:
# emerge –sync
Configuración de locales
Las locales se encuentran en el fichero /etc/locale.gen así que lo editaremos con el comando:
# nano -w /etc/locale.gen
Al terminar de editarlo, el fichero debe quedar con las siguientes líneas sin el “#” del comienzo:
en_US ISO-8859-1
en_US.UTF-8 UTF-8
es_ES@euro ISO-8859-15
es_ES@euro UTF-8
Saldremos del editor presionando Ctrl-X e “y” para confirmar los cambios.
Ahora haremos que las locales elegidas se activen con el siguiente comando:
# locale-gen
Configuración de zona horaria
Ahora debemos elegir la zona horaria en la que nos encontramos. Las zonas horarias se encuentran en el directorio /usr/share/zoneinfo. Debemos copiar la que nos corresponda en /etc/localtime. El siguiente comando configura la zona horaria para Canarias:
# cp /usr/share/zoneinfo/Atlantic/Canary /etc/localtime
Instalación del Kernel
NOTA: En esta documentación se explica como instalar el kernel manualmente. Esta opción, aunque no es excesivamente complicada, requiere de ciertos conocimientos técnicos y del hardware del equipo en que Gentoo está siendo instalado. Existe una opción más sencilla mediante el uso de genkernel que realiza este proceso automáticamente. Aquellos usuarios que prefieran realizar este proceso automáticamente pueden consultar la documentación oficial de Gentoo al respecto aquí. Los que prefieran seguir con el proceso manual pueden seguir leyendo.
Lo primero es descargar las fuentes del kernel mediante el siguiente comando:
# emerge gentoo-sources
(Opcional) Ahora comprobamos la versión:
# ls -l /usr/src/linux
Vamos al directorio donde se encuentra el kernel:
# cd /usr/src/linux
Mediante el siguiente comando preparamos el fichero .config que resultará del proceso de configuración y selección del hardware, sistema de ficheros, drivers, etc., que seleccionemos.
# make menuconfig
Una vez configurado el kernel, salimos del menu guardando el fichero .config que contendrá las opciones de compilación.
Por fin, ¡a compilar el kernel!:
# make && make modules_install
Cuando finalice el proceso de compilación, copiamos el fichero resultante en /boot y le damos un nombre:
# cp arch/x86_64/boot/bzImage /boot/kernel-2.6.20-gentoo-r8-CONFIGURADA_MANUALMENTE
(Opcional) Si queremos comprobar los módulos disponibles podemos hacerlo mediante el siguiente comando. A mi particularmente me gusta revisar bien la configuración y eliminar todos módulos que no vaya a necesitar. Prefiero un kernel con los drivers integrados a uno con los drivers como módulos (lo que suele denominarse erróneamente kernel modular vs. kernel monolítico ya que el kernel de linux esta diseñado de forma modular). Guillermo Valdez Lozano ha escrito un pdf de fácil lectura donde se explican las diferencias.
# find /lib/modules/2.6.20-gentoo-r8/ -type f -iname ‘*.o’ -or -iname ‘*.ko’
En caso de necesitar la carga de algún módulo al arrancar el sistema se puede hacer modificando el fichero /etc/modules.autoload.d/kernel-2.6 y añadiendo el módule que se necesite:
# nano -w /etc/modules.autoload.d/kernel-2.6
Configurando fstab
El fichero /etc/fstab contiene información sobre los puntos de montaje que van a ser cargados al arrancar el sistema. El fichero se organiza en 6 campos diferentes:
- Campo 1: muestra la partición.
- Campo 2: muestra el punto de montaje.
- Campo 3: muestra el tipo de sistema de fichero usado en la partición.
- Campo 4: muestra las opciones especiales empleadas en el proceso de montaje de la partición.
- Campo 5: determina si la partición debe ser volcada o no (normalmente se deja con valor 0).
- Campo 6: este campo es usado por fsck para determinar el orden en el que los sistemas de ficheros deben ser comprobados en caso de que el sistema no se apague correctamente. Normalmente la particion root debe tener valor 1 y las demás 2 si queremos que se comprueben y 0 en caso contrario.
El ejemplo que sigue a continuación muestra el contenido del fichero fstab con la configuración de la table del apartado “Preparando el disco duro“:
/dev/hda1 /boot ext3 defaults 1 2
/dev/hda2 none swap sw 0 0
/dev/hda3 / reiserfs defaults 0 1
/dev/hda4 /home reiserfs defaults 0 2
/dev/cdrom /mnt/cdrom auto users 0 0
shm /dev/shm tmpfs nodev,nosuid,noexec 0 0
proc /proc proc nodev,nosuid,noexec 0 0
Configuración de Red (interfaz ethernet eth0)
Vamos a configurar nuestro hostname, es decir, el nombre que nuestro equipo tendrá en la red:
# nano -w /etc/conf.d/hostname
Modificamos “localhost” por el nombre que queramos.
Ahora vamos a configurar el dominio:
# nano -w /etc/conf.d/net
y añadimos una linea como esta: dns_domain_lo=”el_nombre_de_nuestro_dominio”.
Por fin, configuraremos el dispositivo eth0 con DHCP (IP dinámica):
# nano -w /etc/conf.d/net
y Añadimos las siguientes líneas:
config_eth0=( “dhcp” )
dhcp_eth0=”nodns nontp nonis”
Salimos y guardamos los cambios presionando Ctrl-X e “y”.
Ahora activaremos la red al arrancar el sistema:
# rc-update add net.eth0 default
Vamos a seguir configurando el fichero /etc/hosts, al que añadiremos la siguiente linea:
127.0.0.1 mi_hostname.mi_domainname mi_hostname localhost
Configurando de rc.conf
En el fichero /etc/rc.conf activaremos únicamente las siguientes líneas:
UNICODE=”yes”
EDITOR=”/bin/nano”
Cambiamos la clave de root
Cambiamos la clave del usuario root mediante el siguiente comando:
# passwd
Configuración de KEYMAPS
Editaremos el fichero de keymaps y estableceremos el teclado español
# nano -w /etc/conf.d/keymaps
Activaremos las siguientes líneas:
KEYMAP=”es”
SET_WINDOWKEYS=”yes”
Configuración del reloj
El reloj se configura de la siguiente manera:
# nano -w /etc/conf.d/clock
En este fichero activaremos las siguientes líneas para la franja horaria de Canarias, UTC, y poner la hora del rejoj hardware a la misma hora que la de nuestro sistema (interesante para cuando configuremos el servicio ntp y tener la hora sincronizada):
CLOCK=”UTC”
TIMEZONE=”Atlantic/Canary”
CLOCK_OPTS=”"
CLOCK_SYSTOHC=”yes”
SRM=”no”
ARC=”no”
Las últimas dos líneas son específicas para las antiguas máquinas Alpha (soy un orgulloso propietario de dos de estas maravillas que llegaron a mi con un sistema VMS instalado)
Configuración del sistema de registros (log)
Con los siguientes comandos activaremos el sistema de registros syslog-ng
# emerge syslog-ng
# rc-update add syslog-ng default
Configuración de Cron (vixie-cron)
El servicio Cron se activa de la siguiente manera:
# emerge vixie-cron
# rc-update add vixie-cron default
Configurando indexado de fichero
# emerge slocate
Instalando utilidades de sistemas de ficheros (ReiserFS)
# emerge reiserfsprogs
Instalación del cliente dhcp
# emerge net-misc/dhcpcd
Instalación de GRUB
# emerge grub
Ahora editamos el fichero grub.conf para poder arrancar el sistema:
# nano -w /boot/grub/grub.conf
El fichero debería quedar de la siguiente forma:
default 0
timeout 30
splashimage=(hd0,0)/boot/grub/splash.xpm.gz
title=Gentoo Linux 2.6.20-r8 Made by Carlos Fdez. San Millan
root (hd0,0)
kernel /boot/kernel-2.6.20-gentoo-r8-CARLOS root=/dev/hda3
title=Gentoo Linux 2.6.20-r8 Made by Carlos Fdez. San Millan (rescue)
root (hd0,0)
kernel /boot/kernel-2.6.20-gentoo-r8-CARLOS root=/dev/hda3 init=/bin/bb
Ahora instalamos GRUB mediante grub-install:
# grep -v rootfs /proc/mounts > /etc/mtab
# grub-install –no-floppy /dev/hda
Reiniciamos el sistema
# exit
# cd
# umount /mnt/gentoo/boot /mnt/gentoo/dev /mnt/gentoo/proc /mnt/gentoo/home /mnt/gentoo
# reboot
Creación de un usuario
No es recomendable usar root como usuario de día a día por muchas razones que no voy a discutir en este post. A continuación, en cuanto el sistema arranque de nuevo entraremos como root y crearemos un usuario para el día a día:
# useradd -m -G users,wheel,audio,cdrom,usb,video, -s /bin/bash nombre_de_usuario
Limpiamos los tarballs usados durante la instalación
# rm /stage3*.tar.bz2*
# rm /portage-latest.tar.bz2*
Instalación de herramientas necesarias
La siguiente herramienta es necesaria para mantener el sistema limpio
# emerge gentoolkit
Tarjeta de Video y Sonido
Incluimos las tarjetas de video y sonido en make.conf para que los siguientes paquetes se conpilen son opciones adaptadas:
# nano -w /etc/make.conf
Añadimos las siguientes líneas:
ALSA_CARDS=”via82xx via82xx-modem”
VIDEO_CARDS=”radeon”
Se pueden obtener todas las opciones mediantes los siguientes comandos:
# emerge –info
# man make.conf
Instalación de un entorno gráfico
Instalación de Xorg
# emerge app-doc/xorg-docs x11-base/xorg-x11
Instalación de binarios para tarjeta ATI
# emerge x11-drivers/ati-drivers
Instalación básica de KDE
Ha llegado la hora configurar bien el sistema con TODAS las características que queremos que tenga. Para ellos usaremos una magnífica harramienta llamada ufed:
# emerge app-portage/ufed
Ejecutaremos ufed y seleccionaremos todas las USES que necesitemos:
# ufed
Después de haber elegidos nuestras USES empezamos con la fiesta:
# emerge kdebase-startkde kdm konsole kxkb
Nos vamos a dar un paseo, a tomar un cafetín y volvemos en unas cuantas horas … Yo recomiento dejarlo por la noche y volver por la mañana con más fuerza que nunca.
Cuando todo haya acabado configuramos el sistema para que arranca con nuestro recien compilado KDE:
# nano -w /etc/conf.d/xdm
Cambiamos DISPLAYMANAGER de la siguiente forma:
DISPLAYMANAGER=”kdm”
Activamos el arranque en modo gráfico:
# rc-updade add xdm default
¡A DISFRUTAR DE GENTOO!
Technorati Tags: Gentoo, Instalación, Linux, manual