Este capítulo describe el arranque basado en GRUB para sistemas x86 relacionados con la instalación de Solaris. Este capítulo incluye los siguientes apartados:
GRUB, el cargador de arranque de código abierto, se ha adoptado como cargado de arranque predeterminado en el SO Solaris.
El arranque basado en GRUB no está disponible para los sistemas SPARC.
El cargador de arranque es el primer programa de software que se ejecuta al encender un sistema. Al encender un sistema x86, el sistema básico de entrada/salida (BIOS, del inglés Basic Input/Output System) inicializa la CPU, la memoria y el hardware de la plataforma. Cuando termina la fase de inicialización, la BIOS carga el cargador de arranque desde el dispositivo de arranque configurado y, a continuación, transfiere el control del sistema al cargador de arranque.
GRUB es un cargador de arranque de código abierto con una interfaz de menú muy sencilla que incluye opciones de arranque predefinidas en un archivo de configuración. También es una interfaz de línea de comandos a la que se puede tener acceso desde la interfaz de menú para ejecutar distintos comandos de arranque. En el SO Solaris, la implementación de GRUB se ajusta a la especificación de arranque múltiple (Multiboot). Esta especificación se describe con todo detalle en http://www.gnu.org/software/grub/grub.html.
Como el núcleo de Solaris es totalmente compatible con la especificación de arranque múltiple (Multiboot), se puede utilizar GRUB para arrancar un sistema basado en x86 de Solaris. Mediante GRUB, el proceso de arranque resulta más sencillo y, además, permite la instalación de varios sistemas operativos. Por ejemplo, en un mismo sistema, se pueden arrancar individualmente los siguientes sistemas operativos:
Solaris OS
Microsoft Windows
GRUB detecta las particiones de Microsoft Windows, pero no comprueba si el sistema operativo puede arrancarse.
Una ventaja importante de GRUB es su tratamiento intuitivo de los sistemas de archivos y los formatos ejecutables del núcleo, lo que permite cargar un sistema operativo sin necesidad de registrar la ubicación física del núcleo en el disco. En un arranque basado en GRUB, el núcleo se carga especificando el nombre del archivo, la unidad y la partición en la que se encuentra el núcleo. El arranque basado en GRUB sustituye al Asistente de configuración de dispositivos de Solaris por un menú de GRUB.
Cuando GRUB asume el control del sistema, se muestra un menú en la consola. En el menú de GRUB, puede realizar las siguientes tareas:
Seleccionar una entrada para arrancar el sistema
Modificar una entrada de arranque mediante el menú de edición integrado de GRUB
Cargar manualmente un núcleo del SO desde la línea de comandos
Existe un tiempo de espera configurable para arrancar la entrada de SO predeterminada. Al pulsar cualquier tecla, se interrumpirá el proceso de arranque de la entrada de SO predeterminada.
Para ver un ejemplo de un menú de GRUB, consulte Descripción del menú principal de GRUB.
Las convenciones de nombres de dispositivos que utiliza GRUB ofrecen algunas diferencias con respecto a las versiones anteriores del SO Solaris. Conocer dichas convenciones puede resultar de gran ayuda para especificar correctamente la información de unidades y particiones al configurar GRUB en el sistema.
La tabla siguiente describe las convenciones de nombres de dispositivos en GRUB.
Tabla 4–1 Convenciones de nombres para dispositivos en GRUB
Device Name |
Descripción |
---|---|
(fd0), (fd1) |
Primer disquete, segundo disquete |
(nd) |
Dispositivo de red |
(hd0,0), (hd0,1) |
Primera y segunda particiónfdisk del primer disco bios |
(hd0,0,a), (hd0,0,b) |
Segmentos 0 y 1 de Solaris/BSD en la primera partición de fdisk del primer disco de bios |
Todos los nombres de dispositivos de GRUB deben ir entre paréntesis. Los números de las particiones se cuentan desde el 0 (cero), no desde el 1.
Para obtener más información acerca de las particiones fdisk, consulte Guidelines for Creating an fdisk Partition de System Administration Guide: Devices and File Systems.
Para obtener más información acerca de estos cambios, consulte las siguientes referencias:
Tabla 4–2 Dónde encontrar información acerca de las instalaciones basadas en GRUB
Tema |
Tareas del menú de GRUB |
Para obtener más información |
---|---|---|
Installation |
Para instalar desde el CD o DVD del SO Solaris |
Guía de instalación de Solaris 10 6/06: instalaciones básicas. |
Para instalar desde una imagen de instalación de red | ||
Para configurar un servidor DHCP para instalaciones en red | ||
Para instalar mediante el programa JumpStart personalizado | ||
Para activar un entorno de arranque o restaurarlo después de un error mediante la Modernización automática de Solaris |
|
|
Administración del sistema |
Para obtener información más detallada acerca de GRUB y las tareas administrativas |
Capítulo 11, GRUB Based Booting (Tasks) de System Administration Guide: Basic Administration |
Esta sección describe los principios básicos del arranque basado en GRUB y el menú de GRUB.
De forma predeterminada, al instalar el SO Solaris, también se instalan dos entradas del menú de GRUB. La primera entrada es la del SO Solaris. La segunda entrada es el contenedor de arranque failsafe, que se utiliza para la recuperación del sistema. Las entradas del menú de GRUB de Solaris se instalan y actualizan automáticamente durante el proceso de instalación y actualización del software de Solaris. El sistema operativo administra directamente estas entradas, por lo que no deben editarse de forma manual.
Durante una instalación estándar del SO Solaris, también se instala GRUB en la partición de fdisk de Solaris, sin modificar la configuración de la BIOS del sistema. Si el SO no se encuentra en el disco de arranque de la BIOS, deberá realizar una de las siguientes acciones:
Modificar la configuración de la BIOS.
Utilizar un administrador de arranque para establecer la secuencia de arranque con la partición de Solaris. Para obtener información más detallada, consulte el administrador de arranque.
El método recomendado es instalar el SO Solaris en el disco de arranque. Si hay varios sistemas operativos instalados en el equipo, puede agregar entradas al archivo menu.lst. Estas entradas se mostrarán en el menú de GRUB la próxima vez que arranque el sistema.
Para obtener más información sobre el uso de varios sistemas operativos, consulte How Multiple Operating Systems Are Supported in the GRUB Boot Environment de System Administration Guide: Basic Administration.
Para realizar un arranque de red basado en GRUB, se necesita un servidor DHCP que esté configurado para clientes PXE y un servidor de instalación que proporcione servicios tftp. El servidor DHCP debe ser capaz de responder a la clase DHCP, PXEClient y GRUBClient. La respuesta DHCP debe contener la siguiente información:
Dirección IP del servidor de archivos
Nombre del archivo de arranque (pxegrub)
rpc.bootparamd, que suele ser imprescindible en el servidor para realizar un arranque de red, no es necesario en un arranque de red basado en GRUB.
Si no hay disponible ningún servidor PXE o DHCP, se puede cargar GRUB desde el CD-ROM o el disco local. A continuación, se puede configurar manualmente la red en GRUB, descargar el programa de arranque múltiple (multiboot) y el archivo de arranque desde el servidor de archivos.
Para obtener más información, consulte Información general sobre el arranque y la instalación en red con PXE de Guía de instalación de Solaris 10 6/06: instalaciones basadas en red.
Al arrancar un sistema basado en x86, se muestra el menú de GRUB. Este menú ofrece una lista de entradas de arranque entre las que elegir. Una entrada de arranque es una instancia del sistema operativo instalada en el sistema. El menú de GRUB se basa en el archivo menu.lst, que es un archivo de configuración. El programa de instalación de Solaris crea el archivo menu.lst, que puede modificarse tras la instalación. El archivo menu.lst establece la lista de instancias de sistemas operativos que se muestran en el menú de GRUB.
Si instala o actualiza el SO Solaris, el menú de GRUB se actualiza automáticamente. Entonces, se muestra el SO Solaris como una nueva entrada de arranque.
Si instala otro sistema operativo que no sea el SO Solaris, deberá modificar el archivo de configuración menu.lst para que incluya la nueva instancia de sistema operativo. Al agregar una instancia de sistema operativo, la nueva entrada de arranque aparecerá en el menú de GRUB la próxima vez que arranque el sistema.
En el ejemplo siguiente, el menú principal de GRUB muestra los sistemas operativos Solaris y Microsoft Windows. También se incluye un entorno de arranque de Modernización automática de Solaris llamado second_disk. Para conocer cada uno de los elementos del menú, consulte las descripciones siguientes.
GNU GRUB version 0.95 (616K lower / 4127168K upper memory) +-------------------------------------------------------------------+ |Solaris | |Solaris failsafe | |second_disk | |second_disk failsafe | |Windows | +-------------------------------------------------------------------+ Use the ^ and v keys to select which entry is highlighted. Press enter to boot the selected OS, 'e' to edit the commands before booting, or 'c' for a command-line. |
Especifica el SO Solaris.
Especifica un archivo de arranque que puede utilizarse para recuperar el sistema en caso de que el SO Solaris esté dañado.
Especifica un entorno de arranque de Modernización automática de Solaris. Un entorno de arranque second_disk se ha creado como una copia del sistema operativo Solaris. Se actualiza y activa mediante el comando luactivate. El entorno de arranque puede utilizarse para arrancar.
Especifica el sistema operativo Microsoft Windows. GRUB detecta estas particiones, pero no comprueba si el SO puede arrancarse.
El archivo menu.lst de GRUB enumera el contenido del menú principal de GRUB. El menú principal de GRUB incluye las entradas de arranque de todas las instancias de sistemas operativos instalados en el sistema, incluidos los entornos de arranque de Modernización automática de Solaris. El proceso de actualización de software de Solaris conserva todos los cambios que introduzca en este archivo.
Cualquier revisión del archivo menu.lst se muestra en el menú principal de GRUB, junto con las entradas de Modernización automática de Solaris. Los cambios introducidos en el archivo se aplicarán la próxima vez que arranque el sistema. Puede revisar este archivo por los siguientes motivos:
Agregar al menú de GRUB entradas de sistemas operativos que no sean de Solaris.
Personalizar el proceso de arranque para, por ejemplo, especificar el sistema operativo predeterminado en el menú de GRUB.
No utilice el archivo menu.lst de GRUB para modificar las entradas de Solaris Live Upgrade. Las modificaciones puede provocar que falle Solaris Live Upgrade.
Aunque se puede usar el archivo menu.lst para personalizar el proceso de arranque cuando desee, por ejemplo, arrancar mediante el depurador del núcleo, el método recomendado para llevar a cabo tareas de personalización consiste en utilizar el comando eeprom. Si utiliza el archivo menu.lst para la personalización, es posible que se modifiquen las entradas del SO Solaris durante la actualización. En ese caso, todos los cambios introducidos en el archivo se perderían.
Para obtener información acerca de cómo utilizar el comando eeprom, consulte How to Set Solaris Boot Parameters by Using the eeprom Command de System Administration Guide: Basic Administration.
A continuación, se incluye un ejemplo de archivo menu.lst:
default 0 timeout 10 title Solaris root (hd0,0,a) kernel /platform/i86pc/multiboot -B console=ttya module /platform/i86pc/boot_archive title Solaris failsafe root (hd0,0,a) kernel /boot/multiboot -B console=ttya -s module /boot/x86.miniroot.safe #----- second_disk - ADDED BY LIVE UPGRADE - DO NOT EDIT ----- title second_disk root (hd0,1,a) kernel /platform/i86pc/multiboot module /platform/i86pc/boot_archive title second_disk failsafe root (hd0,1,a) kernel /boot/multiboot kernel/unix -s module /boot/x86.miniroot-safe #----- second_disk -------------- END LIVE UPGRADE ------------ title Windows root (hd0,0) chainloader -1 |
Especifica el elemento que debe arrancarse cuando se agote el tiempo de espera. Si desea modificar la opción predeterminada, cambie el número para especificar otro elemento de la lista. El primer título tiene asignado el número cero. Por ejemplo, si desea arrancar automáticamente en el entorno de arranque second_disk, cambie el valor predeterminado a 2.
Especifica el plazo de tiempo en segundos que se esperará a que el usuario introduzca una opción antes de utilizar la entrada de arranque predeterminada. Si no se ha especificado ningún valor de tiempo de espera, se solicitará que seleccione una entrada.
Especifica el nombre del sistema operativo.
Si se trata de un entorno de arranque de Modernización automática de Solaris, OS name es el nombre que se asignó al nuevo entorno de arranque en el momento de crearlo. En el ejemplo anterior, el entorno de arranque de Modernización automática de Solaris se llama second_disk.
Si se trata de un contenedor de arranque failsafe, dicho contenedor se utilizará para la recuperación cuando el sistema operativo principal esté dañado. En el ejemplo anterior, Solaris failsafe y second_disk failsafe son los contenedores de arranque de recuperación para los sistemas operativos Solaris y second_disk.
Especifica el disco, la partición y el segmento utilizados para cargar archivos. GRUB detecta automáticamente el tipo de sistema de archivos.
Especifica el programa de arranque múltiple (multiboot). El comando "kernel" debe ir seguido siempre del programa de arranque múltiple (multiboot). La cadena que aparece detrás de "multiboot" se envía al SO Solaris sin interpretarla.
Para obtener una descripción completa sobre el uso de varios sistemas operativos, consulte How Multiple Operating Systems Are Supported in the GRUB Boot Environment de System Administration Guide: Basic Administration.
Debe utilizarse siempre el comando bootadm para buscar el archivo menu.lst del menú de GRUB. El subcomando list-menu localiza el menú de GRUB activo. El archivo menu.lst muestra todos los sistemas operativos instalados en un sistema. El contenido de este archivo determina la lista de sistemas operativos que se muestra en el menú de GRUB. Si desea realizar cambios en este archivo, consulte x86: Ubicación del archivo menu.lst del menú de GRUB (Tareas).
El menú de GRUB puede actualizarse. Por ejemplo, puede que desee modificar el tiempo de espera antes de arrancar el sistema operativo predeterminado. O, quizá, desee agregar otro sistema operativo al menú de GRUB.
Normalmente, el archivo menu.lst del menú activo de GRUB se encuentra en /boot/grub/menu.lst. En ocasiones, el archivo menu.lst de GRUB se guarda en otra ubicación. Por ejemplo, en un sistema que utilice la Modernización automática de Solaris, el archivo menu.lst de GRUB puede encontrarse en un entorno de arranque que no sea el que se esté ejecutando en ese momento. O, si ha modernizado un sistema con una partición de arranque x86, el archivo menu.lst podría residir en el directorio /stubboot. Para arrancar el sistema, sólo se utiliza el archivo menu.lst activo de GRUB. Para modificar el menú de GRUB que se muestra al arrancar el sistema, debe modificarse el archivo menu.lst activo de GRUB. Modificar cualquier otro archivo menu.lst de GRUB no afecta al menú que se muestra al arrancar el sistema. Para determinar la ubicación del archivo de GRUB activo menu.lst, utilice el comando bootadm. El subcomando list-menu muestra la ubicación del menú activo de GRUB. Los procedimientos siguientes determinan la ubicación del archivo menu.lst del menú de GRUB.
Para obtener más información acerca del comando bootadm, consulte la página de comando man bootadm(1M).
En el procedimiento siguiente, el sistema dispone de dos sistemas operativos: Solaris y un entorno de arranque de Modernización automática de Solaris second_disk. Se ha arrancado el SO Solaris, que contiene el menú de GRUB.
Conviértase en superusuario o asuma una función similar.
Las funciones incluyen autorizaciones y comando con privilegios. Para obtener más información sobre las funciones, consulte Configuring RBAC (Task Map) de System Administration Guide: Security Services.
Para encontrar el archivo menu.lst, escriba:
# /sbin/bootadm list-menu |
Se mostrarán la ubicación y el contenido del archivo.
The location for the active GRUB menu is: /boot/grub/menu.lst default 0 timeout 10 0 Solaris 1 Solaris failsafe 2 second_disk 3 second_disk failsafe |
En el procedimiento siguiente, el sistema dispone de dos sistemas operativos: Solaris y un entorno de arranque de Modernización automática de Solaris, second_disk. En este ejemplo, el archivo menu.lst no se encuentra en el entorno de arranque que se está ejecutando actualmente. Se ha arrancado el entorno de arranque second_disk. El entorno de arranque de Solaris contiene el menú de GRUB. No se ha montado el entorno de arranque de Solaris.
Conviértase en superusuario o asuma una función similar.
Las funciones incluyen autorizaciones y comando con privilegios. Para obtener más información sobre las funciones, consulte Configuring RBAC (Task Map) de System Administration Guide: Security Services.
Para encontrar el archivo menu.lst, escriba:
# /sbin/bootadm list-menu |
Se mostrarán la ubicación y el contenido del archivo.
The location for the active GRUB menu is: /dev/dsk/device_name(not mounted) The filesystem type of the menu device is <ufs> default 0 timeout 10 0 Solaris 1 Solaris failsafe 2 second_disk 3 second_disk failsafe |
Monte el sistema de archivos que contiene el archivo menu.lst, que todavía no se había montado. Especifique el sistema de archivos UFS y el nombre del dispositivo.
# /usr/sbin/mount -F ufs /dev/dsk/device_name /mnt |
Donde device_name especifica la ubicación del sistema de archivos root (/) en el dispositivo de disco del entorno de arranque que desea montar. El nombre de dispositivo se introduce con el formato /dev/dsk/cwt xdys z. Por ejemplo:
# /usr/sbin/mount -F ufs /dev/dsk/c0t1d0s0 /mnt |
Puede acceder al menú de GRUB en /mnt/boot/grub/menu.lst
Desmonte el sistema de archivos.
# /usr/sbin/umount /mnt |
Si monta un entorno de arranque o un sistema de archivos de un entorno de arranque, no olvide desmontar los sistemas de archivos una vez utilizados. De lo contrario, puede producirse un error de las siguientes operaciones de Modernización automática de Solaris en dicho entorno de arranque.
En el procedimiento siguiente, el sistema dispone de dos sistemas operativos: Solaris y un entorno de arranque de Modernización automática de Solaris, second_disk. Se ha arrancado el entorno de arranque second_disk. El entorno de arranque de Solaris contiene el menú de GRUB. El entorno de arranque de Solaris está montado en /.alt.Solaris.
Conviértase en superusuario o asuma una función similar.
Las funciones incluyen autorizaciones y comando con privilegios. Para obtener más información sobre las funciones, consulte Configuring RBAC (Task Map) de System Administration Guide: Security Services.
Para encontrar el archivo menu.lst, escriba:
# /sbin/bootadm list-menu |
Se mostrarán la ubicación y el contenido del archivo.
The location for the active GRUB menu is: /.alt.Solaris/boot/grub/menu.lst default 0 timeout 10 0 Solaris 1 Solaris failsafe 2 second_disk 3 second_disk failsafe |
Puesto que el entorno de arranque que contiene el menú de GRUB ya está montado, puede acceder al archivo menu.lst en /.alt.Solaris/boot/grub/menu.lst.
En el procedimiento siguiente, el sistema dispone de dos sistemas operativos: Solaris y un entorno de arranque de Modernización automática de Solaris second_disk. Se ha arrancado el entorno de arranque second_disk. Se ha actualizado el sistema y se conserva una partición de arranque x86. La partición de arranque se ha montado en /stubboot y contiene el menú de GRUB. Para obtener información acerca de las particiones de arranque x86, consulte x86: Recomendaciones para la partición.
Conviértase en superusuario o asuma una función similar.
Las funciones incluyen autorizaciones y comando con privilegios. Para obtener más información sobre las funciones, consulte Configuring RBAC (Task Map) de System Administration Guide: Security Services.
Para encontrar el archivo menu.lst, escriba:
# /sbin/bootadm list-menu |
Se mostrarán la ubicación y el contenido del archivo.
The location for the active GRUB menu is: /stubboot/boot/grub/menu.lst default 0 timeout 10 0 Solaris 1 Solaris failsafe 2 second_disk 3 second_disk failsafe |
Puede acceder al archivo menu.lst en /stubboot/boot/grub/menu.lst.