Instalando Debian en UltraSPARC
Sunday, 23 September 2018
Inicio | Documentacion | Software | Acerca de

Documentación y Software
Inicio
Documentacion
Software
Acerca de


Este documento detalla los puntos más destacables durante la instalación de Debian en una máquina SUN UltraSPARC.

Introducción



No voy a detallar cómo se hace toda la instalación, así que necesitarás tener los conocimientos suficientes para instalar Debian tu solo :D

¿Por qué Debian Sid? Porque es la que trae las últimas versiones de los paquetes, y como la máquina no hará ninguna tarea crítica, me puedo permitir
el lujo de actualizarla casi todos los dias. Empezaremos una instalación con
los CDs de Debian 3.0 (estable), pero luego actualizaremos a inestable.

La máquina en cuestión tiene un procesador UltraSPARC I a 170 MHz, 256 MB de RAM, 2x2 GB de disco SCSI, tarjeta de red y tarjeta de sonido integrada. Esta máquina tiene sus añitos, ni siquiera tiene bus PCI, pero se le puede sacar mucho partido.

En cualquier sitio de subastas por Internet, esta máquina cuesta entre 50 y 100 euros, y una más potente, como la Ultra 10, alrededor de 300 euros (siempre sin monitor).

El tema del monitor es un poco espinoso. Existen máquinas Ultra que llevan tarjetas PCI y otras que llevan SBUS. Además, pueden llevar conectores de video VGA o 13W3. Si lleva tarjeta PCI y conector VGA, podremos ponerle prácticamente cualquier monitor, pero si nuestra Ultra lleva conector 13W3, las cosas se complican si no disponemos de un monitor de Sun. Los únicos monitores que funcionan con el conector 13W3 son los llamados "MultiSync", que soportan sincronía RGB, y la que nos importa a nosotros: "Sync-On-Green". Los monitores MultiSync no son precisamente baratos, y además necesitamos uno que soporte 1024x768 como mínimo.

Pero todo tiene solución. Aqui en España venden unos aparatos que transforman la sincronía SOG a RGB, con lo que se puede conectar cualquier monitor de 17" sin problemas.

Iniciando la instalación.



Encedemos la máquina, metemos el CD de instalación de Debian, y volvemos a reiniciar. Si la máquina está configurada para arrancar desde CD, el proceso se iniciará de inmediato.

Existe la posibilidad que la máquina no arranque desde CD. Para solucionarlo
seguiremos estos pasos. Una vez que comprobamos que el sistema puede arrancar, entraremos en la "BIOS" del sistema. En las máquinas Sun, esta "BIOS" se llama "OpenBoot", y es accesible en cualquier momento, no solo durante el arranque. Para entrar en "OpenBoot" debemos pulsar la combinación de teclas "Stop-A", y tendremos un prompt donde podremos ejecutar una serie de comandos.

En este prompt ejecutaremos el comando

boot cdrom


La máquina reiniciará y arrancará desde CD. Veremos el proceso de instalación de Debian.

Consideraciones en la instalación



Particiones



En la instalación de Debian para SPARC no hay gestor gráfico de particiones
(cfdisk), sino que debemos usar el "fdisk". Podemos seguir el esquema de
particiones que queramos, lo único que hay que tener en cuenta es que la
última partición debe ocupar desde el primero cilindro hasta el último, y el
tipo debe ser "Whole Disk" (partición tipo 5). Mi esquema de particiones es este:

sparky:~# fdisk /dev/sda

Command (m for help): p

Disk /dev/sda (Sun disk label): 19 heads, 80 sectors, 2733 cylinders
Units = cylinders of 1520 * 512 bytes

   Device Flag    Start       End    Blocks   Id  System
/dev/sda1             0      2425   1843000   83  Linux native
/dev/sda2  u       2425      2733    234080   82  Linux swap
/dev/sda3             0      2733   2077080    5  Whole disk

Paquetes



A mi me gusta hacer una instalación básica, sin usar las llamadas "tareas"
(tasks) ni el gestor "dselect". Además, tampoco suelo meter módulos en el
kernel, ya que luego instalo el último kernel disponible. Además, luego
podemos instalar uno de los kernels que vienen el CD, y ya llevan todos los
módulos necesarios, así que no habrá demasiado problema.

Actualización a inestable



Una vez instalada Debian estable, procedemos a instalar el último kernel que
venga en el CD. El paquete tendrá el esquema "kernel-image-version-arquitectura", por ejemplo "kernel-image-2.4.24-sparc64". Las máquinas UltraSPARC son de 64 bits, así que debemos instalar el paquete terminado en "sparc64".

Cuando el kernel esté instalado y funcionando, comprobaremos que la tarjeta
de red funciona y podemos actualizar a inestable mediante el APT. Es
imprescindible que instales el paquete llamado "sparc-utils", puesto que
luego nos hará falta.

Compilando un kernel nuevo



Cuando ya tenemos el sistema instalado, vamos a proceder a compilar el último kernel disponible de la serie 2.4 (la 2.6 todavía no la he probado ;), que ha fecha de hoy es el 2.4.25.

Paquetes que necesitamos: gcc, make, binutils, libncurses5-dev, ...

La compilación del kernel en UltraSPARC es un poco... "curiosa". El kernel
debe ser compilado con una versión de gcc que sea capaz de crear binarios de
64 bits (gcc 3.0 o superior), PERO la compilación debe tener lugar en un
entorno de 32 bits. Suena raro, pero es así :D

El entorno de 32 bits se consigue mediante el comando "sparc32", que es una
especie de "subshell" en modo 32 bits:

sparky:~# uname -a
Linux sparky 2.4.25-rc2 #2 Mon Feb 16 18:39:35 CET 2004 sparc64 GNU/Linux
sparky:~# sparc32 uname -a
Linux sparky 2.4.25-rc2 #2 Mon Feb 16 18:39:35 CET 2004 sparc GNU/Linux

Fijate en el primer comando. La arquitectura es "sparc64" (64 bits), mientras que en el segundo, que hemos ejecutado en un entorno de 32 bits, la arquitectura es simplemente "sparc".

Una vez tenemos el kernel descomprimido, ejecutamos:

# sparc32 make ARCH=sparc64 menuconfig


y tendremos el menú de configuración del kernel. Podremos seleccionar las
opciones que necesitemos. Yo las más características que he elegido para mi
máquina son:

Console Drivers -> Frame-buffer Support -> SBUS -> CGsix
Linux/SPARC audio subsystem -> CS4231 Lowlevel Driver
Network device support -> Sun LANCE support

ATENCION: NO actives la opción

Kernel Hacking -> Check for stack overflows


porque si no el kernel no compilará, te dará errores de simbolos "_mcount"
sin resolver.

Una vez terminado de configurar el kernel, lo compilamos con los siguientes
comandos:

# sparc32 make ARCH=sparc64 dep
# sparc32 make ARCH=sparc64 clean
# sparc32 make ARCH=sparc64 vmlinux
# sparc32 make ARCH=sparc64 modules
# sparc32 make ARCH=sparc64 modules_install

Fijate que aqui no hay "zImage", "bzImage", ni nada de eso. El kernel se
llama "vmlinux".

Cuando termine de compilar, copiamos el System.map y el vmlinux al directorio /boot, y configuramos el gestor de arranque SILO (en sparc no existe LILO).

sparky:/usr/src/linux# cat /etc/silo.conf
partition=1
root=/dev/sda1
timeout=100
default=ultimo

image=1/boot/vmlinuz-2.4.25-rc2
label=ultimo
read-only
sparky:/usr/src/linux# silo
/etc/silo.conf appears to be valid

Y ya está, con eso tenemos el kernel listo para arrancar.

El dia a dia



A partir de ahora, el uso del sistema es como cualquier otro con Debian, no
hay demasiadas diferencias :)

Hace realmente poco que tengo la Sun, así que todavía no le he podido sacar
todo el jugo, pero la cosa promete :)

Teneis la documentación completa de Debian para SPARC en:

http://www.debian.org/releases/stable/sparc/install.es.html

(c) 2003 Paco Brufal
  Last modified: Thu, 22 December 2016  Contenidos © ServiTux Servicios Informáticos