Tanto los sistemas basados en SPARC como en x86 utilizan el nuevo estilo de inicio con un archivo de almacenamiento de inicio, que consiste en una imagen de sistema de archivos con los archivos que se necesitan para iniciar. Si se inicia un sistema desde un sistema de archivos raíz ZFS, los nombres de ruta del archivo de almacenamiento de inicio y del archivo de núcleo se resuelven en el sistema de archivos raíz que se selecciona para iniciar.
Cuando se inicia un sistema para la instalación, se usa un disco RAM para el sistema de archivos raíz durante todo el proceso de instalación.
El inicio desde un sistema de archivos ZFS es diferente de un sistema de archivos UFS porque, con ZFS, el especificador de dispositivos de inicio identifica una agrupación de almacenamiento, no un solo sistema de archivos raíz. Una agrupación de almacenamiento puede contener varios conjuntos de datos que se pueden iniciar o sistemas de archivos raíz ZFS. Si se inicia desde ZFS, debe especificar un dispositivo de inicio y un sistema de archivos raíz en la agrupación identificada por el dispositivo de inicio.
De forma predeterminada, el conjunto de datos seleccionado para iniciar es el que queda identificado por la propiedad bootfs de la agrupación. Esta selección predeterminada se puede modificar optando por un conjunto de datos alternativo que se puede iniciar en el comando boot -Z.
Puede crear una agrupación raíz ZFS reflejada al instalar el sistema; también puede conectar un disco para crear una agrupación raíz ZFS reflejada tras la instalación. Para más información, consulte:
Instalación de un sistema de archivos raíz ZFS (instalación inicial)
Cómo crear una agrupación raíz reflejada (posterior a la instalación)
Revise los siguientes problemas conocidos relativos a agrupaciones raíz ZFS reflejadas:
CR 6668666: debe instalar la información de inicio en los discos conectados adicionalmente mediante los comandos installboot o installgrub si desea habilitar el inicio en los otros discos del reflejo. Si crea una agrupación raíz ZFS reflejada con el método de instalación inicial, este paso no es necesario. Por ejemplo, si c0t1d0s0 era el segundo disco agregado al reflejo, la sintaxis del comando installboot o installgrub sería la siguiente:
SPARC:
sparc# installboot -F zfs /usr/platform/`uname -i`/lib/fs/zfs/bootblk /dev/rdsk/c0t1d0s0 |
x86:
x86# installgrub /boot/grub/stage1 /boot/grub/stage2 /dev/rdsk/c0t1d0s0 |
Puede iniciar desde distintos dispositivos en una agrupación raíz ZFS reflejada. Según la configuración de hardware, quizá deba actualizar la PROM o el BIOS para especificar otro dispositivo de inicio.
Por ejemplo, puede iniciar desde cualquier disco (c1t0d0s0 o c1t1d0s0) de la siguiente agrupación.
# zpool status pool: rpool state: ONLINE scrub: none requested config: NAME STATE READ WRITE CKSUM rpool ONLINE 0 0 0 mirror-0 ONLINE 0 0 0 c1t0d0s0 ONLINE 0 0 0 c1t1d0s0 ONLINE 0 0 0 |
SPARC: introduzca el disco alternativo en el indicador Aceptar.
ok boot /pci@7c0/pci@0/pci@1/pci@0,2/LSILogic,sas@2/disk@0 |
Tras reiniciar el sistema, confirme el dispositivo de inicio activo. Por ejemplo:
SPARC# prtconf -vp | grep bootpath bootpath: '/pci@7c0/pci@0/pci@1/pci@0,2/LSILogic,sas@2/disk@0,0:a' |
x86: seleccione un disco alternativo en la agrupación raíz ZFS reflejada en el menú del BIOS pertinente.
A continuación, use una sintaxis similar a la siguiente para confirmar que ha iniciado desde el disco alternativo:
x86# prtconf -v|sed -n '/bootpath/,/value/p' name='bootpath' type=string items=1 value='/pci@0,0/pci8086,25f8@4/pci108e,286@0/disk@0,0:a' |
En un sistema basado en SPARC con varios entornos de inicio ZFS, puede iniciar desde cualquier entorno de inicio mediante el comando luactivate.
Durante el proceso de instalación del sistema operativo Solaris y la ejecución de Actualización automática de Oracle Solaris, el sistema de archivos raíz ZFS se designa automáticamente mediante la propiedad bootfs.
En una agrupación puede haber varios conjuntos de datos que se pueden iniciar. De forma predeterminada, la entrada del conjunto de datos que se puede iniciar del archivo /nombre_agrupación/boot/menu.lst se identifica mediante la propiedad bootfs de la agrupación. Ahora bien, una entrada de menu.lstpuede contener un comando bootfs, que especifica un conjunto de datos alternativo de la agrupación. De esta manera, el archivo menu.lst puede contener entradas de varios sistemas de archivos raíz dentro de la agrupación.
Si un sistema se instala con un sistema de archivos raíz ZFS o se migra a un sistema de archivos raíz ZFS, al archivo menu.lst se le agrega una entrada similar a la siguiente:
title zfsBE bootfs rpool/ROOT/zfsBE title zfs2BE bootfs rpool/ROOT/zfs2BE |
Al crearse un entorno de inicio, se actualiza automáticamente el archivo menu.lst.
En un sistema basado en SPARC hay dos nuevas opciones de inicio:
Después de activar el entorno de inicio, puede utilizar el comando de inicio -L para obtener una lista de conjuntos de datos que se pueden iniciar en una agrupación ZFS. A continuación, puede seleccionar en la lista uno de los conjuntos de datos que se pueden iniciar. Se muestran instrucciones pormenorizadas para iniciar dicho conjunto de datos. El conjunto de datos seleccionado se puede iniciar siguiendo esas instrucciones.
Puede utilizar el comando de inicio -Z conjunto_datos para iniciar un determinado conjunto de datos ZFS.
Si dispone de varios entornos de inicio ZFS en una agrupación de almacenamiento ZFS en el dispositivo de inicio del sistema, puede utilizar el comando luactivate para designar un entorno de inicio predeterminado.
Por ejemplo, los siguientes entornos de inicio ZFS están disponibles como se describe en la salida de lustatus:
# lustatus Boot Environment Is Active Active Can Copy Name Complete Now On Reboot Delete Status -------------------------- -------- ------ --------- ------ ---------- zfsBE yes no no yes - zfs2BE yes yes yes no - |
Si tiene varios entornos de inicio ZFS en un sistema basado en SPARC, puede utilizar el comando boot -L para iniciar desde un entorno de inicio que sea diferente del predeterminado. Sin embargo, un entorno de inicio que se inicia desde una sesión boot -L no se restablece como el predeterminado, ni se actualiza la propiedad bootfs. Si desea que el entorno de inicio que se inicia desde una sesión boot -L sea el predeterminado, debe activarlo con el comando luactivate.
Por ejemplo:
ok boot -L Rebooting with command: boot -L Boot device: /pci@7c0/pci@0/pci@1/pci@0,2/LSILogic,sas@2/disk@0 File and args: -L 1 zfsBE 2 zfs2BE Select environment to boot: [ 1 - 2 ]: 1 To boot the selected entry, invoke: boot [<root-device>] -Z rpool/ROOT/zfsBE Program terminated ok boot -Z rpool/ROOT/zfsBE |
En un sistema basado en SPARC, puede iniciar desde el archivo de almacenamiento a prueba de fallos ubicado en /platform/`uname -i`/failsafe como se muestra a continuación:
ok boot -F failsafe |
Para iniciar un archivo de almacenamiento a prueba de fallos desde un determinado conjunto de datos ZFS que se puede iniciar, utilice una sintaxis similar a la siguiente:
ok boot -Z rpool/ROOT/zfsBE -F failsafe |
Las entradas siguientes se agregan al archivo /pool-name /boot/grub/menu.lst durante el proceso de instalación o al ejecutarse Actualización automática de Oracle Solaris para iniciar ZFS de forma automática:
title Solaris 10 9/10 X86 findroot (rootfs0,0,a) kernel$ /platform/i86pc/multiboot -B $ZFS-BOOTFS module /platform/i86pc/boot_archive title Solaris failsafe findroot (rootfs0,0,a) kernel /boot/multiboot kernel/unix -s -B console=ttya module /boot/x86.miniroot-safe |
Si el dispositivo que GRUB identifica como dispositivo de inicio contiene una agrupación de almacenamiento ZFS, el archivo menu.lst se utiliza para crear el menú GRUB.
En el caso de un sistema basado en x86 con varios entornos de inicio ZFS, el entorno de inicio se puede seleccionar en el menú GRUB. Si el sistema de archivos raíz correspondiente a esta entrada de menú es un conjunto de datos ZFS, se agrega la opción siguiente:
-B $ZFS-BOOTFS |
Si se inicia un sistema desde un sistema de archivos ZFS, el parámetro -B $ZFS-BOOTFS especifica el dispositivo raíz en la línea kernel o module en la entrada del menú GRUB. El GRUB pasa al núcleo el valor de este parámetro, parecido a todos los parámetros que especifica la opción -B. Por ejemplo:
title Solaris 10 9/10 X86 findroot (rootfs0,0,a) kernel$ /platform/i86pc/multiboot -B $ZFS-BOOTFS module /platform/i86pc/boot_archive title Solaris failsafe findroot (rootfs0,0,a) kernel /boot/multiboot kernel/unix -s -B console=ttya module /boot/x86.miniroot-safe |
El archivo de almacenamiento a prueba de fallos de x86 es /boot/x86.miniroot-safe y se puede iniciar seleccionando la entrada a prueba de fallos de Solaris en el menú GRUB. Por ejemplo:
title Solaris failsafe findroot (rootfs0,0,a) kernel /boot/multiboot kernel/unix -s -B console=ttya module /boot/x86.miniroot-safe |
El uso del comando luactivate es la mejor forma de cambiar el entorno de inicio activo. Si el entorno de inicio activo no puede iniciarse, debido a un parche incorrecto o a un error de configuración, la única forma de iniciar otro entorno de inicio es seleccionar dicho entorno en el momento de iniciar. Puede seleccionar un entorno de inicio alternativo en el menú GRUB en un sistema basado en x86, o iniciarlo explícitamente desde la PROM de un sistema basado en SPARC.
Debido a un error en Actualización automática de Oracle Solaris en la versión Solaris 10 10/08, el inicio del entorno de inicio no activo podría fallar porque un conjunto de datos ZFS o el conjunto de datos ZFS de una zona del entorno de inicio tiene un punto de montaje no válido. Ese mismo error impide el montaje del entorno de inicio si tiene un conjunto de datos /var aparte.
Si el conjunto de datos de una zona tiene un punto de montaje no válido, éste se puede corregir si se realizan los siguientes pasos.
Inicie el sistema desde un archivo de almacenamiento a prueba de fallos.
Importe la agrupación.
Por ejemplo:
# zpool import rpool |
Busque puntos de montaje temporales incorrectos.
Por ejemplo:
# zfs list -r -o name,mountpoint rpool/ROOT/s10u6 NAME MOUNTPOINT rpool/ROOT/s10u6 /.alt.tmp.b-VP.mnt/ rpool/ROOT/s10u6/zones /.alt.tmp.b-VP.mnt//zones rpool/ROOT/s10u6/zones/zonerootA /.alt.tmp.b-VP.mnt/zones/zonerootA |
El punto de montaje del entorno de inicio raíz (rpool/ROOT/s10u6) debe ser /.
Si falla el inicio debido a problemas de montaje de /var, busque un punto de montaje temporal similar incorrecto para el conjunto de datos /var.
Restablezca los puntos de montaje del entorno de inicio ZFS y sus conjuntos de datos.
Por ejemplo:
# zfs inherit -r mountpoint rpool/ROOT/s10u6 # zfs set mountpoint=/ rpool/ROOT/s10u6 |
Reinicie el sistema.
Si se presenta la opción para iniciar un determinado entorno de inicio, en el menú GRUB o el indicador de OpenBoot PROM, seleccione el entorno de inicio cuyos puntos de montaje se han acabado de corregir.
Utilice el procedimiento siguiente si necesita iniciar el sistema para recuperarse de la pérdida de una contraseña raíz o de un problema similar.
Dependiendo de la gravedad del error, tendrá que iniciar en modo a prueba de fallos o desde un medio alternativo. En general, puede iniciar en modo a prueba de fallos para recuperar una contraseña raíz perdida o desconocida.
Si necesita recuperar una agrupación raíz o una instantánea de agrupación raíz, consulte Recuperación de la agrupación raíz ZFS o las instantáneas de la agrupación raíz.
Inicie en modo a prueba de fallos.
En un sistema SPARC:
ok boot -F failsafe |
En un sistema x86, seleccione el modo a prueba de fallos en el indicador de GRUB.
Monte el entorno de inicio ZFS en /a cuando se le solicite:
. . . ROOT/zfsBE was found on rpool. Do you wish to have it mounted read-write on /a? [y,n,?] y mounting rpool on /a Starting shell. |
Cambie al directorio /a/etc.
# cd /a/etc |
Si es necesario, establezca el tipo TERM.
# TERM=vt100 # export TERM |
Corrija el archivo passwd o shadow.
# vi shadow |
Reinicie el sistema.
# init 6 |
Si un problema impide que el sistema se inicie correctamente, o se produce algún otro problema grave, deberá iniciar desde un servidor de instalación en red o desde un CD de instalación de Solaris, importar la agrupación raíz, montar el entorno de inicio ZFS e intentar resolver el problema.
Inicie desde un CD de instalación o desde la red.
SPARC:
ok boot cdrom -s ok boot net -s |
Si no utiliza la opción -s, deberá salir del programa de instalación.
x86: seleccione la opción de inicio de red o de inicio desde el CD local.
Importe la agrupación raíz y especifique un punto de montaje alternativo. Por ejemplo:
# zpool import -R /a rpool |
Monte el entorno de inicio ZFS. Por ejemplo:
# zfs mount rpool/ROOT/zfsBE |
Acceda al contenido ZFS desde el directorio /a.
# cd /a |
Reinicie el sistema.
# init 6 |