Siguiente Arriba Anterior Contenido Indice

E.6 Interfaz de usuario de MILO

Interfaz de usuario de MILO

Una vez que has instalado/cargado/ejecutado correctamente el MILO podras ver el prompt MILO (de MIniLoader) presentado en tu pantalla. Hay un interfaz muy simple que debes usar para arrancar una imagen concreta del kernel de Linux. Teclear "help" es una buena idea dado que proporciona un sumario muy util de los comando.

E.6.1 El comando ''help''

El comando ''help''

Probablemente el comando más util que tiene MILO:


MILO> help
MILO command summary:

ls [-t fs] [dev:[dir]] 
                 - List files in directory on device
boot [-t fs] [dev:file] [boot string] 
                 - Boot Linux from the specified device and file
run [-t fs] dev:file 
                 - Run the standalone program dev:file
show             - Display all known devices and file systems
set VAR VALUE    - Set the variable VAR to the specified VALUE
unset VAR        - Delete the specified variable
reset            - Delete all variables
print            - Display current variable settings
help [var]       - Print this help text

Devices are specified as: fd0, hda1, hda2, sda1...
Use the '-t filesystem-name' option if you want to use
  anything but the default filesystem  ('ext2').
Use the 'show' command to show known devices and filesystems.
Type 'help var' for a list of variables.

Notese que el comando bootopt solo aparece en sistemas AlphaPC64(y similares). Acudir a la documenteción de la placa para encontrar exactamente que significa.

Dispositivos. Hasta que no uses un comando que necesite hacer uso de un dispositivo, no tendra lugar ninguna inicialización de dispositivo. El primer comando show, ls, boot o run origina que los dispositivos incluidos en MILO sean inicializados. Los dispositivos se denominan de la misma forma (exactamente) que el mismo Linux los denominaria. Así, el primer disco IDE sera denominada 'hda' y su primera partición sera 'hda1'. Usa el comando show para mostrar que dispositivos estan disponibles.

Sistemas de ficheros. MILO soporta tres sistemas de fichero, MSDOS, EXT2 e ISO9660. So long as un dispositivo esta disponible para ello, MILO puede listararrancar o ejecutar una imagen almancenada en uno des estos sistema de ficheros. El sistemad de ficheros de MILO por defecto es EXT2 y por eso tienes que indicarle al MILO que el sistema de ficheros es alg&uactuen otro que ese. Todos los comandos que usan nombre de ficheros te permiten pasarle el sistema de ficheros usando la opcion -t [filesystem]. Asi, si quieres listar el contenido de un CD ROM SCSI, debes teclear lo siguiente:

     MILO> ls -t iso9660 scd0:

Variables. MILO contiene algunas variables configurables que facilita el proceso de arranque. Si estas cargando a traves del firmware ARC de Windows NT, entonces MILO hace uso de las opciones de arranque de las variables de entorno configuradas por este firmware. Para algunos sistemas, MILO (por ejemplo, el AlphaPC64) mantiene su propio conjunto de variables de entorno, que no cambia de arranque en arranque. Estas variables son:


MILO> help var
Variables that MILO cares about:
MEMORY_SIZE  - System memory size in megabytes
BOOT_DEV     - Specifies the default boot device
BOOT_FILE    - Specifies the default boot file
BOOT_STRING  - Specifies the boot string to pass to the kernel
SCSIn_HOSTID - Specifies the host id of the n-th SCSI controller.
PCI_LATENCY  - Specifies the PCI master device latency
AUTOBOOT     - If set, MILO attempts to boot on powerup
               and enters command loop only on failure.
AUTOBOOT_TIMEOUT - Seconds to wait before auto-booting on powerup.

Cuidado con configurar AUTOBOOT sin configurar el temporizador, puedes acabar arrancando automaticamente tras un temporizador de 0 segundos, lo cual puede no ser lo que deseas.

PCI_LATENCY es el número de ciclos de bus PCI que el dispositivo mastering del bus PCI pone en el bus PCI una vez que tiene control. El valor por defecto es 32 y el valor máximo es 255. Configurar un valo alto implica que cada vez que un dispositivo toma el control del bus PCI puede transferir más datos. Sin embargo, configurarlo alto también implica que los dispositivos tienen que esperar mas para tener el control.

E.6.2 Arrancando Linux

Arrancando Linux

El comando boot arranca un kernel de linux desde un dispositivo. Necesitaras tener una imagen de un kernel de linux en un disco formateado como EXT2 (SCSI, IDE o disquette) o un CD formateado como ISO9660 disponible para MILO. La imagen puede estar comprimida con gzip y en este caso MILO podra automaticamente descomprimirla. En las primeras versiones de MILO reconocia un fichero comprimido por las extension .gz pero en las versiones posteriores de MILO buscan n&uactuemeros m&aactuegicos en la imagen.

Debes notar que la versión de MILO no tiene por que coincidir con la versión del kernel de Linux que estas cargando. Arrancas Linux usando la siguiente sintaxis de comando:

     MILO> boot [-t file-system] device-name:file-name \
                       [[boot-option] [boot-option] ...]

Donde device-name es el nombre del dispositivo que deseas usar y file-name es el nombre del fichero que contiene el kernel de Linux. Todos los argumentos introducidos tras el nombre de fichero son pasados directamente al kernel de Linux.

Si estas instalando Red Hat, entonces necesitaras especificar un dispositivo raiz. Asi deberas usar:

     MILO> boot fd0:vmlinux.gz root=/dev/fd0 load_ramdisk=1

MILO contendra automaticamente los dispositivos de bloque que tu configuras en tu vmlinux. He comprobado el driver de la disquettera, el driver IDE y unos cuantos drivers SCSI (por ejemplo, el NCR 810), y estos funcionan bien. También, es importante configurar el host id de la controladora SCSI a un valor razonable. Por defecto, MILO lo inicializara al mayor valor posible (7) el cual normalmente debe funcionar bien. Sin embargo, si lo deseas, puedes configurar explicitamente el host id de la enesima controladora SCSI en el sistema configurando la variable de entorno SCSIn_HOSTID al valor apropiado. Por ejemplo, para configurar el hostid de la primera controladora SCSI a 7, puedes enviar el siguiente comando al prompt de MILO:

     setenv SCSI0_HOSTID 7

E.6.3 Rearrancando Linux

Rearrancando Linux

Puedes querer rearrancar un sistema corriendo Linux usando el comando shutdown -r now. En este caso, el kernel de Linux devuelve el control al MILO (a traves del punto de entrada HALT CallPAL). MILO deja una copia comprimida de si mismo en memoria precisamente por esta razon, y detecta que el sistema esta siendo rearrancado de la informacion contenida en el HWRPB (Hardware Restart Parameter Block). En este caso comienza a rearrancar usando exactamente el mismo comando que se uso para arrancar el kernel de Linux la ultima vez. Hay un temporizador de 30 segundos permite interrumpir este proceso y arrancar el kernel que desees en la forma que quieras.

E.6.4 El comando ''bootopt''

The comando ''bootopt''

Para sistemas basados en flash tales como el AlphaPC64, EB164 y el EB66+, hay algunas opciones de arranque posibles y se cambian usando el comando bootopt. Este tiene un argumento, un n%uacutemero decimal el cual es el tipo de imagen a ser arrancada la proxima vez que el sistema sea encendido de nuevo o reseteado:

0 Arranca el Monitor de debug de la placa de evaluacion,

1 Arranca el firmware de Windows NT ARC.

Para indicarle al codigo de arranque que arranque el firmware de MILO de la flash necesitas una opcion de arranque que indique arrancar la enesima imagen. Para esto, necesitas sumar 128 a N, asi si MILO es la tercera imagen, debes usar el comando:

     MILO> bootopt 131

Nota: Se muy cuidadoso con este comando. Una buena regla es no configurar nunca bootopt a 0 (el monitor de debug de la placa de evaluación), pero en cambio usa los jumper del sistema para obtener lo mismo.


Siguiente Arriba Anterior Contenido Indice