Lo primero que vamos a necesitar es disponer de qemu compilado para soportar SPARC. Esto se comentó y relató aquí: 56k.es/fanta/compilar-qemu-con-soporte-para-arquitectura-sparc-y-sparc64/
Una vez dispongamos de qemu vamos a proceder a descargar la versión de Solaris 2.6 para la arquitectura SPARC.
$ wget "http://fanta.56k.es/systems/solaris/2/Solaris_2.6_SPARC.iso"
$ qemu-img create -f qcow2 solaris2sparc.qcow2 9663676416
$ qemu-system-sparc -M SS-5 -m 256 -drive file=solaris2sparc.qcow2,bus=0,unit=0,media=disk -drive file=Solaris_2.6_SPARC.iso,bus=0,unit=2,media=cdrom,readonly=on
Si todo va bien veremos la pantalla en negro y al cabo de unos segundos (unos cuantos) pasará a amarilla:
Trasteando con OpenBIOS
Tenemos la pantalla amarilla. Vemos lo de «Welcome to OpenBIOS» y tenemos que teclear allí algo. Antes de nada simplemente comentar que OpenBIOS puede usarse directamente como boot ROM en QEMU cuando estemos emulando arquitecturas PPC, PPC64 y SPARC y SPARC64
OpenBIOS/SPARC32 permitirá bootear los siguientes sistemas y kernels:
* Linux * NetBSD * OpenBSD * Solaris
OpenBIOS/SPARC64 permitirá bootear los siguientes sistemas y kernels:
* Linux * NetBSD * OpenBSD * FreeBSD * HelenOS
Con lo cual Solaris en arquitectura SPARC (no en SPARC64) puede ser booteado con OpenBIOS.
Vamos a meter sobre la pantalla amarilla el siguiente comando y le damos enter:
boot cdrom:d -vs
Una vez termine de arrancar veremos que tenemos un prompt y que podemos escribir ya comandos :).
Es un init en modo single user.
Formateando el disco duro virtual
Metemos los siguientes comandos:
# drvconfig
# disks
# format
Nos irá pidiendo datos a la hora de dar formato:
Specify disk (enter its number): 0
Solaris no conoce muchos tipos de discos asique tenemos que indicarle los datos del nuestro (disco duro virtual con la etiqueta de producto QEMU y vendor QEMU).
Specify disk type (enter its number): 16
Vamos a especificar el 16 (other) y luego a rellenar los datos. No pongo ya captura de pantalla pero si los datos que podemos ir rellenando:
Enter number of data cylinders: 16381
Enter number of alternate cylinders: 2
Enter number of physical cylinders: 16383
Enter number of heads: 16
Enter physical number of heads: (pulsamos enter para valor por defecto)
Enter number of data sectors/track: 63
Enter number of physical sectors/track: (pulsamos enter para valor por defecto)
Enter rpm of drive: 3600
Y así un rato estaremos dando a Enter para que se configuren esos valores por defecto.
Llegará un punto en el que nos diga que metamos estos datos:
Enter disk type name (remember quotes): «qemu.9g»
La etiqueta (label) la asignamos ahora mismo escribiendo label:
Una vez escrito label escribiremos «y» y luego salimos con un quit.
Finalmente con «reboot» vamos a reiniciar para comenzar con la instalación.
Instalando Solaris 2.6
Esta vez desde OpenBIOS vamos a bootear desde cdrom así:
boot cdrom:d
Veremos algo así como esto y vamos a poder comenzar la instalación sobre raíles:
Ponemos de IP por ejemplo la 10.10.2.100
Luego en Servicio de Nombres le indicamos «Otro«. Y si nos pregunta si es parte de una sub-red indicamos que no.
Seguimos con la zona horaria. Europa –> Europa occidental.
Y luego puede que tarde en saltar la nueva ventana. Pero tendría que saltar para continuar instalando.
Yo he optado por «Entire Distribution» para que instale todo.
Luego pues indicas el directorio y empiezas a instalar.
Puede tardar la cosa un buen rato. Te da tiempo a ir a tender una lavadora y tomar un zumo de zanahoria.
Si hemos indicado que reinicie automáticamente así lo realizará. Si hemos indicado manual tendremos que hacer un reboot para reiniciar.
Una vez reiniciado arrancará y veremos algo así como esto:
Una vez arrancado vamos a tener que cambiar algunos detalles.
Algunos detalles post instalación
Añadimos al final del archivo /etc/system la siguiente línea:
set scsi_options=0x58
Se puede hacer con vi.
Creamos y añadimos la siguiente línea en el archivo /etc/defaultrouter
10.0.2.2
Configuramos dns qemu:
# sed 's/hosts:.*files/hosts: files dns/g' nsswitch.conf > nsswitch.conf.new
# mv nsswitch.conf nsswitch.conf.old && mv nsswitch.conf.new nsswitch.conf
# chmod 644 nsswitch.conf
# cat > resolv.conf
nameserver 10.0.2.3
^D
Y pegamos un reboot.
Y con eso ya estaría el tinglado montado.
Ahora ya puedes arrancar simplemente así:
$ qemu-system-sparc -M SS-5 -m 256 -drive file=solaris2sparc.qcow2,bus=0,unit=0,media=disk
Y disfrutar de algo así como lo que se ve en esta captura pero mediante qemu sin tener ese hardware:
Saludos cordiales.