HowTo:705es:Instalación
De Luispa
Instalación de Gentoo en Compaq Mini 705ES
En este artículo se describe el proceso de instalación de GNU/Linux, metadistribución Gentoo, en un equipo Compaq Mini 705ES.
Preparar Particiones para Dual Boot
El equipo tiene un disco duro de 60GB y viene preinstalado con Windows/XP con una única partición. Necesito mantener ese sistema operativo al menos durante una época hasta que compruebe que funciona correctamente VirtualBox en Linux en este HW, así que he decidido dividir el disco y utilizar la opción de Dual Boot.
- Aunque en teoría no es necesario, voy a hacer un defrag en Windows. Hago boot en Windows/XP y utilizo el programa Vopt 9.21 para defragmentar el disco, es decir, colocar de forma secuencial todos los "fragmentos" desperdigados por la partición actual (60GB), de modo que me quede suficiente espacio al "final" del disco para estrechar la partición Windows y dejar espacio para Linux.
Arranco Vopt CleanUp Tools, close applications Defrag disk.
- Rearranco en Windows y lo siguiente lo hago 2 veces:
- Boot en Windows, ejecuto chkdsk /f, reboot para que en el siguiente arranque repare el filesystem
- Rearranco finalmente y hago boot con un USB Stick preparado con System Rescue CD siguiendo sus instrucciones. Durante el boot pulso F9 para
- Selecciono el lenguaje del teclado para la instalación.
Load keymap: 13
- Configuro la tarjeta de Red
# net-setup eth0 (Seguir instrucciones)
- Ejecuto gparted, reduzco la partición de Windows y creo dos particiones para linux (swap, root). He decidido dedicar 25GB a Windows (para cuatro cosas que se va a usar tiene más que de sobra :-)) y 35GB a Linux
wizard gparted selecciono la partición /dev/sda Resize/move y la dejo a 25GB Creo particińo SWAP (1GB) y elk resto para root (EXT4)
Las particiones quedan así: Partición 0: 25GB, Windows XP Partición 1: 1GB, swap Partición 2: 34GB, root % ls -al /dev/sda* brw-r----- 1 root disk 8, 0 2009-09-15 09:28 /dev/sda brw-r----- 1 root disk 8, 1 2009-09-15 09:28 /dev/sda1 brw-r----- 1 root disk 8, 2 2009-09-15 09:28 /dev/sda2 brw-r----- 1 root disk 8, 3 2009-09-15 09:29 /dev/sda3
Instalación
Descarga de SW
- Monto las particiones necesarias para empezar la instalación.
mount /dev/sda3 /mnt/gentoo <=== Tercera partición del disco 0, aquí vamos a instalar "root", mkdir /mnt/gentoo/boot
- A continuación ponemos la fecha
date MMDDhhmmYYYY
- Cambio al directorio root destino (mnt/gentoo)
cd /mnt/gentoo
- Recomiendo usar el entorno gráfico para bajarse el software desde internet.
Vamos al Mirror más cercano (un ejemplo es la UPC) http://www.gentoo.org/main/en/mirrors.xml http://gentoo-euetib.upc.es/mirror/gentoo/ Ir al directorio releases/x86/2008.0/stages Bajarse los ficheros: stage3-x86-2008.0.tar.bz2 stage3-x86-2008.0.tar.bz2.DIGESTS stage3-x86-2008.0.tar.bz2.CONTENTS
- Verificar que al bajarlos no hubo errores:
md5sum -c stage3-x86-2008.0.tar.bz2.DIGESTS
NOTA: Nos hemos bajado un conjunto de paquetes y aplicaciones básicas ya compiladas, por lo que no es óptimo. Es decir, nos bajamos el Stage para empezar a andar por casa, pero en un momento dado tendremos que recompilar todo optimizado para el Compaq Mini 705ES
- Descomprimir el fichero.
cd /mnt/gentoo tar xvjpf stage3-*.tar.bz2
- Nos bajamos Portage y lo instalamos
cd /mnt/gentoo Vamos al Mirror más cercano (usar mozilla) http://www.gentoo.org/main/en/mirrors.xml http://gentoo-euetib.upc.es/mirror/gentoo/ Ir al directorio snapshots/ Bajarse los ficheros: portage-latest.tar.bz2 (Aprox. 34MB) portage-latest.tar.bz2.md5sum
- Verificar que al bajarlos no hubo errores:
md5sum -c portage-latest.tar.bz2.md5sum
- Extraemos el snapshot de Portage
tar xvjf /mnt/gentoo/portage-latest.tar.bz2 -C /mnt/gentoo/usr
- A continuación preparo el equipo para seguir instalándolo en remoto (en mi caso) vía SSH
passwd ((Cambio contraseña de root))
- Conecto con el equipo vía ssh y sigo instalando desde ahí
make.conf
- Veamos ahora la configuración inicial del fichero /etc/make.conf. De entrada te recomiendo este manual sobre los flags de la variable USE. La parte más importante es la variable CFLAGS optimizada para la CPU del equipo. Voy a seguir la recomendación de aquí.
- Editar el fichero /mnt/gentoo/etc/make.conf
# Intel(R) Atom(TM) CPU N270 con GCC < 4.3 (actual durante install: GCC=4.2.4)
CHOST="i686-pc-linux-gnu"
CFLAGS="-march=prescott -O2 -pipe -fomit-frame-pointer"
CXXFLAGS="${CFLAGS}"
# una vez instalado y actualizado GCC >=4.3
# CHOST="i686-pc-linux-gnu"
# CFLAGS="-O2 -march=core2 -mtune=generic -fomit-frame-pointer -pipe"
# CXXFLAGS="${CFLAGS}"
# Poner procesadors +1
MAKEOPTS="-j3"
# Flags USE, pocos, el resto via package.use
USE="xcb -motif -mozilla -firefox xulrunner alsa oggvorbis jpeg png truetype udev X ffmpeg imagemagick java exif x264 gtk lm_sensors"
# Lenguaje
LINGUAS="es en"
# Para xorg 7
VIDEO_CARDS="intel"
INPUT_DEVICES="keyboard synaptics mouse"
Chroot al nuevo Linux
- Copiamos el fichero resolv.conf
cp -L /etc/resolv.conf /mnt/gentoo/etc/
- Cambiamos el entorno
mount -t proc none /mnt/gentoo/proc mount -o bind /dev /mnt/gentoo/dev chroot /mnt/gentoo /bin/bash env-update source /etc/profile export PS1="(chroot) $PS1"
Aviso:
Si necesito otra shell durante la instalación: chroot /mnt/gentoo /bin/bash env-update source /etc/profile export PS1="(chroot) $PS1" Si luego no hace boot y arranco con SystemRescue CD, para volver al chroot: mount /dev/sda3 /mnt/gentoo swapon /dev/sda2 mount -t proc none /mnt/gentoo/proc mount -o bind /dev /mnt/gentoo/dev chroot /mnt/gentoo /bin/bash env-update source /etc/profile export PS1="(chroot) $PS1"
Portage
- Sincronizar Portage
emerge --sync
- Actualizar Portage (sólo si lo pide)
emerge portage
Nota: Actualiza python, por lo que tendré que ejecutar "python-updater" más tarde
Localización
- Edito /etc/locale.gen
en_US ISO-8859-1 en_US.UTF-8 UTF-8 es_ES ISO-8859-1 es_ES@euro ISO-8859-15 es_ES.UTF-8 UTF-8 en_US.UTF-8@euro UTF-8 es_ES.UTF-8@euro UTF-8
Zona horaria
- Timezone
cp /usr/share/zoneinfo/Europe/Madrid /etc/localtime
Actualizar GCC a 4.3.3
Para poder activar hacer uso de la opciones de optimización del compilador para la CPU Intel(R) Atom(TM) CPU N270, es necesario usar una versión >=4.3, por lo que a continuación hago el upgrade a la versión 4.3.2-r3 que es la última estable a fecha de hoy para x86 y que soporta -march=core2.
- Como referencia, este es el enlace a las opciones para x86_64 de la última versión de GCC (4.3) a la que estamos actualizando.
Actualizo a las siguientes versiones: sys-devel/gcc-4.3.2-r3 sys-libs/glibc-2.9_p20081201-r2 # emerge -v gcc glibc
- Cambiar al nuevo GCC
gcc-config -l gcc-config i686-pc-linux-gnu-4.3.2 env-update source /etc/profile
Configuración FINAL del make.conf
- Ahora modifico CFLAG optimizado para el Core 2 para Intel(R) Atom(TM) CPU N270
# Intel(R) Atom(TM) CPU N270 con GCC >= 4.3
# CHOST="i686-pc-linux-gnu"
# CFLAGS="-O2 -march=core2 -mtune=generic -fomit-frame-pointer -pipe"
# CXXFLAGS="${CFLAGS}"
# Poner procesadors +1
MAKEOPTS="-j3"
# Flags USE, pocos, el resto via package.use
USE="xcb -motif -mozilla -firefox xulrunner alsa oggvorbis jpeg png truetype udev X ffmpeg imagemagick java exif x264 gtk lm_sensors"
# Lenguaje
LINGUAS="es en"
# Para xorg 7
VIDEO_CARDS="intel"
INPUT_DEVICES="keyboard synaptics mouse"
Toolchain
- Ejecutar fix_libtool_files.sh
fix_libtool_files.sh 4.1.2
- xz-utils va a terminar de sustituir lzma-utils, lo instalo ahora al principio para evitar la migración futura. Aunque está marcado como Beta, ha demostrado ser muy estable.
echo "=app-arch/xz-utils-4.999.9_beta ~x86" >> /etc/portage/package.keywords emerge -v xz-utils
- Recompilar el Toolchain
gcc-config -l gcc-config i686-pc-linux-gnu-4.3.2 env-update source /etc/profile Verificamos que está activo el nuevo gcc gcc --version gcc (Gentoo 4.3.2-r3 p1.6, pie-10.1.5) 4.3.2 En mi caso no fue así, por lo que procedí a borrar el antiguo emerge -C sys-devel/gcc-4.1.2 fix_libtool_files.sh 4.1.2 emerge -1 libtool env-update && source /etc/profile
Ahora debería ser correcto gcc --version gcc (Gentoo 4.3.2-r3 p1.6, pie-10.1.5) 4.3.2 Finalmente ya podemos instalar el Toolchain emerge -v binutils gcc glibc libtool
genlop
- Compilar herramientas de apoyo básicas
# emerge -v genlop gentoolkit
Nota: genlop es una herramienta muy útil para ver lo que vas instalando.
Usa "genlop -t <nombre de paquete>" o "genlop -tc"; ambos para saber tiempos
Update completo
- Borramos el compilador antiguo y hacemos una recompilación completa del sistema
# emerge -C sys-devel/gcc-4.1.2 # fix_libtool_files.sh 4.1.2 # emerge -1 libtool # env-update && source /etc/profile # emerge -e system && emerge -e world
Configurar el Kernel
- Verificar que la Zona horaria es correcta
# nano -w /etc/conf.d/clock CLOCK="local" TIMEZONE="Europe/Madrid" CLOCK_SYSTOHC="yes"
- Cuando termines toda la instalación te recomiendo que configures los Servicios horarios, cliente y servidor NTP
- Descarga del Kernel 2.6.30-r6
# emerge -v gentoo-sources Calculating dependencies... done! [ebuild N ] sys-kernel/gentoo-sources-2.6.30-r6 USE="-build -symlink" 58,160 kB :
- Configurar el kernel
cd /usr/src/linux make menuconfig
Nota: aquí tienes una copia de mi kernel para el 705es
- Compilar el Kernel
make && make modules_install
- Instalar el Kernel
cd /usr/src/linux cp arch/x86/boot/bzImage /boot/bzImage-2.6.30-gentoo-r6 cp System.map /boot/System.map-2.6.30-gentoo-r6
- Indicar que [M]ódulos del Kernel queremos que se cargen durante el boot
nano -w /etc/modules.autoload.d/kernel-2.6 NOTA: En mi caso de momento no voy a poner ninguno hasta que no lo necesite más adelante...
Configurar el sistema
- Fichero /etc/fstab
/dev/sda3 / ext4 noatime 0 1 /dev/sda2 none swap sw 0 0 proc /proc proc defaults 0 0 tmpfs /dev/shm tmpfs nodev,nosuid,noexec 0 0
- Información de red
- Nombre del equipo (MUY IMPORTANTE)
# nano -w /etc/conf.d/hostname HOSTNAME="mini" <== Pon el nombre que quieras...
- Domain name
# nano -w /etc/conf.d/domainname OVERRIDE=1 DNSDOMAIN="parchis.org" NISDOMAIN=""
- Configurar la red
# nano -w /etc/conf.d/net NOTA: No lo modifico, dado que voy a usar DHCP, se queda vacío
- Inicio automático de la red en el próximo boot
# rc-update add net.eth0 default
- Editar /etc/hosts y modificar la linea de localhost
127.0.0.1 mini.parchis.org mini localhost localhost.localdomain
- Fiichero /etc/rc.conf
# nano -w /etc/rc.conf UNICODE="yes"
- Fichero /etc/env.d/02locale
LC_ALL="es_ES.UTF-8" LC_COLLATE="es_ES.UTF-8" LC_CTYPE="es_ES.UTF-8" LC_MESSAGES="es_ES.UTF-8" LC_MONETARY="es_ES.UTF-8" LC_NUMERIC="es_ES.UTF-8" LC_PAPER="es_ES.UTF-8" LANG="es_ES.UTF-8"
- Fichero /etc/conf.d/consolefont
CONSOLEFONT="lat9w-16"
- Keymaps
# nano -w /etc/conf.d/keymaps KEYMAP="-u es" SET_WINDOWKEYS="yes" EXTENDED_KEYMAPS="backspace euro2" DUMPKEYS_CHARSET=""
- El reloj
# nano -w /etc/conf.d/clock CLOCK="local" TIMEZONE="Europe/Madrid" CLOCK_OPTS="" CLOCK_SYSTOHC="yes"
Passwd de root
- Este es un paso MUY IMPORTANTE. NO OLVIDARLO :-)
# passwd
Instalación herramientas necesarias
- Sistema de bitácoras (registro o log)
# emerge -v metalog # rc-update add metalog default NOTA: El metalog es altamente configurable, ver man 5 metalog.conf En mi caso he realizado modificaciones importantes, mira mi copia del fichero /etc/metalog.conf
- Sistema de cron
# emerge -v vixie-cron # rc-update add vixie-cron default
- Indexación de archivos
# emerge -v slocate NOTA: Para buscar "cualquier" fichero en cualquier disco, usar el comando "locate -i <nombre>"
- Cliente DHCP
# emerge -v dhcpcd
- Herramientas varias
# emerge -v pciutils
- Programar el arranque de ssh en cada boot.
# rc-update add sshd default
No olvidar EXT4
Es importante que tengamos el siguiente paquete a la última versión, dado que Root (/) irá en formato EXT4.
# emerge -v e2fsprogs
El gestor de arranque (GRUB)
- En este caso, con dual boot tenemos:
Partición 0: Windows Partición 1: Swap Partición 2: Root (con el boot incluido) EXT4
- Primero instalamos el programa (para dual boot hace falta instalar al menos la versión -r9 de grub)
# emerge -v grub
- Editamos el fichero de configuración
# nano -w /boot/grub/grub.conf
- Utilizar un fichero como este:
default 0 timeout 10 # Windows en la Partición 0 title=Microsoft Windows root (hd0,0) savedefault makeactive chainloader +1 # Linux en la Partición 2 title=Gentoo Linux 2.6.30-gentoo-r6 root (hd0,2) kernel (hd0,2)/boot/bzImage-2.6.30-gentoo-r6 root=/dev/sda3
Instalación del MBR
- Opción manual (Para disco 0 con dual boot Windows en partición 0 y Linux en partición 2)
# grub --no-floppy grub> root (hd0,2) (Especifique donde tiene su partición /boot) grub> setup (hd0) (Instalamos GRUB en el MBR) grub> quit (Salimos del intérprete de comandos de GRUB)
Reiniciar el sistema
- Rearrancamos el equipo
NOTA: Salirse de las sesiones ssh clientes y chroot's # exit cdimage ~# cd cdimage ~# umount /mnt/gentoo/boot /mnt/gentoo/dev /mnt/gentoo/proc /mnt/gentoo cdimage ~# reboot
ATENCIÓN: EL PRIMER "BOOT" SIEMPRE ES UNA INCÓGNITA. PUEDE QUE TE FUNCIONE O PUEDE QUE NO. A MI ME FUNCIONÓ :-)
Aviso: Si no hace boot, tendrás que hacer boot de nuevo mediante la USB SystemRescue CD para volver a arrancar. Ejecuta lo siguiente para poder hacer las moficicaciones y arreglos necesarios.
# mount /dev/sda3 /mnt/gentoo # swapon /dev/sda2 # mount -t proc none /mnt/gentoo/proc # mount -o bind /dev /mnt/gentoo/dev # chroot /mnt/gentoo /bin/bash # env-update # source /etc/profile # export PS1="(chroot) $PS1"
Tras el primer boot
- 'VERIFICAR LA HORA DEL EQUIPO.'
- Según arranca verificar la hora HW
- Cuando arranca verificar la hora Linux y cambiarla MANUALMENTE si hace falta
# date MMDDhhmmYYYY
- Si tienes errores durante el arranque sobre ficheros con fecha en el futuro... en mi caso fueron los de /etc/conf.d
cd /etc ls -alrt Los últimos tendrán fecha en el futuro y podrás corregirlos con el comando touch touch fichero1.conf fichero2.conf ...
Siguientes pasos
- En el artículo sobre configuración del 705ES podrás encontrar cómo continuar configurando el equipo.
- Te recomiendo leer a partir de este artículo, que aunque se refiere a la instalación de otro ordenador, te va a valer como ejemplo. Ten en cuenta que los discos en su caso son diferentes.
Enlaces y Créditos
| [1] | http://www.vopt.com/ | Un buen de-fragmentador de particiones. |
Volver a Página inicial del Compaq Mini 705ES
--Luis 20:29 13 sep 2009 (CEST)

