Mi instalación personal de Gentoo Linux, primera parte

2008-03-15 13:40 - guivaloz

Hace algunos días actualicé el Portage de la instalación de Gentoo Linux que tengo en mi portátil, una Dell Inspiron 9300. Observé que la versión estable del KDE había cambiado a la 3.5.8 y sentí un enfermizo cosquilleo... NO me daban ganas de actualizar… sino de iniciar una NUEVA instalación en este equipo.

De forma habitual, después de actualizar el portage podemos solicitar un listado de los paquetes que se pueden actualizar (valga la redundancia). Gentoo Linux se distingue por bajar el código fuente, desempacarlo, compilarlo e instalarlo; lo cual consume más tiempo que las otras formas de actualización de las demás distribuciones.

Los paquetes pequeños suelen tomar algunos minutos en actualizarse. Pero la actualización de un paquete grande (como Mozilla Firefox o KOffice) o de un entorno gráfico sofisticado (como Gnome o KDE) puede tomar varias horas.

Uno de los atractivos de hacer una nueva instalación es que podemos probar nuevos parámetros de compilación. En esta ocasión me atrae la idea de desactivar arts (es el controlador de audio por defecto de KDE 3.x, no funciona tan bien como quisiera y será depreciado con el KDE 4) y activar ipv6 (aunque no me he conectado aún a una red de éstas, tal vez no falte mucho para que lo tenga que hacer).

Le advierto que la instalación de un Gentoo Linux con un entorno gráfico (Gnome o KDE) y decenas de aplicaciones son muchas horas de descarga, compilación, instalación y configuración. Vea el lado positivo, será divertido, aprenderá mucho y estará optimizando las aplicaciones a la medida de su equipo. Pues ¡SI!... me confieso adicto… a tener mi GNU/Linux optimizado y al día.

A continuación explico una forma alternativa de instalar Gentoo Linux. No es por medio de un asistente ni del LiveCD, sino por gran cantidad de comandos que nos brindarán gran flexibilidad.

También aprovecho que ya tengo particionado el disco duro e instalado Gentoo Linux en este equipo. Gracias a esto, es posible estar instalando Gentoo Linux en una partición mientras se sigue trabajando en la instalación anterior, por que todo esto lo puede hacer en una terminal.

ADVERTENCIA: Esta guía va dirigida a usuarios con experiencia en GNU/Linux. Los comandos mostrados aquí podrían borrar irrevesiblemente sus archivos. Por lo que le sugiero que, antes que nada, haga un respaldo de todo lo que considere importante. No ofrezco ningua garantía ni atenderé ningún reclamo de los resultados que pudieran ocurrir.

Sobre este manual

  • En esta primera parte cubriré la instalación de un Gentoo Linux que llegue hasta a la consola. Me referiré a esta instalación como Instalación Básica. Servirá para copiarla y continuar con instalaciones más elaboradas y para fines de rescate.
  • En la segunda parte continuaremos la instalación hasta tener un entorno gráfico con KDE, con aplicaciones para desarrollo, multimedia y gráficos.
  • Quiero ofrecer mis disculpas anticipadamente por ser muy técnico en este manual. Me he enfocado en registrar cada uno de los comandos de la instalación. Si tiene dudas sobre algún paquete, no dude en consultar al Gentoo Wiki y a Don Google

Mis particiones

  • swap – 1 GB – Aquellos datos que no quepan en la RAM pasan a esta memoria virtual. También se usa al suspender a disco.
  • /boot – 35 MB – La partición de arranque que contiene los kernels.
  • /usr/portage – mínimo 8 GB – Todo el árbol del portage así como los paquetes fuentes. El hecho de tenerlo en una partición me permite compartirlo con las demás instalaciones de Gentoo Linux que tenga en el equipo.
  • /mnt/basico – 2 GB – Un Gentoo Linux básico que sólo llegue a consola. No es para el trabajo diario. Es para ser clonado y hacer con el clon una nueva instalación completa. También me sirve para fines de rescate o emergencia.
  • / (la raíz) – mínimo 8 GB – Un Gentoo Linux completo para trabajar con él.
  • /mnt/respaldo – mínimo 8 GB – Un Gentoo Linux con fines de respaldo. O para tener un entorno distinto (Si tengo KDE en el anterior, aquí puedo tener Gnome).
  • /tmp – de 2 a 5 GB – Temporales
  • /var/tmp – de 2 a 5 GB – Temporales.
  • /mnt/multimedia – Mi música, videos y fotos. Archivos que nunca borraré.
  • /mnt/archivos – Mis archivos. Es la partición más grande.

Formatear y montar la partición raiz de la nueva instalación

Comienzo por formatear la partición. Cambie sdaX por la partición que corresponda en su equipo (por ejemplo, hda6 o sda6).

# mkfs.ext3 /dev/sdaX

La monto…

# mkdir /mnt/basico
# mount /dev/sdaX /mnt/basico

Desempacamos el stage

Siempre tengo a la mano el último stage. Para el Pentium-M tomo el preparado para i686. Puede obtenerlo en gentoo.osuosl.org

# cd /mnt/basico/
# tar xvjpf /home/guillermo/software/gentoo/2007.0/stage3-i686-2007.0.tar.bz2

Edito los principales archivos de configuración: make.conf, locale.gen, 02locales, clock, consolefont, hostname, keymaps y fstab

# nano -w etc/make.conf
# nano -w etc/locale.gen
# nano -w etc/env.d/02locales
# nano -w etc/conf.d/clock
# nano -w etc/conf.d/consolefont
# nano -w etc/conf.d/hostname
# nano -w etc/conf.d/keymaps
# nano -w etc/fstab

Copio la información de la resolución de nombres, es decir, el archivo resolv.conf

# cp /etc/resolv.conf /mnt/basico/etc/resolv.conf

Chroot

Monto las particiones que me apoyarán a la hora de hacer el chroot. Cambie cada /dev/sdaX por la partición correspondiente en su equipo.

# mkdir /mnt/basico/usr/portage
# mount /dev/sdaX    /mnt/basico/boot
# mount /dev/sdaX    /mnt/basico/usr/portage
# mount /dev/sdaX    /mnt/basico/var/tmp
# mount /dev/sdaX    /mnt/basico/tmp
# mount -t proc none /mnt/basico/proc
# mount -o bind /dev /mnt/basico/dev

Me mudo a la nueva instalación por medio del comando chroot.

# chroot /mnt/basico /bin/bash

Ya estoy dentro del nuevo GNU/Linux. Actualizo las variables del entorno.

# env-update
# source /etc/profile
# export PS1="(chroot) $PS1" 

Copio el archivo del huso horario.

# cp /usr/share/zoneinfo/Mexico/General /etc/localtime

Actualizo el caché del portage.

# emerge --metadata

Recompilar todo para el procesador del equipo

El stage nos proporciona lo necesario para que el sistema funcione. Podríamos saltarnos esta parte e ir directamente a instalar el gestor de arranque grub. Pero hay varias razones para comenzar a actualizar y recompilar en este punto del proceso:

  • Se recomienda actualizar el portage.
  • Entre más antiguo sea el stage, más paquetes habrá que actualizar.
  • El stage es genérico con i686. Y yo deseo que todo quede optimizado a mi procesador.

Así pues, actualizo el portage a la versión más reciente.

# emerge -u portage

Para que los cambios hechos en locale.gen y 02locales sean efectivos, recompilamos el compilador.

# emerge -u glibc

Si desea, de aquí en delante, conservar paquetes con las compilaciones (llamados paquetes binarios), para compartir con otras instalaciones de Gentoo Linux en este equipo y en otros equipos idénticos, quite los comentarios de las siguientes líneas de make.conf. Para saber más de esto vea TIP Providing binary packages.

# Para conservar las compilaciones
FEATURES="buildpkg" 
PKGDIR=/usr/portage/packages

Y con el siguiente comando, recompilaré todos los paquetes instalados. Esto toma mucho tiempo.

# emerge -e world

Gestor de arranque grub

Instalo el gestor de arranque grub. Consulte Installing GRUB para más información sobre estos pasos.

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

Kernel

Desempaco el kernel.

# emerge gentoo-sources

Copio el archivo de configuracion del kernel de la instalación anterior, así me ahorro la ardua tarea de configurarlo. Haga esto sólo si se trata de la misma versión.

# cp /mnt/anterior/usr/src/linux/.config /usr/src/linux/

Compilo e instalo el kernel y sus módulos.

# cd /usr/src/linux
# make
# make modules_install
# make install

Configuro el gestor de arranque editando el archivo grub.conf

# nano -w /boot/grub/grub.conf

Paquetes necesarios antes del primer arranque

Y comienzo a instalar los paquetes indispensables y algunos más se recomiendan.

# emerge syslog-ng
# rc-update syslog-ng add default
# emerge vixie-cron
# rc-update vixie-cron add default
# emerge acpid
# rc-update add acpid default
# emerge gentoolkit
# emerge reiserfsprogs
# emerge eselect
# emerge dhcpcd
# emerge pciutils
# emerge usbutils
# emerge sudo
# emerge screen

Contraseñas y primer uso

Defino la contraseña del superusuario root.

# passwd

Doy de alta el usuario común que usaré y su contraseña.

# useradd -g users -G tty,wheel,audio,cdrom,video,portage,cron,usb -m guillermo
# passwd guillermo

Abandono el chroot.

# exit

Reinicio el equipo.

# reboot

Pruebo que la nueva instalación Básica arranque bien.

Audio, red alámbrica y red inalámbrica

Instalo las utilerías de ALSA para usar mi tarjeta de audio. Debo configurarlo en /etc/modules.d/alsa

# emerge alsa-utils
# nano -w /etc/modules.d/alsa
# rc-update add alsasound boot

Para que la red alámbrica se levante al conectar un cable ethernet, instalo netplug.

# emerge netplug

También tengo una tarjeta de red inalámbrica Intel IPW 2200.

# emerge wireless-tools
# emerge ipw2200-firmware

Clonamos la instalación

En este punto, mi instalación básica está lista. El siguiente paso que sugiero es clonarla.

¿Para qué clonarla? se preguntará. Bueno, para ahorrarse de ejecutar todos los pasos anteriores si va a reinstalar. A partir de aquí puede clonar la instalación Básica para instalar Gnome o KDE. Si, tiempo más adelante, ya no le gustó su instalación de Gnome o KDE, formateará esa partición y volverá a clonar la instalación Básica para instalar un nuevo Gnome o KDE. Además, toma menos tiempo actualizar una instalación Básica que hacer todo este procedimiento de nuevo.

MUY IMPORTANTE: Para clonar una partición con GNU/Linux arranque con OTRA INSTALACION o con un CD Live con GNU/Linux

Para ello reinicio el equipo y arranco con la instalación anterior. Insisto, NUNCA clone la instalación que esté usando, podría fallar el proceso o quedar defectuosa.

Primero formateo la partición a donde irá el clon. Cambie sdaY por la partición que corresponda en su equipo.

# mkfs.ext3 /dev/sdaY

Montamos la partición con la instalación básica (sdaX) y la partición vacía (sdaY).

# mount /dev/sdaX /mnt/basico
# mount /dev/sdaY /mnt/gentoo

Para clonar usamos el comando tar con una tubería. Esta técnica es bastante más rápida que el comando cp. Como la partición de origen fue formateada con ext3 verá que tiene un directorio para información de rescate llamado lost+found. No hay que copiar este directorio.

# cd /mnt/basico/
# tar cv --exclude=lost+found * | tar x -C /mnt/gentoo/

Cambios en el clon

Hay que modificar el archivo de configuración fstab del clon. Debemos cambiar la línea que defina la raiz del sistema con la partición /dev/sdaY y también la que apunta a la instalación básica cambiando el punto de montaje a /mnt/basico.

# nano -w /mnt/gentoo/etc/fstab

También debe modificar la configuración del gestor de arranque grub para que pueda usar ambas instalaciones. Un buen truco es usar el mismo kernel para ambas.

# mount /boot
# nano -w /boot/grub/grub.conf

Ya están listas las dos instalaciones básicas de Gentoo Linux. Reinicie y pruebe cada una de ellas.

En la segunda parte tomaré una de éstas para continuar con la instalación del KDE.

Categorías: Gentoo