Guía de instalación de Solaris 10 10/09: Modernización automática de Solaris y planificación de la modernización

Migración de un sistema de archivos UFS a un sistema de archivos ZFS

Este procedimiento describe cómo migrar un sistema de archivos UFS a un sistema de archivos ZFS. El proceso de creación de un entorno de arranque proporciona un método para copiar sistemas de archivos críticos del entorno de arranque activo a un nuevo entorno de arranque. El comando lucreate copia los sistemas de archivos críticos en un nuevo entorno de arranque en una agrupación root de ZFS. Los sistemas de archivos definidos por el usuario que se pueden compartir no se copian y no se comparten con el entorno de arranque de UFS. Asimismo, /swap no se comparte entre el sistema de archivos UFS y la agrupación root de ZFS. Para obtener una descripción general de los sistemas de archivos críticos y compartibles, consulte Tipos de sistemas de archivos.

ProcedureMigración de un sistema de archivos UFS a un sistema de archivos ZFS


Nota –

Para migrar un sistema de archivos root de UFS activo (/) a una agrupación root de ZFS, debe proporcionar el nombre de la agrupación root. Los sistemas de archivos críticos se copian en la agrupación root.


  1. Antes de ejecutarla por primera vez, debe instalar los paquetes más recientes de Modernización automática de Solaris de los medios de instalación, así como los parches que se muestran en el documento de información 206844 de SunSolve. Busque el documento de información 206844 (anteriormente 72099) en el sitio web de SunSolve.

    Los parches y paquetes más recientes aseguran que dispone en la versión de todas las correcciones de errores más recientes y las nuevas funciones. Instale todos los parches pertinentes para el sistema antes de proceder a crear un nuevo entorno de arranque.

    A continuación se describen los subpasos que figuran en el documento de información de SunSolve 206844.


    Nota –

    El uso de Modernización automática de Solaris para crear entornos de arranque de ZFS requiere como mínimo la instalación de Solaris 10 10/08. Las versiones anteriores no tienen ZFS ni Modernización automática de Solaris para llevar a cabo las tareas.


    1. Conviértase en superusuario o asuma una función similar.

    2. En el sitio web de SunSolve, siga las instrucciones del documento de información 206844 para agregar y quitar paquetes en Modernización automática de Solaris.

      Los tres paquetes de Modernización automática de Solaris, SUNWluu, SUNWlur y SUNWlucfg, contienen el software necesario para modernizar mediante Modernización automática de Solaris. Los paquetes contienen el software ya instalado, nuevas funciones y soluciones de errores. La modernización a la versión de destino no será factible a menos que suprima los paquetes ya instalados e instale los nuevos antes de utilizar Modernización automática de Solaris. El paquete SUMWlucfg es una novedad disponible a partir de Solaris 10 8/07. Si utiliza paquetes de Modernización automática de Solaris de una versión anterior a Solaris 10 8/07, no necesita suprimir este paquete.


      # pkgrm SUNWlucfg SUNWluu SUNWlur
      
    3. Instale los nuevos paquetes de Modernización automática de Solaris desde la versión a la que está modernizando. Para obtener instrucciones, consulte Instalación de Modernización automática de Solaris.

    4. Antes de ejecutar la Modernización automática de Solaris, se le solicita que instale los parches siguientes. Estas revisiones garantizan que la versión incluya todas las correcciones de errores y las nuevas funciones.

      Para asegurarse de que dispone de la lista de parches más reciente, consulte SunSolve. Busque el documento de información 206844 (anteriormente 72099) en el sitio web de SunSolve.

      • Si está almacenando las revisiones en un disco local, cree un directorio como /var/tmp/lupatches y descargue en él las revisiones.

      • En el sitio web de SunSolve , obtenga la lista de revisiones.

      • Vaya al directorio de parches.


        # cd /var/tmp/lupatches
        
      • Instale las revisiones con el comando patchadd.


        # patchadd patch_id
        

        id_parche es el número o los números de parche. Si especifica varios nombres de revisiones, sepárelos con espacios.


        Nota –

        Los parches deben aplicarse en el orden especificado en el documento informativo 206844.


      • Reinicie el sistema si es necesario. Es necesario reiniciar el sistema para que se apliquen determinadas revisiones.

        sólo x86: es necesario reiniciar el sistema o Modernización automática de Solaris fallará.


        # init 6
        

        Ahora tiene los paquetes y los parches necesarios para una migración sin problemas.

  2. Cree una agrupación root de ZFS.

    La agrupación root de ZFS debe encontrarse en un único segmento para poder arrancarse y actualizarse.


    # zpool create rpool  c0t1d0s5
    
    rpool

    Especifica el nombre de la nueva agrupación root de ZFS que se creará.

    c0t1d0s5

    Crea la nueva agrupación root en el segmento de disco, c0t1d0s5.

    Para obtener información sobre cómo crear una agrupación root, consulte Guía de administración de Solaris ZFS.

  3. Migre un sistema de archivos root de UFS (/) a una nueva agrupación root de ZFS.


    # lucreate [-c ufsBE] -n new-zfsBE -p rpool
    
    -c EAufs

    Asigne el nombre EAufs al entorno de arranque UFS activo. Esta opción no es obligatoria y sólo se utiliza cuando se crea el primer entorno de arranque. Si ejecuta el comando lucreate por primera vez y omite la opción -c, el software crea un nombre predeterminado.

    -n new-zfsBE

    Asigna el nombre new-zfsBE al entorno de arranque que se creará. El nombre debe ser exclusivo dentro del sistema.

    -p rpool

    Coloca el sistema de archivos root de ZFS que acaba de crear (/) en la agrupación root de ZFS definida en rpool.

    La creación del nuevo entorno de arranque ZFS podría tardar un rato. Los datos del sistema de archivos UFS se copian en la agrupación root de ZFS. Una vez creado el entorno de arranque inactivo, puede utilizar el comando luupgrade o luactivate para modernizar o activar el nuevo entorno de arranque ZFS.

  4. (Opcional) Compruebe que el entorno de arranque esté completo.

    En este ejemplo, el comando lustatus indica si la creación del entorno de arranque está terminada y si dicho entorno se puede arrancar.


    # lustatus
    boot environment   Is         Active   Active     Can	    Copy 
    Name               Complete   Now	  OnReboot   Delete	 Status 
    -----------------------------------------------------------------
    ufsBE               yes       yes      yes        no         -
    new-zfsBE           yes       no       no        yes         -
  5. (Opcional) Compruebe la información de conjunto de datos básica en el sistema.

    El comando list muestra los nombres de todos los conjuntos de datos en el sistema. En este ejemplo, rpool es el nombre de la agrupación de ZFS y new-zfsBE es el nombre del entorno de arranque de ZFS que se acaba de crear.


    # zfs list
    NAME                        USED  AVAIL  REFER  MOUNTPOINT 
    rpool                      9.29G  57.6G    20K  /rpool
    rpool/ROOT                 5.38G  57.6G    18K  /rpool/ROOT
    rpool/ROOT/new-zfsBE       5.38G  57.6G   551M  /tmp/.alt.luupdall.110034
    rpool/dump                 1.95G      -  1.95G  - 
    rpool/swap                 1.95G      -  1.95G  - 

    Los puntos de montaje que se enumeran para el nuevo entorno de arranque son temporales hasta que se ejecuta el comando luactivate. Los volúmenes /dump y /swap no se comparten con el entorno de arranque UFS original, pero se comparten en la agrupación root de ZFS y los entornos de arranque de la agrupación root.

    Ahora puede modernizar y activar el nuevo entorno de arranque. Consulte el Ejemplo 13–1.


Ejemplo 13–1 Migrar un sistema de archivos root de UFS (/) a una agrupación root de ZFS

En este ejemplo, la nueva agrupación root de ZFS, rpool, se crea en un segmento independiente, C0t0d0s4. El comando lucreate migra el entorno de arranque de UFS en ejecución,c0t0d0, al nuevo entorno de arranque de ZFS, new-zfsBE, y coloca el nuevo entorno de arranque en rpool.


# zpool create rpool C0t0d0s4

# zfs list
NAME                        USED  AVAIL  REFER  MOUNTPOINT 
rpool                      9.29G  57.6G    20K  /rpool
# lucreate -c c0t0d0 -n new-zfsBE -p rpool
Analyzing system configuration.
Current boot environment is named <c0t0d0>.
Creating initial configuration for primary boot environment <c0t0d0>.
The device </dev/dsk/c0t0d0> is not a root device for any boot 
environment; cannot get BE ID.
PBE configuration successful: PBE name <c0t0d0> PBE Boot Device 
</dev/dsk/c0t0d0>.
Comparing source boot environment <c0t0d0> file systems with the file 
system(s) you specified for the new boot environment. Determining which 
file systems should be in the new boot environment.
Updating boot environment description database on all BEs.
Updating system configuration files.
The device </dev/dsk/c1t0d0s0> is not a root device for any boot 
environment; cannot get BE ID.
Creating configuration for boot environment <new-zfsBE>.
Source boot environment is <c0t0d0>.
Creating boot environment <new-zfsBE>.
Creating file systems on boot environment <new-zfsBE>.
Creating <zfs> file system for </> in zone <global> on 
<rpool/ROOT/new-zfsBE>.
Populating file systems on boot environment <new-zfsBE>.
Checking selection integrity.
Integrity check OK.
Populating contents of mount point </>.
Copying.
Creating shared file system mount points.
Creating compare databases for boot environment <zfsBE>.
Creating compare database for file system </>.
Making boot environment <zfsBE> bootable.
Creating boot_archive for /.alt.tmp.b-cBc.mnt
updating /.alt.tmp.b-cBc.mnt/platform/sun4u/boot_archive
Population of boot environment <new-zfsBE> successful.
Creation of boot environment <new-zfsBE> successful.

# lustatus
boot environment   Is         Active   Active     Can	    Copy 
Name               Complete   Now	  OnReboot   Delete	 Status 
------------------------------------------------------------------------ 
c0t0d0             yes       yes      yes        no         - 
new-zfsBE           yes       no       no        yes       -

# zfs list
NAME                        USED  AVAIL  REFER  MOUNTPOINT 
rpool                      9.29G  57.6G    20K  /rpool
rpool/ROOT                 5.38G  57.6G    18K  /rpool/ROOT
rpool/ROOT/zfsBE           5.38G  57.6G   551M  
rpool/ROOT/new-zfsBE       5.38G  57.6G   551M  /tmp/.alt.luupdall.110034
rpool/dump                 1.95G      -  1.95G  - 
rpool/swap                 1.95G      -  1.95G  - 

Ahora puede modernizar o activar el nuevo entorno de arranque.

En este ejemplo, el nuevo entorno de arranque se moderniza utilizando el comando luupgrade de una imagen que se almacena en la ubicación que indica la opción -s.


# luupgrade -n zfsBE -u -s /net/install/export/s10/combined.s10
 51135 blocks 
miniroot filesystem is <lofs>
Mounting miniroot at 
</net/install/export/solaris_10/combined.solaris_10_wos
/Solaris_10/Tools/Boot> 
Validating the contents of the media 
</net/install/export/s10/combined.s10>. 
The media is a standard Solaris media. 
The media contains an operating system upgrade image. 
The media contains Solaris version <10_1008>. 
Constructing upgrade profile to use. 
Locating the operating system upgrade program. 
Checking for existence of previously scheduled Live 
Upgrade requests. 
Creating upgrade profile for BE <zfsBE>. 
Determining packages to install or upgrade for BE <zfsBE>. 
Performing the operating system upgrade of the BE <zfsBE>. 
CAUTION: Interrupting this process may leave the boot environment 
unstable or unbootable. 
Upgrading Solaris: 100% completed 
Installation of the packages from this media is complete. 
Adding operating system patches to the BE <zfsBE>. 
The operating system patch installation is complete. 
INFORMATION: The file /var/sadm/system/logs/upgrade_log on boot 
environment <zfsBE> contains a log of the upgrade operation. 
INFORMATION: The file var/sadm/system/data/upgrade_cleanup on boot 
environment <zfsBE> contains a log of cleanup operations required. 
INFORMATION: Review the files listed above. Remember that all 
of the files are located on boot environment <zfsBE>. 
Before you activate boot environment <zfsBE>, determine if any 
additional system maintenance is required or if additional media 
of the software distribution must be installed. 
The Solaris upgrade of the boot environment <zfsBE> is complete.

El nuevo entorno de arranque se puede activar en cualquier momento después de crearse.


# luactivate new-zfsBE
**********************************************************************

The target boot environment has been activated. It will be used when you 
reboot. NOTE: You MUST NOT USE the reboot, halt, or uadmin commands. You 
MUST USE either the init or the shutdown command when you reboot. If you 
do not use either init or shutdown, the system will not boot using the 
target BE.

**********************************************************************
In case of a failure while booting to the target BE, the following process 
needs to be followed to fallback to the currently working boot environment:

1. Enter the PROM monitor (ok prompt).

2. Change the boot device back to the original boot environment by typing:

     setenv boot-device /pci@1f,0/pci@1/scsi@4,1/disk@2,0:a

3. Boot to the original boot environment by typing:

     boot

**********************************************************************

Modifying boot archive service
Activation of boot environment <new-zfsBE> successful.

Reinicie el sistema y seleccione el entorno de arranque de ZFS.


# init 6
# svc.startd: The system is coming down.  Please wait.
svc.startd: 79 system services are now being stopped.
.
.
.

Si recupera un entorno de arranque de UFS, necesita importar de nuevo las agrupaciones de almacenamiento de ZFS que se hayan creado en el entorno de arranque de ZFS porque no estarán disponibles de forma automática en el entorno de arranque de UFS. Verá mensajes similares al ejemplo siguiente cuando vuelva al entorno de arranque de UFS.


# luactivate c0t0d0
WARNING: The following files have changed on both the current boot 
environment <new-zfsBE> zone <global> and the boot environment 
to be activated <c0t0d0>:
 /etc/zfs/zpool.cache
INFORMATION: The files listed above are in conflict between the current 
boot environment <zfsBE> zone <global> and the boot environment to be 
activated <c0t0d0>. These files will not be automatically synchronized 
from the current boot environment <new-zfsBE> when boot environment <c0t0d0>