Guía rápida de instalación Gentoo Linux x86
1.
Introducción
Esta guía contiene todos los comandos que deben utilizarse para
completar una instalación de Gentoo desde un stage3. Se necesitará una
conexión a Internet para descargar las instantáneas del stage3 y de
Portage.
Los nuevos usuarios deberían leer el
Manual de Gentoo puesto que
muestra una mejor visión del proceso de instalación.
Se indica el tiempo de ejecución de todos los comandos que duran más
de un par de segundos en completarse. El tiempo ha sido calculado en
un PC con un AMD 2000 1,66 Ghz, 512 Mb de RAM y dos discos SATA
conectados a una controladora por hardware.
Listado de Código 1.1: Especificaciones del PC de pruebas |
# grep bogo /proc/cpuinfo
bogomips : 3337.81
# hdparm -tT /dev/sda
/dev/sda:
Timing cached reads: 1100 MB in 2.00 seconds = 549.97 MB/sec
Timing buffered disk reads: 224 MB in 3.01 seconds = 74.36 MB/sec
# grep MemTotal /proc/meminfo
MemTotal: 509248 kB
|
2.
Guía rápida de instalación
Medios de instalación
Descargue un CD desde uno de nuestros servidores réplica. Puede encontrar
la ISO del CD minimal en
releases/x86/<release>/installcd o la ISO del
LiveCD en releases/x86/<release>/livecd. El CD de
instalación minimal sólo es práctico para instalaciones a
través de Internet. Se puede utilizar el LiveCD para realizar
una instalación sin red tal como se detalla en Manual Gentoo Linux
2008.0 x86 (en inglés). Recomendamos el CD minimal.
Grabe el CD y arranque
con él.
Arrancar con el CD
Pulse F2 en la pantalla de arranque para ver qué opciones de
inicio están disponibles. Se puede iniciar tanto gentoo como
gentoo-nofb, la última desactiva el framebuffer. Si se inicia
el LiveCD no hay que olvidarse de añadir la opción nox para
evitar que se inicie el entorno gráfico X. Algunas opciones permiten
habilitar o deshabilitar determinadas características. Si todo va
bien, se detectará el hardware y se cargarán todos los módulos. Si el
núcleo falla y no arranca correctamente o si el ordenador se cuelga
durante el inicio, se pueden probar diversas configuraciones. La forma
más segura es probablemente usar la opción nodetect y cargar
explícitamente los módulos cuando sea necesario.
Listado de Código 2.1: Arrancar con el CD minimal |
Gentoo Linux Installation LiveCD http://www.gentoo.org
Enter to Boot; F1 for kernels F2 for options.
boot: gentoo-nofb
boot: gentoo-nofb nodetect
|
Opcional: carga de módulos
Si utiliza la opción nodetect se deberán cargar los módulos
necesarios una vez arrancado el sistema. Se necesitará habilitar la
red y tener acceso a los discos. El comando lspci nos puede
ayudar a identificar el hardware.
Listado de Código 2.2: Carga de los módulos necesarios |
livecd root # lspci
livecd root # modprobe 3w-9xxx
livecd root # modprobe r8169
|
Configuración de red
Si su red no está lista todavía, utilice net-setup para
configurarla. Puede que necesite cargar el soporte para su tarjeta de
red previamente con modprobe. Si tiene ADSL, use
pppoe-setup y pppoe-start. Para el soporte de PPTP,
primero hay que editar /etc/ppp/chap-secrets y
/etc/ppp/options.pptp y después utilizar pptp
<serverip>.
Para acceso inalámbrico, utilice iwconfig para configurar
los parámetros de la red sin hilos y después utilice tanto
net-setup nuevamente o ifconfig, dhcpcd y/o
route manualmente.
Si está tras un proxy, no se olvide de inicializar su sistema
utilizando export http_proxy, ftp_proxy y
RSYNC_PROXY.
Listado de Código 2.3: Configuración asistida de la red |
livecd root # net-setup eth0
|
Alternativamente, puede iniciar la red manualmente. El ejemplo
siguiente asigna la dirección IP 192.168.1.10 a su PC y define
192.168.1.1 como enrutador y servidor de nombres.
Listado de Código 2.4: Configuración manual de la red |
livecd root # ifconfig eth0 192.168.1.10/24
livecd root # route add default gw 192.168.1.1
livecd root # echo nameserver 192.168.1.1 > /etc/resolv.conf
|
El CD de instalación permite arrancar un servidor sshd, añadir
usuarios adicionales, ejecutar irssi (un cliente de chat para
la línea de comandos) y navegar por la web con lynx o
links.
Opcional: conectarse al nuevo sistema a través de ssh
La opción más interesante es, desde luego, sshd. Puede
iniciarse para entonces conectarnos desde otra máquina y copiar y
pegar los comandos de esta guía.
Listado de Código 2.5: Arrancar sshd |
livecd root # time /etc/init.d/sshd start
* Generating hostkey ...
* starting sshd ... [ok]
real 0m13.688s
user 0m9.420s
sys 0m0.090s
|
Ahora estableceremos la contraseña para root en el entorno del liveCD
de forma que podamos conectarnos desde otro PC. Por favor, tenga en
cuenta que permitir a root la conexión a través de ssh no está
recomendado en circunstancias normales. Si no confía en la red local,
debería usar una contraseña larga y compleja, y debería usarla sólo
hasta que desaparezca en el primer reinicio.
Listado de Código 2.6: Establecer la contraseña de root |
livecd root # passwd
New UNIX password:
Retype new UNIX password:
passwd: password updated successfully
|
Ahora, se puede inciar una terminal en otro PC y conectarse a la nueva
máquina, seguir el resto de esta guía en otra ventana, y copiar y
pegar comandos.
Listado de Código 2.7: Conectarse al nuevo sistema desde otro PC |
$ ssh root@192.168.1.10
The authenticity of host '192.168.1.10 (192.168.1.10)' can't be established.
RSA key fingerprint is 96:e7:2d:12:ac:9c:b0:94:90:9f:40:89:b0:45:26:8f.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.1.10' (RSA) to the list of known hosts.
Password:
|
Preparación de los discos
Use fdisk o cfdisk para crear el esquema de
particionado. Necesitaremos por lo menos una partición de intercambio
(swap, tipo 82) y una partición Linux (tipo 83). En el siguiente
ejemplo se creará una partición /boot, una partición de
intercambio y otra principal tal como se ve en el Manual de
instalación de Gentoo. El nombre del dispositivo será algo como
/dev/sda para discos SATA o SCSI, o /dev/hda
para discos IDE.
Listado de Código 2.8: Creación de las particiones |
livecd ~ # fdisk /dev/sda
livecd ~ # fdisk -l /dev/sda
Disk /dev/sda: 599.9 GB, 599978409984 bytes
255 heads, 63 sectors/track, 72943 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 1 12 96358+ 83 Linux
/dev/sda2 13 110 787185 82 Linux swap / Solaris
/dev/sda3 111 72943 585031072+ 83 Linux
|
Utilice mke2fs, mke2fs -j, mkreiserfs,
mkfs.xfs y mkfs.jfs para crear los sistemas de ficheros
en sus particiones Linux. Inicialice la partición de intercambio
mediante mkswap y swapon.
Listado de Código 2.9: Creación de los sistemas de ficheros y activación de la swap |
livecd ~ # mke2fs /dev/sda1
livecd ~ # mke2fs -j /dev/sda3
livecd ~ # mkswap /dev/sda2 && swapon /dev/sda2
|
Monte los recien creados sistemas de ficheros en
/mnt/gentoo. Cree los directorios para otros puntos de
montaje (como /mnt/gentoo/boot) si los necesita y
móntelos también.
Listado de Código 2.10: Montaje de los sistemas de ficheros |
livecd ~ # mount /dev/sda3 /mnt/gentoo
livecd ~ # mkdir /mnt/gentoo/boot
livecd ~ # mount /dev/sda1 /mnt/gentoo/boot
livecd ~ # cd /mnt/gentoo
|
Configurando el escenario (stage)
En primer lugar, asegúrese que la fecha del sistema es correcta con
date MMDDhhmmYYYY. Use hora UTC.
Listado de Código 2.11: Establecer la fecha y el sistema de hora UTC |
livecd ~ # date
Mon Mar 6 00:14:13 UTC 2006
livecd ~ # date 030600162006
Mon Mar 6 00:16:00 UTC 2006
|
Luego descargue un stage desde uno de nuestros servidores réplica. Vaya a
/mnt/gentoo y descomprima el stage utilizando tar xjpf
<stage3 tarball>.
Listado de Código 2.12: Descarga del archivo de un stage3 |
livecd ~ # cd /mnt/gentoo
livecd gentoo # links http://www.gentoo.org/main/en/mirrors.xml
livecd ~ # cd /mnt/gentoo
livecd gentoo # wget ftp://gentoo.osuosl.org/pub/gentoo/releases/x86/2008.0_beta2/stage3-i686*tar.bz2
|
Listado de Código 2.13: Desempaquetado del archivo del stage3 |
livecd gentoo # time tar xjpf stage3*
real 1m14.157s
user 1m2.920s
sys 0m7.530s
|
Instale la última imagen disponible de Portage. Hágalo igual que con
el archivo del stage3: elija un servidor réplica cercano desde la lista, descárguelo y
desempaquételo.
Listado de Código 2.14: Descarga de la última instantánea de Portage |
livecd gentoo # cd /mnt/gentoo/usr
livecd usr # links http://www.gentoo.org/main/en/mirrors.xml
livecd gentoo # cd /mnt/gentoo/usr
livecd usr # wget http://gentoo.osuosl.org/snapshots/portage-latest.tar.bz2
|
Listado de Código 2.15: Desempaquetado del archivo de Portage |
livecd usr # time tar xjf portage*
real 0m40.523s
user 0m28.280s
sys 0m8.240s
|
Entorno enjaulado (chroot)
Monte el sistema de ficheros /proc, sobrescriba el
fichero /etc/resolv.conf y luego cambie el directorio
raíz (chroot) a su entorno Gentoo.
Listado de Código 2.16: Chroot |
livecd usr # cd /
livecd / # mount -t proc proc /mnt/gentoo/proc
livecd / # cp -L /etc/resolv.conf /mnt/gentoo/etc/
livecd / # chroot /mnt/gentoo /bin/bash
livecd / # env-update && source /etc/profile
>>> Regenerating /etc/ld.so.cache...
|
Establecimiento de la zona horaria
Configure su zona horaria encontrando la correcta listando
/usr/share/zoneinfo.
Listado de Código 2.17: Establecimiento de la zona horaria |
livecd / # ls /usr/share/zoneinfo
livecd / # cp /usr/share/zoneinfo/Europe/Brussels /etc/localtime
livecd / # date
Wed Mar 8 00:46:05 CET 2006
|
Establecimiento de los nombres de host y dominio
Estableceremos el nombre del computador en
/etc/conf.d/hostname y en /etc/hosts. En el
ejemplo siguiente, usaremos miordenador como nombre de host y
en.misitio como nombre de dominio. Podremos editar ambos
ficheros con nano o usar los comandos siguientes:
Listado de Código 2.18: Establecimiento de los nombres de host y dominio |
livecd / # cd /etc
livecd etc # echo "127.0.0.1 miordenador.en.misitio miordenador localhost" > hosts
livecd etc # sed -i -e 's/HOSTNAME.*/HOSTNAME="miordenador"/' conf.d/hostname
livecd etc # hostname miordenador
livecd etc # hostname -f
miordenador.en.misitio
|
Configuración del núcleo
Instale las fuentes del núcleo (normalmente gentoo-sources),
configúrelas, compílelas y copie el fichero
arch/i386/boot/bzImage en /boot.
Listado de Código 2.19: Instalación de las fuentes del núcleo, compilación e instalación del núcleo |
livecd etc # time emerge gentoo-sources
real 2m51.435s
user 0m58.220s
sys 0m29.890s
livecd etc # cd /usr/src/linux
livecd linux # make menuconfig
livecd linux # time make -j2
real 3m51.962s
user 3m27.060s
sys 0m24.310s
livecd linux # make modules_install
livecd linux # cp arch/i386/boot/bzImage /boot/kernel
|
Configuración del sistema
Edite su /etc/fstab y reemplace BOOT, ROOT
y SWAP con los nombres correspondientes de sus particiones. No
olvide verificar que los sistmas de ficheros coinciden con los de su
instalación.
Listado de Código 2.20: Ejemplo de fstab |
livecd linux # cd /etc
livecd etc # nano -w fstab
/dev/sda1 /boot ext2 noauto,noatime 1 2
/dev/sda3 / ext3 noatime 0 1
/dev/sda2 none swap sw 0 0
|
Configure la red en /etc/conf.d/net. Añada el guión de
inicio net.eth0 al nivel de ejecución default. Si tiene varias
tarjetas de red, haga un enlace simbólico al guión de inicio
net.eth0 para cada una de ellas y añádalos igualmente al nivel
de ejecución default. Puede editar /etc/conf.d/net
con nano o usar los siguientes comandos:
Listado de Código 2.21: Configuración de la red |
livecd etc # cd conf.d
livecd conf.d # echo 'config_eth0=( "192.168.1.10/24" )' >> net
livecd conf.d # echo 'routes_eth0=( "default via 192.168.1.1" )' >> net
livecd conf.d # rc-update add net.eth0 default
livecd conf.d # echo r8169 >> /etc/modules.autoload.d/kernel-2.6
livecd conf.d # rc-update add sshd default
|
Nota:
Instale pcmciautils si necesita soporte para tarjetas PCMCIA.
|
Establezca la contraseña de root con passwd.
Listado de Código 2.22: Establezca la contraseña de root |
livecd conf.d # passwd
New UNIX password:
Retype new UNIX password:
passwd: password updated successfully
|
Edite /etc/conf.d/clock para definir la zona horaria usada
anteriormente.
Listado de Código 2.23: Editar /etc/conf.d/clock |
livecd conf.d # nano -w /etc/conf.d/clock
TIMEZONE="Europe/Brussels"
|
Verifique la configuración del sistema en /etc/rc.conf,
/etc/conf.d/rc, /etc/conf.d/keymaps, y edite alguno
de los ficheros si es necesario
Listado de Código 2.24: Opcional: edición de algunos ficheros de configuración |
livecd conf.d # nano -w /etc/rc.conf
livecd conf.d # nano -w /etc/conf.d/rc
livecd conf.d # nano -w /etc/conf.d/keymaps
|
Instalación de las herramientas del sistema
Instale una bitácora del sistema como syslog-ng y un demonio de
cron como vixie-cron y añádalos a ambos al nivel de ejecución
default.
Nota:
Los demonios de cron dependen de un MTA por lo que puede que
mail-mta/ssmtp sea puesto como dependencia. Si quiere utilizar
un MTA más avanzado, podría instalarlo ahora. Si tiene prisa, deje que
ssmtp sea instalado y quítelo después cuando instale el MTA de su
elección
|
Listado de Código 2.25: Instalación de una bitácora del sistema de y un demonio de cron |
livecd conf.d # time emerge syslog-ng vixie-cron
real 1m52.699s
user 1m1.630s
sys 0m35.220s
livecd conf.d # rc-update add syslog-ng default
livecd conf.d # rc-update add vixie-cron default
|
Instale las herramientas del sistema (xfsprogs,
reiserfsprogs o jfsutils) y red (dhcpcd o
ppp) precisas, si es que necesita alguna.
Listado de Código 2.26: Instalación de herramientas extra si son necesarias |
livecd conf.d # emerge xfsprogs
livecd conf.d # emerge jfsutils
livecd conf.d # emerge reiserfsprogs
livecd conf.d # emerge dhcpcd
livecd conf.d # emerge ppp
|
Configuración del gestor de arranque
Haga emerge grub y configúrelo.
Listado de Código 2.27: Hacer emerge de grub y editar su fichero de configuración |
livecd conf.d # time emerge grub
real 1m8.634s
user 0m39.460s
sys 0m15.280smedia.xml
livecd conf.d # nano -w /boot/grub/grub.conf
|
Listado de Código 2.28: Ejemplo de grub.conf |
default 0
timeout 10
title Gentoo
root (hd0,0)
kernel /boot/kernel root=/dev/sda3
|
Listado de Código 2.29: Instalación de grub |
livecd conf.d # grub
Probing devices to guess BIOS drives. This may take a long time.
grub> root (hd0,0)
Filesystem type is ext2fs, partition type 0x83
grub> setup (hd0)
Checking if "/boot/grub/stage1" exists... yes
Checking if "/boot/grub/stage2" exists... yes
Checking if "/boot/grub/e2fs_stage1_5" exists... yes
Running "embed /boot/grub/e2fs_stage1_5 (hd0)"... 16 sectors are embedded.
succeeded
Running "install /boot/grub/stage1 (hd0) (hd0)1+16 p (hd0,0)/boot/grub/stage2 /boot/
grub/menu.lst"... succeeded
Done.
grub> quit
|
Reinicio
Salga del entorno de chroot, desmonte todos los sistemas de ficheros y
reinicie:
Listado de Código 2.30: Reinicio |
livecd conf.d # exit
livecd / # umount /mnt/gentoo/proc /mnt/gentoo/boot /mnt/gentoo
livecd / # reboot
|
Finalizar la instalación
Nota:
En nuestra máquina de pruebas, el intervalo de tiempo total
entre el indicador de comandos en el arranque del CD minimal y el
indicador del ingreso en el sistema después de reiniciar fue de
00:42:31. ¡Sí, menos de una hora! Note que este tiempo incluye
incluso la descarga del stage3, de la instantánea de Portage y de
algunos paquetes y el tiempo empleado en configurar el núcleo.
|
Entre como root, luego añada uno o más usuarios para el día a
día utilizando useradd.
Listado de Código 2.31: Entrada en su nuevo sistema desde otro PC |
$ nano -w ~/.ssh/known_hosts
$ ssh root@192.168.1.10
The authenticity of host '192.168.1.10 (192.168.1.10)' can't be established.
RSA key fingerprint is 96:e7:2d:12:ac:9c:b0:94:90:9f:40:89:b0:45:26:8f.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.1.10' (RSA) to the list of known hosts.
Password:
|
Listado de Código 2.32: Añadir un nuevo usuario |
miordenador ~ # adduser -g users -G lp,wheel,audio,cdrom,portage,cron -m john
miordenador ~ # passwd john
New UNIX password:
Retype new UNIX password:
passwd: password updated successfully
|
Últimos retoques de la configuración
Comenzaremos seleccionando los servidores réplica cercanos definiendo
las variables SYNC y GENTOO_MIRRORS en
/etc/make.conf o bien utilizando mirrorselect.
También podemos definir en este momento el número de procesos de
compilación concurrentes.
Listado de Código 2.33: Uso de mirrorselect y establecimiento de MAKEOPTS |
miordenador ~ # emerge mirrorselect
miordenador ~ # mirrorselect -i -o >> /etc/make.conf
miordenador ~ # mirrorselect -i -r -o >> /etc/make.conf
miordenador ~ # echo 'MAKEOPTS="-j2"' >> /etc/make.conf
|
Ahora es un buen momento para habilitar o deshabilitar algunas
opciones USE. Ejecute emerge -vpe world para listar todos los
paquetes instalados y sus opciones USE habilitadas o
deshabilitadas. Edite /etc/make.conf o alternativamente
use el siguiente comando para definir la variable USE:
Listado de Código 2.34: Ver las opciones USE en uso y habilitar o deshabilitar algunas |
miordenador ~ # emerge -vpe world
miordenador ~ # echo 'USE="nptl nptlonly -ipv6 -fortran unicode"' >> /etc/make.conf
|
Versiones recientes de glibc usan /etc/locale.gen para la
configuración de locales.
Listado de Código 2.35: Definición de locales |
miordenador ~ # cd /etc
miordenador etc # nano -w locale.gen
miordenador etc # locale-gen
|
Finalmente pero no menos importante, puede querer modificar la
variable CFLAGS en su /etc/make.conf para
optimizar el código a sus necesidades específicas. Por favor, tenga en
cuenta que raramente se necesita utilizar una larga lista de opciones
que pueden llegar incluso a estropear el sistema. Es recomendable
especificar el tipo de procesador en la opción march e incluir
-O2 -pipe.
También puede querer pasarse a ~x86. Sólo debería hacer esto si
es capaz de manejar los posibles ebuilds o paquetes rotos. Si más bien
quiere mantener su sistema estable, no añada la variable
ACCEPT_KEYWORDS. También es una buena idea añadir
FEATURES="parallel-fetch ccache".
Listado de Código 2.36: Ultima edición de make.conf |
miordenador etc # nano -w make.conf
CFLAGS="-O2 -march=athlon-xp -pipe"
FEATURES="ccache"
ACCEPT_KEYWORDS="~x86"
|
Puede querer recompilar todo su sistema para hacer un uso completo de
los últimos cambios de configuración hechos. Tomará bastante tiempo en
completarse y obtendrá unos mínimos beneficios de velocidad. Puede
dejar a su sistema que se optimice por sí solo de forma gradual cada
vez que salgan versiones nuevas de los paquetes. Sin embargo,
recompilar continúa siendo una buena idea desde el punto de vista de
la consistencia del sistema. Por favor, vaya a la Guía de actualización de GCC en
Gentoo Linux para encontrar una descripción de los beneficios de
disponer de un sistema construido consistentemente.
Recompilar sólo los paquetes que han sido ya actualizados desde la
versión o que han sido afectados por las nuevas opciones USE tomará
bastante tiempo. Podría también quitar los paquetes que bloquean una
actualización. Busque los "[blocks B ]" en la salida de
emerge -vpuD --newuse world y utilice emerge -C para
quitarlos.
Listado de Código 2.37: Actualización de los paquetes |
miordenador etc # emerge ccache
miordenador etc # emerge -vpuD --newuse world
miordenador etc # time emerge -vuD --newuse world
real 180m13.276s
user 121m22.905s
sys 36m31.472s
miordenador etc # emerge --oneshot libtool
miordenador etc # dispatch-conf
miordenador etc # time perl-cleaner all
real 1m6.495s
user 0m42.699s
sys 0m10.641s
miordenador etc # python-updater
|
Qué hacer a continuación
Dependiendo de lo que se supone deba hacer su nueva máquina Gentoo,
probablemente querrá instalar aplicaciones de servidor o un sistema de
escritorio. Sólo como ejemplo, emerge gnome y emerge kde
han sido cronometrados en el sistema ~x86 instalado tal como se
describe antes. Ambos instalados desde el mismo punto de partida.
Puede ver nuestro índice de documentación
para saber cómo instalar la aplicaciones de su elección.
Importante:
Lo siguiente sólo es un ejemplo. De ninguna manera es una
configuración recomendada.
|
Listado de Código 2.38: Emerge GNOME |
miordenador etc # emerge -vp gnome
miordenador etc # nano -w /etc/make.conf
USE="nptl nptlonly -ipv6 -fortran unicode svg hal dbus \
-kde -qt3 -qt4 -arts -eds -esd gnome gstreamer gtk firefox"
miordenador etc # time emerge gnome
real 520m44.532s
user 339m21.144s
sys 146m22.337s
|
Listado de Código 2.39: Emerge KDE |
miordenador etc # emerge -vp kde-meta
miordenador etc # nano -w /etc/make.conf
USE="nptl nptlonly -ipv6 -fortran unicode svg hal dbus \
kde qt3 qt4 -arts -eds -esd -gnome -gstreamer -gtk -firefox"
miordenador etc # time emerge kde-meta
real 1171m25.318s
user 851m26.393s
sys 281m45.629s
|
El contenido de este documento está registrado bajo los términos de
la licencia
Creative Commons - Reconocimiento / Compartir Igual
|