Instalar Gentoo 2007.0 en placa VIA EPIA VB7001

From Luniwiki
Jump to: navigation, search

Preliminares

La placa base VIA EPIA VB 7001 es una placa Mini ITX especialmente diseñada para crear sistemas embebidos potentes. Gentoo es una distribución que se adapta particularmente a esta placa ya que nos permite sacar el maximo provecho del procesador de arquitectura x86 pero de fabricante Via Tecnologies (No es ni Intel, ni AMD, que son los procesadores por defectos de las distribuciones Linux habituales).

Arranque del instalador de Gentoo

Mi sistema embebido no dispone de unidad optica. Por lo tanto he decidido instalar el sistema a partir de un Pen Drive. Para crear el Pen Drive de instalación he seguido los pasos descritos en el documento de esta wiki.

Instalación de Gentoo

Una vez arrancado el sistema con el Live USB, el proceso de instalación es similar al de la instalación de un servidor explicado en este documento. Solo los detalles propios de esta placa base serán descritos en este documento para el resto de la instalación, nos referiremos al documento principal de instalación.

Particionado de disco

Por razones economicas, el disco es un disco IDE de 40GB de 2,5, y la máquina tiene 512MB de RAM. Las particiones son las siguientes:

hda1 32MB (Boot) ext2
hda2 512MB (Swap) swap
hda3 10GB (ROOT) ext3

El resto del disco se deja libre para el uso de aplicaciones. Montamos /dev/hda3 en /mnt/gentoo y /dev/hda1 en /mnt/gentoo/boot.

Descarga de Stage y portage

Nos descargamos el Stage 1 para poder tener nuestro sistema optimizado para nuestro procesador. Una vez descargados los descomprimimos:

tar xvfjp stage1-x86-2007.0.tar.bz2
tar xvfj portage-latest.tar.bz2 -C /mnt/gentoo/usr/

Al final he cogido el stage1 2008.0-beta2, porque el 2007.0 me daba problemas entre el paquete portage bash y pycrypto.

Parametros procesador

La salida de /proc/cpuinfo es:

processor       : 0
vendor_id       : CentaurHauls
cpu family      : 6
model           : 10
model name      : VIA Esther processor 1500MHz
stepping        : 9
cpu MHz         : 1496.279
cache size      : 128 KB
fdiv_bug        : no
hlt_bug         : no
f00f_bug        : no
coma_bug        : no
fpu             : yes
fpu_exception   : yes
cpuid level     : 1
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8
                  apic sep mtrr pge cmov pat clflush
                  acpi mmx fxsr sse sse2 tm up pni tm2
                  rng  rng_en ace ace_en ace2 ace2_en
                  phe phe_en pmm pmm_en
bogomips        : 2995.44

Si vamos a la página de Safe Cflags vemos que los parametros a poner en el make.conf son:

CHOST="i686-pc-linux-gnu"
CFLAGS="-march=i686 -mmmx -msse -msse2 -msse3 -O2 -pipe -fomit-frame-pointer"
CXXFLAGS="${CFLAGS}"
MAKEOPTS="-j2"
GENTOO_MIRRORS="http://ftp.belnet.be/mirror/rsync.gentoo.org/gentoo/ "
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
USE="acl via unichrome alsa gd hal mmx threads unicode usb vhosts -X -gnome -kde sse sse2 sse3 snmp apache2 -ipv6"
VIDEO_CARDS="via"

Instalación de sistema base

He empezado desde el stage1. Me salto estos pasos en este documento, me he basado en las notas siguientes. Una vez acabado he verificado que todas las librerias eran consitentes, con revdep-rebuild.

emerge -av gentoolkit
revdep-rebuild

Compilación del kernel

Lo primero que he hecho es poner el paquete pciutils y el paquete usbutils.

emerge -av pciutils
emerge -av usbutils

La salida de lspci me da:

00:00.0 Host bridge: VIA Technologies, Inc. CN700/VN800/P4M800CE/Pro Host Bridge
00:00.1 Host bridge: VIA Technologies, Inc. CN700/VN800/P4M800CE/Pro Host Bridge
00:00.2 Host bridge: VIA Technologies, Inc. CN700/VN800/P4M800CE/Pro Host Bridge
00:00.3 Host bridge: VIA Technologies, Inc. PT890 Host Bridge
00:00.4 Host bridge: VIA Technologies, Inc. CN700/VN800/P4M800CE/Pro Host Bridge
00:00.7 Host bridge: VIA Technologies, Inc. CN700/VN800/P4M800CE/Pro Host Bridge
00:01.0 PCI bridge: VIA Technologies, Inc. VT8237 PCI Bridge
00:0f.0 IDE interface: VIA Technologies, Inc. VT82C586A/B/VT82C686/A/B/VT823x/A/C PIPC Bus Master IDE (rev 06)
00:10.0 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 81)
00:10.1 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 81)
00:10.2 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 81)
00:10.4 USB Controller: VIA Technologies, Inc. USB 2.0 (rev 86)
00:11.0 ISA bridge: VIA Technologies, Inc. VT8237 ISA bridge [KT600/K8T800/K8T890 South]
00:12.0 Ethernet controller: VIA Technologies, Inc. VT6102 [Rhine-II] (rev 78)
01:00.0 VGA compatible controller: VIA Technologies, Inc. UniChrome Pro IGP (rev 01)

Configuración del sistema

Aqui he seguido los siguientes pasos.

Grub

He tenido que poner acpi=force en el grub para que me cogiera los parametros correctos

default 0
timeout 2
title=Gentoo Linux 2.6.24-luniel
root (hd0,0)
kernel /boot/kernel-2.6.24-luniel root=/dev/hda3 acpi=force

Apagar correctamente con el botón

Hay que añadir acpi=force como parametro del kernel.

emerge -av acpid
rc-update add acpid default

Creamos un fichero /etc/acpi/events/power

event=button/power.*
action=/etc/acpi/onButtonPress-Power.sh

Creamos el fichero /etc/acpi/onButtonPress-Power.sh, y le damos permisos 750.

#!/bin/sh
# /etc/acpi/onButtonPress-Power.sh
# Shutdown when the power button is pressed
logger "Power button pressed -- shutting system down"
/sbin/shutdown -h now

Arracncamos el servicio

/etc/init.d/acpid start

Referencias

--Daniel Simao 17:10 7 jun 2008 (UTC)