+ All Categories
Home > Documents > Arranque y Parada

Arranque y Parada

Date post: 25-Oct-2015
Category:
Upload: pierre1981
View: 19 times
Download: 1 times
Share this document with a friend
Popular Tags:
25
USE IMPROVE EVANGELIZE Arranque y parada. David Galán Ortiz. www.opensolarisblog.org [email protected] <OrangeBooks> < Spain OpenSolaris Users Groups >
Transcript
Page 1: Arranque y Parada

USE IMPROVE EVANGELIZE

Arranque y parada.David Galán [email protected]

<OrangeBooks>

< Spain OpenSolaris Users Groups >

Page 2: Arranque y Parada

Spain OpenSolaris Users Group

LENCIA......................................................................................................................3

REFERENCIAS .............................................................................................................3

ARRANQUE Y PARADA DE SOLARIS 10...........................................................4

INTRODUCCIÓN............................................................................................................4 PROCESO DE ARRANQUE SPARC..................................................................................4 PROCESO DE ARRANQUE X86.........................................................................................5 PARADA Y REINICIO DEL SISTEMA..................................................................................8

Reinicio de la máquina:....................................................................................9 Parada de la máquina:....................................................................................10

¿QUÉ ES LA OPENBOOT ?..........................................................................................11 Acceder a la OpenBoot....................................................................................11 Información sobre la máquina.........................................................................11 Información sobre dispositivos instalados.......................................................12 Arrancar Solaris desde la OBP.......................................................................14 Variables de entorno........................................................................................15 Cambiar variables de entorno.........................................................................16 Reestablecer el valor de las variables de entorno...........................................17 El comando reset..............................................................................................17 Cambiar el dispositivo de arranque ...............................................................17 Creación de alias.............................................................................................18 Comandos OBP de Diagnostico:.....................................................................20 Comandos OBP para obterner información:..................................................20 Comandos OBP para el arranque y parada:...................................................21

GESTOR DE ARRANQUE GRUB (GRAND UNIFIED BOOTLOADER).....................................21 Introducción a GRUB......................................................................................21 Arranque en modo Solaris failsafe..................................................................23 Opciones de arranque......................................................................................24 Cambiar el kernel a 32-bit...............................................................................25

2

Page 3: Arranque y Parada

Spain OpenSolaris Users Group

Lencia

Esta obra está bajo una licencia Reconocimiento-NoComercial-SinO-braDerivada-2.5 España de Creative Commons. Para ver una copia de esta licencia, visite http://creativecommons.org/licenses/by-nc-nd/2.5/es o envíe una carta a Cre-ative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.Usted es libre de:

- Copiar, distribuir y comunicar públicamente la obra.

Bajo las condiciones siguientes:

- Reconocimiento. Debe reconocer los créditos de la obra de la manera es-pecificada por el autor o el licenciador.

- No comercial. No puede utilizar esta obra para fines comerciales.

- Compartir bajo la misma licencia. Si altera o transforma esta obra, o gen-era una obra derivada, sólo puede distribuir la obra generada bajo una licen-cia idéntica a ésta.

- Al reutilizar o distribuir la obra, tiene que dejar bien claro los términos de la licencia de esta obra.

Alguna de estas condiciones puede no aplicarse si se obtiene el permiso del titular de los derechos de autor.

Referencias

Todos los nombres propios de programas, sistemas operativos, equipos hardware, etc., que aparecen en este libro son marcas registradas de sus respectivas compañías u organizaciones.

3

Page 4: Arranque y Parada

Spain OpenSolaris Users Group

Arranque y Parada de Solaris 10

Introducción

En este capitulo veremos el proceso arranque y parada de Solaris 10, los comandos necesarios para reiniciar y parar el sistema. También veremos la OpenBoot para la arquitecuta SPARC y GRUB para la arquitectura x86.

Proceso de arranque SPARC

Siguiendo el grafico de la figura 4.1 el proceso de arranque en una máquina SPARC sigue los siguientes pasos:

4

Page 5: Arranque y Parada

Spain OpenSolaris Users Group

1. Cuando pulsamos el botón de encendido de la maquina se inicia la PROM y esta ejecuta un POST que realiza un chequeo al hardware y la memoria del sistema. La PROM muestra en pantalla información sobre el modelo de máquina , versión de PROM, número de serie de la PROM y host ID. Una vez finalizado el chequeo boot identifica el dispositivo de arranque y carga bootblk situado en dicho dispositivo.

2. bootblk tiene ahora la función de cargar el programa secundario de arranque llamado ufsboot que se encuentra en el sistema de ficheros ufs del dispositivo de arranque.

3. Una vez cargado ufsboot en memoria este tiene la misión de cargar el kernel en 32 o 64 bits.

4. El kernel comienza a cargar los módulos y se apoya en ufsboot para poder tener acceso a los ficheros. Cuando ha cargado los módulos necesarios para poder montar el sistema de ficheros root “/” descarga de memoria ufsboot. El kernel lee el fichero /etc/system que contiene parámetros de configuración que afectan directamente al comportamiento del sistema y son modificables. Una vez leído los parámetros de configuración arranca el proceso /sbin/init.

5. El proceso init comienza la carga de los procesos que están declarados en el fichero /etc/inittab. En versiones anteriores a Solaris 10 se iniciaba la carga de los Runlevel. A partir de Solaris 10 se inicia el proceso /lib/svc/bin/svc.startd que ejecuta el proceso de arranque basado en SMF y que por compatibilidad ejecutará o parará las aplicaciones incluidas en los directorios rc*d.

Proceso de arranque x86

En la arquitectura x86 como novedad se ha incorporado el gestor de arranque GRUB. Siguiendo el grafico de la figura 4.2 el proceso de arranque en una máquina con arquitectura x86 sigue los siguientes pasos:

1. Se inicia la BIOS y realiza un chequeo hardware.

5

Page 6: Arranque y Parada

Spain OpenSolaris Users Group

2. La BIOS pasa el control al MBR que contiene la carga de la primera fase de GRUB que tan solo ocupa 512 bytes. GRUB llama a las siguientes fases hasta mostrar el menú de GRUB donde podemos elegir el kernel para Solaris 10.

3. Elegimos el kernel y GRUB lo carga en memoria pasándole el control.

4. El kernel comienza a cargar los módulos y se apoya en ufsboot para poder tener acceso a los ficheros. Cuando ha cargado los módulos necesarios para poder montar el sistema de ficheros root “/” descarga de memoria ufsboot. El kernel lee el fichero /etc/system que contiene parámetros de configuración que afectan directamente al comportamiento del sistema y son modificables. Una vez leído los parámetros de configuración arranca el proceso /sbin/init.

5. El proceso init comienza la carga de los procesos indicados en el fichero /etc/inittab. En versiones anteriores a Solaris 10 se iniciaba la carga de los Runlevel. A partir de Solaris 10 se inicia el proceso /lib/svc/bin/svc.startd que ejecuta el proceso de arranque basado en SMF y que por compatibilidad ejecutara o parara las aplicaciones incluidas en los directorios rc*d.

6

Page 7: Arranque y Parada

Spain OpenSolaris Users Group

Figura 4.1

7

BIOS

Al encender la m quina ヌ x86 la BIOS realiza un primer chequeo al hardware..

GRUB

Se inicia el primer sector del disco de arranque que contiene elel master boot record y carga GRUB que solo ocupa 512 bytes estando el resto en cualquier ubucacin ラ del disco.GRUB muestra el menu de inicio donde seleccionamos el kernlel y grub le pasa el control

KERNEL

El kernel arranca y carga comienza a cargar losmodulos basandose en el secondary boot program (ufsboot) para leer los ficheros.Cuando el kernel tiene cargados todos los modulosnecesarios monta la raiz / y deja de utilizar el ufsboot

Lee el fichero /etc/systems e inicia el proceso /sbin/init y este los procesos indicados en /etc/inittab

SMF Y RC (RUN CONTROL)

El fichero /etc/inittab arranca /lib/svc/bin/svc.startd el nuevo sistema de arranque SMF que sustituye al viejo sistema de niveles de arranque de System V, aunque por compatibilidad scv.stard tambien ejecuta los scripts de inicio rc (run control).

Page 8: Arranque y Parada

Spain OpenSolaris Users Group

Figura 4.2

Parada y reinicio del sistema

8

Boot PROM

Muestra informaci n sobre el sistema y realizaラun autodiagnostico del hardware y memoria.Carga el programa primario de arranque bootblk

UFSBOOT

UFSBOOT carga el kernel en 32 o 64 bits

BOOTBLK

bootblk busca y ejecuta el programa secundario dearranque ufsboot que se encuentra en el sistema de ficheros UFS del dispositivo de arranque.

SMF Y RC (RUN CONTROL)

El fichero /etc/inittab arranca /lib/svc/bin/svc.startd el nuevo sistema de arranque SMF que sustituye al viejo sistema de niveles de arranque de System V, aunque por compatibilidad scv.stard tambien ejecuta los scripts de inicio rc (run control).

KERNEL

El kernel arranca y carga comienza a cargar losmodulos basandose en el secondary boot program (ufsboot) para leer los ficheros.Cuando el kernel tiene cargados todos los modulosnecesarios monta la raiz / y deja de utilizar el ufsboot

Lee el fichero /etc/systems e inicia el proceso /sbin/init y este los procesos indicados en /etc/inittab

Page 9: Arranque y Parada

Spain OpenSolaris Users Group

Cuando finaliza el arranque de la máquina se encuentra en el nivel de ejecución multi-user-server o run level 3. En ocasiones hay que reiniciar el sistema para realizar tareas de mantenimiento como añadir hardware. A continuación veremos las diferentes formas de reiniciar y parar el sistema.

Reinicio de la máquina:

Si deseamos realizar un reinicio del sistema y queremos emitir un mensaje personalizado avisando a los usuarios usaremos el comando shutdown que permite los siguientes parámetros:

shotdown –i niveldeejecución –g segundosdeespera “mensaje de aviso”

Ejemplo del uso de shotdown para reiniciar:

#/usr/sbin/shutdown -i 6 –g 360 “Aviso a los usuarios. El sistema se reiniciará en 60segundos. Cierre sus aplicaciones.”

Con –i indicamos el nivel de ejecución, con –g damos 360 segundos a los usuarios para cerrar sus aplicaciones y ficheros. Cuando finalicen los 360 segundos el sistema solicita la confirmación del reinicio al administrador:

# Do you want to continue? (y or n):

Para reiniciar el sistema también podemos ejecutar la orden reboot:

# /usr/sbin/reboot

El comando reboot ejecuta una parada inmediata e inicia el sistema en el nivel 3 de ejecución ahora llamado multi-user-server.

Parada de la máquina:

9

Page 10: Arranque y Parada

Spain OpenSolaris Users Group

Para parar el sistema de forma ordenada y después realizar un apagado eléctrico de la máquina ejecutamos:

#/usr/sbin/shutdown -i 0 –g 360 “Aviso a los usuarios. El sistema se reiniciará en 60segundos. Cierre sus aplicaciones.”

Si la ejecutamos el comando en una máquina SPARC se quedara en la OpenBoot momento en el que podemos realizar el apagado eléctrico ejecutando desde la OpenBoot el comando:

ok power-off

Si es una máquina x86 mostrara el siguiente mensaje:

Svcd.startd: The system is down.Syncing file systems…donePres any key to reboot.

Podemos pulsar cualquier tecla y reiniciar o realizar directamente el apagado eléctrico de la máquina.

Si necesitáramos parar la máquina de forma urgente podemos utilizar el comando halt que realizara una parada inmediata no ordenada:

# /usr/sbin/halt

Para una parada urgente no ordenada pero con parada eléctrica:

# /usr/sbin/poweroff

Para reiniciar el sistema podemos ejecutar la orden reboot que antes proceder al reinicio actualiza el superbloque:

# /usr/sbin/reboot

10

Page 11: Arranque y Parada

Spain OpenSolaris Users Group

¿Qué es la OpenBoot ?

Es una interfaz software que nos permite interactuar a nivel hardware con un sistema basado en arquitectura SPARC. Puede compararse a la BIOS de un PC pero con muchas mas posibilidades. Se utiliza por línea de comandos y sus principales características son:

Realizar un chequeo del hardware

Ayudar al diagnostico de problemas

Establecer el dispositivo de arranque

Arrancar el sistema operativo

Acceder a la OpenBoot

Podemos acceder a la OBP de las siguientes formas:

Realizar una parada completa del sistema con los comandos shutdown, halt o init 0.

Si estamos físicamente en la máquina con un teclado de Sun Microsystems combinando la pulsación de las teclas:stop+a. Para salir tecleamos el comando go .

Conectándonos por consola en puerto serie.

Información sobre la máquina

Dentro de la OBP podemos obtener información sobre la maquina y los dispositivos conectados. El comando mas sencillo es banner que nos mostrara información como el modelo de maquina, memoria, numero de serie etc.. Ejecutamos el comando banner y obtenemos lo siguiente:

11

Page 12: Arranque y Parada

Spain OpenSolaris Users Group

ok bannerSun Ultra 1 UPA/SBus (UltraSPARC 167MHz), No KeyboardOpenBoot 3.25, 512 MB memory installed, Serial #1111111.Ethernet address 1:1:11:22:22:55, Host ID: 404444d6.

Para averiguar que versión de OBP esta ejecutando el sistema lanzamos el comando .version.

Información sobre dispositivos instalados

Para obtener información sobre la velocidad de la CPU y buses ejecutamos .speed:

ok .speed{0} ok .speedCPU Speed : 296.00 MHzUPA Speed : 098.66 MHzSBus Speed : 025.00 MHz

Con el comando show-dev obtenemos una lista con todos los dispositivos del sistema:

ok show-devs

/SUNW,UltraSPARC-IIi@0,0 /pci@1f,0 /virtual-memory /memory@0,10000000 /aliases /options /openprom /chosen /packages /pci@1f,0/pci@1 /pci@1f,0/pci@1,1 /pci@1f,0/pci@1/pci@2 /pci@1f,0/pci@1/IntraServer,Ultra2-scsi@1 /pci@1f,0/pci@1/pci@2/IntraServer,fc@4 /pci@1f,0/pci@1/pci@2/IntraServer,fc@4/disk /pci@1f,0/pci@1/pci@2/IntraServer,fc@4/tape /pci@1f,0/pci@1/LSILogic,scsi@1/tape

12

Page 13: Arranque y Parada

Spain OpenSolaris Users Group

/pci@1f,0/pci@1/LSILogic,scsi@1/disk

Podemos obtener información de los dispositivos SCSI conectados al sistema internamente ejecutando el comando probe-scsi.

Para muestre todos los dispositivos internos y externos usamos el comando probe-scsi-all. El siguiente ejemplo muestra la salida de la ejecución del comando proble-scsi-all:

ok probe-scsi-all

/pci@1f,0/pci@1/IntraServer,Ultra2-scsi@1 Target 0 Unit 0 Disk IBM DNES-506170W SA90

/pci@1f,0/pci@1/pci@2/IntraServer,fc@7

MPT Firmware Version 1.00

Target 0 Unit 0 Disk SEAGATE ST39173FC 6615 WWN 1100002022111063 ID 111d2

Target 1 Unit 0 Disk SEAGATE ST39173FC 6258 WWN 2200112342111c09b ID 111d6

Target 2 Unit 0 Disk SEAGATE ST39173FC 6258 WWN 89066660002022111 ID 111d5

Para maquinas con dispositivos sobre bus IDE esta disponible el comando probe-ide:

ok probe-ide Device 0 ( Primary Master ) ATA Model: ST720410A Device 1 ( Primary Slave ) ATA Model: SAMSUNG A454674

13

Page 14: Arranque y Parada

Spain OpenSolaris Users Group

Arrancar Solaris desde la OBP

El comando boot nos permite arrancar Solaris desde la OBP de diferentes formas. Los parámetros del comando boot son:

boot [nombre del dispositivo] –[opciones]

El nombre de dispositivo hace referencia al dispositivo de arranque; podemos dejar este parámetro en blanco para que arranque desde el dispositivo predeterminado. Las opciones para el comando boot son:

-s Arranca en modo mono usuario single-user. Este modo no permite la entrada de ningún usuario al sistema.

-a Arranque interactivo. El arranque interactivo nos permite indicar al sistema que utilice otro path para localizar el kernel, módulos y el fichero de configuración /etc/systems . También podemos indicarle la utilización de otro sistema de ficheros. Es de gran utilidad si deseamos probar el comportamiento del sistema con un kernel distinto.

-r Realiza un arranque con reconfiguración para detectar nuevos dispositivos conectados a la máquina. Si detecta nuevos dispositivos creara una nueva entrada para cada uno de ellos en /devices y /dev y actualiza el fichero /etc/path_to_inst.

-V Arranque el sistema mostrando información detallada sobre el arranque y errores que se puedan producir. Esta opción esta indicada para detectar problemas.

Ejemplos de ejecución del comando boot:

Arrancar en modo mono usuario y con detalles sobre el arranque:

ok boot –sV

14

Page 15: Arranque y Parada

Spain OpenSolaris Users Group

Arrancar para detectar nuevo hardware y con detalles sobre el proceso:

ok boot -rV

Variables de entorno

El comando printenv nos permite obtener una lista de las variables contenidas en la NVRAM con el valor establecido y su valor por defecto.

Ejemplo de la ejecución:

ok printenv

Variable Name Value Default Value tpe-link-test? true true scsi-initiator-id 7 7 keyboard-click? false false ttyb-rts-dtr-off false false ttyb-ignore-cd true true ttya-rts-dtr-off false false ttya-ignore-cd true true ttyb-mode 9600,8,n,1,- 9600,8,n,1,- ttya-mode 9600,8,n,1,- 9600,8,n,1,- pcia-probe-list 1,2,3,4 1,2,3,4 pcib-probe-list 1,2,3 1,2,3 diag-level max max output-device screen screen input-device keyboard keyboard boot-command boot boot ……….

Todas las variables que finalizan con ? solo pueden tener dos valores

true o false.

15

Page 16: Arranque y Parada

Spain OpenSolaris Users Group

Cambiar variables de entorno

Hay muchas variables en la OBP vamos a resumir las mas importantes en la siguiente tabla:

Variable de entorno Función

security-mode Establece el nivel de seguridad de la OBP.

auto-boot? Solo puede tener dos valores true o false. Con valor true el sistema arrancara automáticamente después de realizar un power-on o un reset.

boot-device Contiene el dispositivo de arranque por defecto. Podemos establecer varios dispositivos de arranque dejando un espacio en blanco entre los dispositivos al definir el valor con el comando setenv.

ttya-mode

valor por defecto: s 9600,8,n,1,-,

Establece la tasa de baudios utilizada por la consola por el puerto serie.

Para cambiar el valor de una variable de entorno utilizamos el comando setenv de la siguiente forma:

setenv [nombre de la variable] [nuevo valor]

El siguiente ejemplo muestra como cambiar el valor de auto-boot a true:

ok setenv auto-boot? trueauto-boot? = traeok resetResetting….

16

Page 17: Arranque y Parada

Spain OpenSolaris Users Group

Reestablecer el valor de las variables de entorno

Si queremos volver a establecer el valor por defecto a una variable de entorno recurriremos a los comandos set-defaults y set-default. El primero devuelve el valor por defecto a todas las variables de la OBP y el segundo permite hacerlo de manera individual para una sola variable.

Ejemplo para dejar todas las variables a su valor original:

ok set-defaults Setting NVRAM parameters to default values. ok

Devolver el valor por defecto a una sola variable:

ok set-default auto-boot

El comando reset

El comando reset tiene la función del limpiar todos los buffers y registra los cambios. Al ejecutar el comando reset si la variable auto-boot tiene valor true reinicia el sistema si por el contrario esta a false nos devolverá nuevamente al prompt.

Cambiar el dispositivo de arranque

El sistema tiene establecido en la variable boot-device el dispositivo por defecto de aranque que puede ser un CDROM, un disco, una unidad de cinta etc.. Si queremos cambiar el dispositivo de arranque por defecto usaremos el comando setenv de la siguiente forma:

ok setenv boot-device [aliasdeldispositivo]

17

Page 18: Arranque y Parada

Spain OpenSolaris Users Group

El alias esta establecido por defecto aunque podemos modificarlo o añadir nuevos alias para nuevos dispositivos. Por defecto tenemos los siguientes alias:

disk: arranca desde disco

cdrom: arranca desde un CD o DVD

net: arranca desde red

floppy: arranca desde disquete

tape: arranca desde una unidad de cinta

El siguiente ejemplo muestra como cambiar el dispositivo de arranque por defecto a CD-ROM:

ok setenv boot-device cdrom

El cambio de la variable boot-device es permanente por lo que si deseamos arrancar esporádicamente desde CD-ROM o cualquier otro dispositivo podemos ejecutar el comando boot seguido del alias del dispositivo. Para arranque desde CD-ROM seria:

ok boot cdrom

Creación de alias

En Solaris los nombres de dispositivos físicos son algo complejos como /pci@1f,0/pci@1,1/ide@3/cdrom@2,0:f que hace referencia a al CD-ROM. La estructura para hacer referencia a un dispositivo físico es: controlador@dirección:argumentos.

Tener que recordar esos nombres seria tedioso para ello utilizamos los alias. El comando que nos permite la creación de alias es nvalias de la siguiente forma:

18

Page 19: Arranque y Parada

Spain OpenSolaris Users Group

devalias [nombre nuevo alias] [dispositivo físico]

El siguiente ejemplo muestra la creación de un nuevo alias para un nuevo CD-ROM:

ok devalias cdrom1 /pci@1f,0/pci@1,1/ide@3/cdrom@1,0:f

Si ponemos el nombre de un alias ya existente lo modificamos con el nuevo valor.

Imagina que no creamos el alias cada vez que quieras arrancar desde el nuevo CD-ROM ejecutarías:

ok boot /pci@1f,0/pci@1,1/ide@3/cdrom@1,0:f

Con el alias en mucho mas sencillo:

ok boot cdrom1

Para ver todos los alias existentes ejecutamos la orden devalias:

ok devaliasscreen /pci@1f,0/pci@1,1/SUNW,m64B@2 net /pci@1f,0/pci@1,1/network@1,1 cdrom /pci@1f,0/pci@1,1/ide@3/cdrom@2,0:f disk /pci@1f,0/pci@1,1/ide@3/disk@0,0 disk3 /pci@1f,0/pci@1,1/ide@3/disk@3,0 disk2 /pci@1f,0/pci@1,1/ide@3/disk@2,0 disk1 /pci@1f,0/pci@1,1/ide@3/disk@1,0 disk0 /pci@1f,0/pci@1,1/ide@3/disk@0,0 ide /pci@1f,0/pci@1,1/ide@3 floppy /pci@1f,0/pci@1,1/ebus@1/fdthree ttyb /pci@1f,0/pci@1,1/ebus@1/se:b ttya /pci@1f,0/pci@1,1/ebus@1/se:a keyboard! /pci@1f,0/pci@1,1/ebus@1/su@14,3083f8:forcemode keyboard /pci@1f,0/pci@1,1/ebus@1/su@14,3083f8 mouse /pci@1f,0/pci@1,1/ebus@1/su@14,3062f8 name aliases

19

Page 20: Arranque y Parada

Spain OpenSolaris Users Group

Para quitar un alias ya creado recurrimos al comando nvunalias:

ok nvunalias cdrom1

Comandos OBP de Diagnostico:

Comando Función

probe-scsi Comprueba y muestra los dispositivos SCSI internos.

probe-scsi Comprueba y muestra los dispositivos SCSI internos y externos.

probe-ide Comprueba los dispositivos con bus IDE.

wath-clock Verifica el reloj interno.

watch-net Verifica el tráfico de red

show-post-results Cheque el hardware

Comandos OBP para obterner información:

Comando Función

banner Muestra información sobre el firmware y la máquina.

.version Versión de la OBP.

show-dev Lista todos los dispositivos del sistema.

show-disk Lista todos los discos del sistema.

.enet-addr Obtenemos la dirección MAC del sistema.

devalias Muestra todos los alias creados.

.speed Obtenemos información sobre la velocidad de las CPU y buses.

20

Page 21: Arranque y Parada

Spain OpenSolaris Users Group

Comandos OBP para el arranque y parada:

Comando Función

boot Arranca el sistema.

boot –r Arranca el sistema para detectar nuevo hardware creando las entradas en /devices y /dev.

boot –a Arranque interactivo.

boot –V Arranque con información ampliada sobre las tareas que va realizando durante el proceso de arranque.

boot cdrom Arranca desde el CDROM.

boot disk Arranca desde disco.

boot floppy Arranca desde disquete.

power-off Apagado electrónica de la máquina.

Gestor de arranque GRUB (Grand Unified Bootloader)

Introducción a GRUB

GRUB es el nuevo gestor de arranque para arquitecturas x86 que añade nuevas posibilidades de arranque a Solaris 10. GRUB se inicia en el MBR ocupando tan solo 512 bytes y este pequeño código comienza la carga del resto de GRUB ubicado en el disco.

No podemos comparar GRUB con la OpenBoot para arquitecturas SPARC ya que la OBP se basa en hardware y software, pero sin duda viene a mejorar las posibilidades de Solaris y su integración con otros sistemas operativos como Linux. GRUB es un gran conocido dentro de la comunidad Linux por lo que facilita aun mas el acercamiento de administradores Linux a Solaris. GRUB nos ofrece tres interfaces diferentes para el uso y configuración de GRUB:

21

Page 22: Arranque y Parada

Spain OpenSolaris Users Group

Interfaz de menú: es la primera que vemos cuando arranca GRUB y muestra una lista con todas las opciones disponibles para elegir con que sistema queremos arrancar. (ver figura 4.4)

Interfaz de edición: Permite la edición de las opciones de arranque establecidas para cada sistema operativo configurado. Un ejemplo es cambiar de forma temporal el kernel para realizar pruebas. (ver figura 4.3)

Interfaz de línea de comandos: es una pequeña shell que permite configurar GRUB, realizare pruebas de dispositivos, red etc..

eprom: Solaris se integra con GRUB con el comando eprom al igual que lo hace con la OpenBoot en SPARC.

Figura 4.3 GRUB en modo edición

22

Page 23: Arranque y Parada

Spain OpenSolaris Users Group

Arranque en modo Solaris failsafe

Una de las opciones de arranque que podemos ver en el menú GRUB es Solaris failsafe. Esta opción permite arrancar una imagen de Solaris con las opciones mínimas para ayudarnos a reparar el sistema en caso necesario. La imagen se encentra en /boot/x86.miniroot-safe.

Cuando finaliza el arranque en modo failsafe montara el disco raiz “/” en /a. Si entramos en /a veremos todo nuestro sistema para proceder al diagnostico del problema. Si el sistema no arranca por que hemos instalado un nuevo un paquete podemos proceder ha desinstalarlo con pkgrm –r y arrancar normalmente.

El fichero x86.miniroot-safe es una imagen mínima de Solaris para arrancar por lo tanto podemos utilizarla en una llave o disco USB. Aunque nuestra máquina no soporte arranque desde una llave o disco USB esto no es problema ya que GRUB si es capaz de reconocer dispositivos USB.

Opciones de arranque

Cuando arrancamos la máquina lo primero que nos muestra GRUB es la Interfaz de menú donde podemos elegir el sistema operativo. Esta interfaz se basa en un fichero de configuración que permite añadir nuevos sistemas o modificar los ya existentes. El fichero de configuración se encuentra en /boot/grub/menu.lst .

Cuando finalizamos la instalación de Solaris el archivo queda de la siguiente forma:

#---------- ADDED BY BOOTADM - DO NOT EDIT ----------title Solaris 10 11/06 s10x_u3wos_10 X86root (hd0,0,a)kernel /platform/i86pc/multibootmodule /platform/i86pc/boot_archive#---------------------END BOOTADM--------------------#---------- ADDED BY BOOTADM - DO NOT EDIT ----------title Solaris failsaferoot (hd0,0,a)kernel /boot/multiboot kernel/unix -smodule /boot/x86.miniroot-safe#---------------------END BOOTADM--------------------

23

Page 24: Arranque y Parada

Spain OpenSolaris Users Group

Podemos establecer el fichero /boot/grub/menu.lst los siguientes parámetros:

default: contiene un valor numérico que se corresponde con la posición en la lista que muestra GRUB para seleccionar una opción de arranque. Comienza con el valor 0, para arrancar por defecto con la opción failsafe estableceríamos el valor a 1.

timeout: son los segundos que esperara para que el usuario elegía una opción de arranque, si no interviene el usuario arrancara el sistema establecido por defecto con el valor default . Con valor -1 espera indefinidamente.

Para cambiar estos valores editamos el fichero menu.lst con cualquier editor de texto y cambiamos el valor en la línea donde aparece default o timeout:

## default menu entry to bootdefault 0## menu timeout in second before default OS is booted# set to -1 to wait for user inputtimeout 10

Cambiar el kernel a 32-bit

Vamos a realizar un cambio en la confirmación para arrancar con un kernel de 32-bit sobre una máquina que tiene un procesador de 64-bit.

Añadimos al fichero menú.lst al final de la ultima entrada de failsafe justo después de la línea que pone “END BOOTADM” una nueva entrada apuntando al kernel:

kernel /platform/i86pc/multiboot kernel/unix –v

24

Page 25: Arranque y Parada

Spain OpenSolaris Users Group

#---------- ADDED BY BOOTADM - DO NOT EDIT ----------title Solaris kernel 32-bit root (hd0,0,a) kernel /platform/i86pc/multiboot kernel/unix –v module /platform/i86pc/boot_archive#---------------------END BOOTADM--------------------

Grabamos los cambios y arrancamos la máquina donde veremos la nueva opción “Solaris kernel 32-bit” (ver figura 4.4) en el menú de grub.

Figura 4.4 GRUB Interfaz para la selección del sistema.

25


Recommended