Guía de instalación de Solaris 10 10/09: contenedores Flash de Solaris (creación e instalación)

Creación de un contenedor Solaris Flash

Puede crear un contenedor con una instalación inicial que sobrescriba todos los archivos del sistema clónico. También es posible crear un contenedor diferencial que sobrescriba únicamente los cambios que se haya especificado. Para una descripción del contenedor diferencial, consulte Planificación para crear el contenedor diferencial Solaris Flash para una actualización.


Precaución – Precaución –

Cuando hay instalada una zona no global, no se puede crear correctamente un contenedor Solaris Flash. La función Solaris Flash no es compatible con la tecnología de partición de Zonas de Solaris. Si crea un contenedor Solaris Flash, el contenedor resultante no se instalará adecuadamente si el contenedor se implementa en estas circunstancias:


ProcedurePara crear un contenedor Solaris Flash en una instalación inicial

Después de instalar el sistema principal, puede crear un contenedor Solaris Flash que le servirá en la instalación de otros sistemas. Siga este procedimiento.

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

    Las funciones incluyen autorizaciones y comandos con privilegios. Para obtener más información sobre las funciones, consulte Configuring RBAC (Task Map) de System Administration Guide: Security Services.

  2. Arranque el sistema principal y ejecútelo de la manera más inactiva posible.

    Si es posible, ejecútelo en modo monousuario. Si no es posible, cierre todas las aplicaciones que desee agregar al contenedor, así como aquellas que precisen gran cantidad de recursos del sistema operativo.

    Se puede crear un contenedor Solaris Flash con el sistema principal ejecutándose en modo multiusuario o monousuario o bien arrancado desde:

    • El DVD del sistema operativo Solaris.

    • El Software 1 de Solaris .

    • Una imagen del software Solaris. Si utiliza un CD, la imagen puede incluir los CD de idiomas de Solaris si es necesario.

  3. Para crear el contenedor, use el comando flarcreate.


    # flarcreate -n name options path/filename
    
    nombre

    El nombre asignado al contenedor. El nombre que especifique es el valor de la palabra clave content_name.

    options

    Para una descripción de las opciones, consulte Comando flar.

    ruta

    La ruta al directorio en el que desea guardar el archivo del contenedor. Si no especifica ninguna ruta, flarcreate guarda el contenedor en el directorio actual.

    nombre_archivo

    El nombre de archivo del contenedor.

    • Si la creación del contenedor resulta satisfactoria, el comando flarcreate devuelve el código de salida 0.

    • En caso contrario, devuelve un código de salida distinto de cero.

  4. Haga una copia del contenedor y guárdela; la podrá usar en el futuro para actualizar un sistema clónico con un contenedor diferencial.

Creación de un contenedor Solaris Flash (ejemplos)

Los sistemas de archivos se pueden copiar exactamente o personalizar mediante la exclusión de algunos directorios o archivos. Se pueden conseguir los mismos resultados utilizando distintas opciones. Use las opciones más adecuadas en función de su entorno.

Los sistemas de archivos en los siguientes ejemplos se han simplificado en gran medida para una mayor claridad. En lugar de usar nombres de sistemas de archivos como /var , /usr o /opt, la estructura principal del sistema de archivos de los ejemplos es la siguiente:


/aaa/bbb/ccc/ddd
/aaa/bbb/fff
/aaa/eee
/ggg

Precaución – Precaución –

Utilice con precaución las opciones de exclusión de archivos de flarcreate. Si excluye algún directorio, es posible que otros que le hayan pasado por alto se queden en el contenedor, como los archivos de configuración del sistema. El sistema sufriría incoherencias y la instalación no funcionaría. Es mejor excluir directorios y archivos que contengan datos que pueden eliminarse con facilidad sin afectar al sistema; por ejemplo, archivos de datos de gran tamaño.


Creación de un contenedor Solaris Flash (varios ejemplos)


Ejemplo 3–6 Creación de un contenedor duplicado exacto

En este ejemplo, el nombre del contenedor es archive1. Este contenedor se copia exactamente desde el sistema principal y después se comprime. El contenedor es un duplicado exacto del sistema principal y está guardado en archive1.flar.


# flarcreate -n archive1 -c archive1.flar

Para comprobar la estructura de archivos del contenedor, escriba lo siguiente.


# flar info -l archive1.flarlost+found
export
export/home
export/home/lost+found
var
var/sadm
var/sadm/install
var/sadm/install/admin
var/sadm/install/admin/default
var/sadm/install/logs
var/sadm/install/contents
var/sadm/install/.lockfile
var/sadm/install/.pkg.lock
var/sadm/pkg
var/sadm/pkg/SUNWocfd
var/sadm/pkg/SUNWocfd/install
var/sadm/pkg/SUNWocfd/install/copyright
var/sadm/pkg/SUNWocfd/save
var/sadm/pkg/SUNWocfd/save/pspool
var/sadm/pkg/SUNWocfd/save/pspool/SUNWocfd
.....
.....
    usr/bin/sparcv7
usr/bin/sparcv7/savecore
usr/bin/sparcv7/gcore
....
....
usr/lib/diff3prog
usr/lib/madv.so.1
usr/lib/mpss.so.1
usr/lib/cpu
usr/lib/cpu/sparcv8plus
....
....
devices/pseudo/udp6@0:udp6
devices/pseudo/udp@0:udp
devices/pseudo/tcp@0:tcp
devices/pseudo/iwscn@0:iwscn
devices/pseudo/wc@0:wscons
devices/pseudo/tcp6@0:tcp6
devices/pseudo/sctp6@0:sctp6
var/fm/fmd/ckpt
var/fm/fmd/rsrc
kernel/drv/st.conf
kernel/drv/st.conf
kernel/drv/st.conf
kernel/drv/st.conf
#


Ejemplo 3–7 Creación de un contenedor con archivos de gran tamaño

En este ejemplo, algunos archivos tienen un tamaño superior a 4 Gbytes. cpio, la utilidad predeterminada de contenedores, no puede manipular archivos de este tamaño. El método de copia -L pax se emplea para crear contenedores cuyos archivos son de gran tamaño. El contenedor se denomina archive1. Este contenedor se copia exactamente desde el sistema principal y después se comprime. El contenedor es un duplicado exacto del sistema principal y está guardado en archive1.flar.


# flarcreate -L pax -n archive1 -c archive1.flar

Para comprobar la estructura de archivos del contenedor, escriba lo siguiente.


# flar info -l archive1.flar
aaa
aaa/bbb
aaa/bbb/ccc
aaa/bbb/ccc/ddd
aaa/bbb/fff
aaa/eee
aaa/eee
ggg


Ejemplo 3–8 Creación de un contenedor desde un sistema de archivos con raíz alternativa (/)

En este ejemplo, el nombre del contenedor es archive4. Este contenedor se copia exactamente desde el sistema principal y después se comprime. El contenedor es un duplicado exacto del sistema principal y está guardado en archive4.flar. La opción -R se usa para crear el contenedor desde otro árbol de directorios.


# flarcreate -n archive4 -c -R /x/yy/zz archive4.flar


Ejemplo 3–9 Creación de un contenedor y adición de palabras clave para describirlo

En este ejemplo, el nombre del contenedor es archive3. Este contenedor se copia exactamente desde el sistema principal y después se comprime. Las opciones añaden descripciones a la sección de identificación del contenedor, que posteriormente pueden permitir identificarlo. Para obtener más información sobre las palabras clave, sus valores y formatos, consulte Palabras clave de Solaris Flash.


# flarcreate -n archive3 -i 20000131221409 -m pumbaa \
 -e "Solaris 8 Print Server" -a "Mighty Matt" -U "Internal Finance" \
 -T server archive3.flar 

Después de crear el contenedor puede acceder a la sección de identificación que contiene la descripción detallada. Observe este ejemplo de sección de identificación del contenedor:


section_begin=identification
     files_archived_method=cpio
     files_compressed_method=compress
     files_archived_size=259323342
     files_unarchived_size=591238111
     creation_date=20000131221409
     creation_master=pumbaa
     content_name=Finance Print Server
     content_type=server
     content_description=Solaris 8 Print Server
     content_author=Mighty Matt
     content_architectures=sun4u
     creation_node=pumbaa
     creation_hardware_class=sun4u
     creation_platform=SUNW,Sun-Fire
     creation_processor=sparc
     creation_release=5.9
     creation_os_name=SunOS
     creation_os_version=s81_49
     x-department=Internal Finance

Creación de un contenedor Solaris Flash y personalización de archivos (ejemplos)


Ejemplo 3–10 Creación de un contenedor con exclusión e inclusión de archivos y directorios

En este ejemplo, el contenedor se denomina archive2. Este contenedor se copia del sistema principal, pero no se trata de una copia exacta de éste. Se excluye el contenido del directorio /aaa, pero permanece el contenido de /aaa/bbb/ccc .


# flarcreate -n archive2 -x /aaa -y /aaa/bbb/ccc  archive2.flar

Para comprobar la estructura de archivos del contenedor, escriba lo siguiente. que mostrará los directorios excluidos que contengan archivos copiados, aunque sólo los archivos que se restauraron contendrán datos:


# flar info -l aaa
aaa
aaa/bbb/ccc
aaa/bbb/ccc/ddd
aaa/bbb
ggg


Ejemplo 3–11 Creación de un contenedor con exclusión e inclusión de archivos y directorios mediante listas

En este ejemplo, el contenedor se denomina archive5. Este contenedor se copia del sistema principal, pero no se trata de una copia exacta de éste.

El archivo exclude contiene la lista siguiente:


/aaa

El archivo include contiene la lista siguiente:


/aaa/bbb/ccc

Se excluye el contenido del directorio /aaa, pero permanece el contenido de /aaa/bbb/ccc .


# flarcreate -n archive5 -X exclude -f include  archive5.flar

Para comprobar la estructura de archivos del contenedor, escriba lo siguiente. que mostrará los directorios excluidos que contengan archivos copiados, aunque sólo los archivos que se restauraron contendrán datos:


# flar info -l archive5.flar
aaa
aaa/bbb/ccc
aaa/bbb/ccc/ddd
aaa/bbb
ggg


Ejemplo 3–12 Creación de un contenedor con exclusión de archivos y directorios mediante una lista y restaurando un directorio

Puede combinar las opciones -x, -y, -X y -f. En este ejemplo se combinan las opciones -X e -y. El contenedor se denomina archive5. Este contenedor se copia del sistema principal, pero no se trata de una copia exacta de éste.

El archivo exclude contiene la lista siguiente:


/aaa

La opción -y restaura el directorio /aaa/bbb/ccc. El comando siguiente produce el contenedor.


# flarcreate -n archive5 -X exclude -y /aaa/bbb/ccc  archive5.flar

Para comprobar la estructura de archivos del contenedor, escriba lo siguiente. que mostrará los directorios excluidos que contengan archivos copiados, aunque sólo los archivos que se restauraron contendrán datos:


# flar info -l archive5.flar
aaa
aaa/bbb
aaa/bbb/ccc
aaa/bbb/ccc/ddd
ggg


Ejemplo 3–13 Creación de un contenedor con exclusión e inclusión de archivos y directorios mediante una lista con la opción -z

En este ejemplo, el contenedor se denomina archive3. Se copia del sistema principal, pero no se trata de una copia exacta de éste. Los archivos y directorios que se deben seleccionar se incluyen en el archivo filter1. Dentro de los archivos, los directorios están marcados con un signo más (+) o menos (-) para indicar qué archivos se deben excluir y cuáles restaurar. En este ejemplo se excluye el directorio /aaa con un signo menos y se restaura el subdirectorio /aaa/bbb/ccc con un signo más. El archivo filter1 contiene la lista siguiente:


- /aaa
+ /aaa/bbb/ccc

El comando siguiente produce el contenedor.


# flarcreate -n archive3 -z filter1 archive3.flar 

Para comprobar la estructura de archivos del contenedor, escriba el comando siguiente, que mostrará los directorios excluidos que contengan archivos copiados, aunque sólo los archivos que se restauraron contendrán datos:


# flar info -l archive3.flar
aaa
aaa/bbb
aaa/bbb/ccc
aaa/bbb/ccc/ddd
ggg

ProcedurePara crear un contenedor diferencial de Solaris Flash con una imagen principal actualizada

Antes de crear un contenedor diferencial, necesita dos imágenes para compararlas: una imagen principal sin cambios y una imagen principal actualizada. Una imagen es la principal sin cambios que se ha conservado inalterada. Esta imagen se almacenó y se debe acceder a ella. La segunda imagen es la principal sin cambios que se actualiza con modificaciones menores. El sistema de archivos raíz (/) es el predeterminado para la imagen nueva, pero se puede acceder a ella si se ha almacenado en cualquier otro lugar. Con estas dos imágenes, puede crear un contenedor diferencial que incluya solamente las diferencias entre ambas. Se puede instalar el contenedor diferencial en copias que se instalaron anteriormente con la imagen principal sin cambios.

  1. Preparar el sistema principal con cambios. Antes de realizar los cambios, el sistema principal debe ejecutar un duplicado del contenedor original.


    Nota –

    Se debe proteger de los cambios una copia de la imagen principal sin cambios y debe quedar disponible para el montaje posterior.


  2. Actualice la imagen principal sin cambios con cualquiera de los cambios siguientes.

    • Suprima paquetes.

    • Agregue paquetes o modificaciones.

    • Modificar los archivos de configuración.

    • Agregue soporte para dispositivos periféricos en el sistema clónico.

  3. (Opcional) Cree secuencias de comandos de personalización. Consulte Creación de las secuencias de personalización.

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

    Las funciones incluyen autorizaciones y comandos con privilegios. Para obtener más información sobre las funciones, consulte Configuring RBAC (Task Map) de System Administration Guide: Security Services.

  5. Entregue la imagen principal sin cambios en un punto de montaje.

    • Si la imagen principal sin cambios se almacena en un entorno de arranque inactivo, recupérela mediante el comando lumount.


      # lumount BE_name mountpoint
      
      nombre_entorno_de_arranque

      Especifica el entorno de arranque donde se almacena la imagen principal sin cambios

      punto_montaje

      Especifica un sistema de archivos raíz (/) donde se almacena la imagen

      En el siguiente ejemplo, el entorno de arranque inactivo se llama unchanged_master1. El punto de montaje es el directorio /a en el sistema principal.


      # lumount  unchanged_master1 /a
      
    • Si la imagen se almacena en una copia, monte ésta mediante NFS.

      1. En el sistema principal, comparta el sistema de archivos root de la copia (/) y proporcione al root principal permisos en el sistema clónico.


        # share -F nfs -o rw,root=master_system "/"
        

        sistema_principal es el nombre del sistema principal.

      2. Monte la copia en el sistema principal.


        # mount -F nfs clone_system:/ master_dir
        
        sistema_copia

        Especifica el nombre del sistema para montar

        dir_principal

        Especifica el directorio donde se almacena la imagen principal sin cambios.

    • Si guardó una imagen con el comando ufsdump, use el comando ufsrestore para recuperar una copia. Para obtener más información sobre cómo utilizar estos comandos, consulte el Capítulo 27, UFS Backup and Restore Commands (Reference) de System Administration Guide: Devices and File Systems.

  6. Cree el archivo diferencial.


    # flarcreate -n archive_name -A unchanged_master_image_dir \
      options path/filename
    
    nombre_contenedor

    Especifica el nombre asignado al contenedor. El nombre_contenedor que especifique es el valor de la palabra clave content_name. El nombre se enumera en la sección de identificación del contenedor.

    -A dir_imagen_principal_sin _cambios

    Crea un contenedor diferencial comparando una nueva imagen del sistema con la imagen que especifica el argumento dir_imagen_principal_sin_cambios. De forma predeterminada, la nueva imagen del sistema es la raíz (/). Puede cambiar la imagen predeterminada con la opción -R. dir_imagen_principal_sin cambios es un directorio donde la imagen del sistema sin cambios se almacena o se monta a través de UFS, NFS o el comando lumount.

    Puede incluir y excluir algunos archivos mediante las opciones para la selección del contenido. Para obtener una lista de las opciones, consulte Comando flar.

    options

    Para una descripción de las opciones, consulte Comando flar.

    ruta

    Especifica la ruta al directorio donde desee guardar el contenedor. Si no especifica ninguna ruta, flarcreate guarda el contenedor en el directorio actual.

    nombre_archivo

    Especifica el nombre del contenedor.

    • Si la creación del contenedor diferencial es satisfactoria, el comando flarcreate devuelve el código de salida 0.

    • Si la creación del contenedor diferencial falla, el comando flarcreate devuelve un código de salida distinto de 0.

    Si desea obtener información sobre cómo instalar un contenedor, consulte Para preparar la instalación de un contenedor Solaris Flash con el método de instalación JumpStart personalizada de Guía de instalación de Solaris 10 10/09: instalación JumpStart personalizada e instalaciones avanzadas.


Ejemplo 3–14 Creación de un contenedor diferencial con la nueva imagen principal en el sistema principal

En este ejemplo, el directorio para la imagen principal sin cambios es unchanged_master1. La nueva imagen principal que contiene cambios es el directorio root (/). Se compara la nueva imagen principal con la imagen principal sin cambios y el contenedor diferencial resultante se comprime. El contenedor diferencial se almacena en el archivo diffarchive1.flar. El contenedor incluye archivos que se suprimen, cambian o añaden, cuando se instalan.


# flarcreate -n diffarchive1 -A /a/unchanged_master1 -c diffarchive1.flar


Ejemplo 3–15 Creación de un contenedor diferencial con las imágenes almacenadas en un entorno de arranque inactivo

En este ejemplo, la imagen principal sin cambios, unchanged_master1, se almacena en un entorno de arranque inactivo y se accede a ella mediante el montaje del entorno de arranque. La nueva imagen principal es el directorio raíz (/). Se compara la nueva imagen principal con la principal sin cambios y el contenedor diferencial resultante se comprime. Se almacena el contenedor en diffarchive4.flar. El contenedor incluye archivos que se suprimen, cambian o añaden, cuando se instalan.


# lumount unchanged_master1 /a
# flarcreate -n diffarchive4 -A /a -c  diffarchive4.flar

ProcedurePara crear un contenedor diferencial Solaris Flash mediante Modernización automática de Solaris

Para administrar las actualizaciones de sistemas, con Modernización automática de Solaris puede copiar el sistema operativo, lo cual crea un nuevo entorno de arranque. Esta copia se puede comparar con el sistema principal que se ha actualizado con cambios sin importancia. El contenedor diferencial Solaris Flash resultante se puede instalar entonces en los sistemas clonados.

Si desea más información sobre Modernización automática de Solaris, consulte el Capítulo 2, Modernización automática de Solaris (información general) de Guía de instalación de Solaris 10 10/09: Modernización automática de Solaris y planificación de la modernización.

  1. Desde el sistema principal sin cambios, cree un nuevo entorno de arranque mediante el comando lucreate.

    Este nuevo entorno de arranque es una copia exacta del sistema principal y se puede usar para crear el contenedor diferencial.

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

    Las funciones incluyen autorizaciones y comandos con privilegios. Para obtener más información sobre las funciones, consulte Configuring RBAC (Task Map) de System Administration Guide: Security Services.

  3. Compruebe el estado de los dos entornos de arranque.


    # lustatus copy_BE
    
    boot environment   Is        Active  Active     Can	    Copy
    Name               Complete  Now	 OnReboot   Delete	 Status
    ------------------------------------------------------------------------
    master_BE          yes       yes     yes        no       -     
    copy_BE            yes       no      no         yes      -  
  4. Actualice la imagen principal con cualquiera de los cambios siguientes.

    • Suprima paquetes.

    • Agregue paquetes o modificaciones.

    • Modificar los archivos de configuración.

    • Agregue soporte para dispositivos periféricos en el sistema clónico.

  5. (Opcional) Cree secuencias de comandos de personalización. Consulte Creación de las secuencias de personalización.

  6. Cree el archivo diferencial.

    1. Monte el entorno de arranque recién creado.


      # lumount BE_name /a
      
    2. Cree el contenedor diferencial comparando el sistema principal en el entorno de arranque.


       # flarcreate -n archive_name -A new_BE_dir\  options path/filename
      
      nombre_contenedor

      Especifica el nombre asignado al contenedor.

      -A nuevo_dir_entorno_arranque

      Crea un contenedor diferencial comparando una nueva imagen del sistema con la imagen que especifica el argumento nuevo_dir_entorno_arranque.

      options

      Para obtener una lista de las opciones, consulte Comando flar.

      ruta

      Especifica la ruta al directorio donde desee guardar el contenedor. Si no especifica ninguna ruta, flarcreate guarda el contenedor en el directorio actual.

      nombre_archivo

      Especifica el nombre del contenedor.

    3. Desmonte el nuevo entorno de arranque.


      # luumount copy_BE
      

    El comando flarcreate devuelve un código de salida.

    • Si la creación es satisfactoria se devuelve un código de salida de 0.

    • Si se produce un fallo se devuelve un código de salida distinto de cero.

  7. Instale el contenedor diferencial Solaris Flash mediante un perfil JumpStart.

    Los sistemas clónicos que se piense instalar deben ser un duplicado del sistema principal original; de lo contrario, la instalación fallará.

    El perfil del ejemplo siguiente instala un contenedor diferencial, test.diff, en el dispositivo c1t1d0s0.


    JumpStart profile
    -----------------------
    install_type  flash_update
    archive_location http server /rw/test.diff
    root_device c1t1d0s0

Ejemplo 3–16 Creación de un contenedor diferencial mediante Modernización automática de Solaris

master_BE es el nombre del entorno de arranque actual. entorno_arranque_copia es el nombre del nuevo entorno de arranque. Los sistemas de archivo root (/) y /usr se ubican en s0 y s3 . El comando lustatus informa de que la copia del nuevo entorno de arranque está terminada. El paquete SUNWman se añade al sistema principal. Después de actualizar el sistema principal agregando el paquete SUNWman, el comando flarcreate crea un contenedor diferencial que compara el entorno de arranque principal cambiado y el nuevo sin cambiar.


# lucreate -c master_BE  -m /:/dev/dsk/c0t1d0s0:ufs \
-m /usr:/dev/dsk/c0t1d0s3:ufs -n copy_BE
# lustatus
# pkgadd SUNWman
# lumount copy_BE /a
# flarcreate -n test.diff -c -A /a /net/server/export/test.diff
# luumount copy_BE

Instale el contenedor diferencial en los sistemas clonados. Si desea obtener información sobre cómo instalar un contenedor, consulte Para preparar la instalación de un contenedor Solaris Flash con el método de instalación JumpStart personalizada de Guía de instalación de Solaris 10 10/09: instalación JumpStart personalizada e instalaciones avanzadas.

La siguiente imagen muestra la creación de un nuevo entorno de arranque utilizando el comando lucreate.

El contexto describe la ilustración.