Guia de administração do ZFS Oracle Solaris

Migrando um sistema de arquivos raiz UFS para um sistema de arquivos raiz ZFS (Oracle Solaris Live Upgrade)

Os recursos relacionados do Oracle Solaris Live Upgrade estão disponíveis e, se estiverem relacionados aos componentes UFS, funcionam como nas versões anteriores do Solaris.

Os recursos a seguir também estão disponíveis:

Para informações detalhadas sobre a instalação do Oracle Solaris e os recursos do Oracle Solaris Live Upgrade, consulte Oracle Guia de instalação do Solaris 10 9/10: Solaris Live Upgrade e planejamento da atualização.

O processo básico para migrar de um sistema de arquivos raiz UFS para um sistema de arquivos raiz ZFS é o seguinte:

Para informações sobre requisitos do ZFS e do Oracle Solaris Live Upgrade, consulte Requisitos de instalação do Oracle Solaris e Oracle Solaris Live Upgrade para suporte ZFS.

Problemas de migração ZFS com o Oracle Solaris Live Upgrade

Revise a lista de problemas a seguir antes de utilizar o Oracle Solaris Live Upgrade para migrar o sistema de arquivos raiz UFS para um ZFS:

Utilizando o Oracle Solaris Live Upgrade para migrar para um sistema de arquivos raiz ZFS (sem regiões)

Os exemplos seguinte mostram como migrar um sistema de arquivos raiz UFS para ZFS.

Se for migrar ou atualizar um sistema com regiões, consulte as seguintes seções:


Exemplo 5–3 Utilizando o Oracle Solaris Live Upgrade para migrar um sistema de arquivos raiz UFS para um sistema de arquivos raiz ZFS

O exemplo seguinte mostra como criar um BE de um sistema de arquivos raiz ZFS a partir de um sistema de arquivos raiz UFS. O BE atual, ufsBE, que contém um sistema de arquivos raiz UFS, é identificado pela opção -c. Se a opção - c não for incluída, o nome do BE atual será, por padrão, o nome do dispositivo. O novo BE, zfsBE, é identificado pela opção -n. Um pool de armazenamento ZFS deve existir antes da operação com lucreate.

O conjunto de armazenamento ZFS deve ser criado com segmentos em vez de com um disco inteiro para que possa ser atualizável e inicializável. Antes de criar o novo grupo, certifique-se de que os discos a serem utilizados no grupo tenham uma legenda SMI (VTOC) em vez de uma legenda EFI. Se o disco for remarcado com uma legenda SMI, certifique-se de que o processo de rotulação não altera o esquema de particionamento. Na maioria dos casos, toda capacidade do disco deve estar nos segmentos destinados ao conjunto raiz.


# zpool create rpool mirror c1t2d0s0 c2t1d0s0
# lucreate -c ufsBE -n zfsBE -p rpool
Analyzing system configuration.
No name for current boot environment.
Current boot environment is named <ufsBE>.
Creating initial configuration for primary boot environment <ufsBE>.
The device </dev/dsk/c1t0d0s0> is not a root device for any boot environment; cannot get BE ID.
PBE configuration successful: PBE name <ufsBE> PBE Boot Device </dev/dsk/c1t0d0s0>.
Comparing source boot environment <ufsBE> 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/c1t2d0s0> is not a root device for any boot environment; cannot get BE ID.
Creating configuration for boot environment <zfsBE>.
Source boot environment is <ufsBE>.
Creating boot environment <zfsBE>.
Creating file systems on boot environment <zfsBE>.
Creating <zfs> file system for </> in zone <global> on <rpool/ROOT/zfsBE>.
Populating file systems on boot environment <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 </rpool/ROOT>.
Creating compare database for file system </>.
Updating compare databases on boot environment <zfsBE>.
Making boot environment <zfsBE> bootable.
Creating boot_archive for /.alt.tmp.b-qD.mnt
updating /.alt.tmp.b-qD.mnt/platform/sun4u/boot_archive
Population of boot environment <zfsBE> successful.
Creation of boot environment <zfsBE> successful.

Após a operação com lucreate ter terminado, use o comando lustatus para exibir o status do BE. Por exemplo:


# lustatus
Boot Environment           Is       Active Active    Can    Copy      
Name                       Complete Now    On Reboot Delete Status    
-------------------------- -------- ------ --------- ------ ----------
ufsBE                      yes      yes    yes       no     -         
zfsBE                      yes      no     no        yes    -         

Em seguida, consulte a lista de componentes do ZFS. Por exemplo:


# zfs list
NAME                   USED  AVAIL  REFER  MOUNTPOINT
rpool                 7.17G  59.8G  95.5K  /rpool
rpool/ROOT            4.66G  59.8G    21K  /rpool/ROOT
rpool/ROOT/zfsBE      4.66G  59.8G  4.66G  /
rpool/dump               2G  61.8G    16K  -
rpool/swap             517M  60.3G    16K  -

Depois, use o comandoluactivate para ativar o novo BE do ZFS. Por exemplo:


# luactivate zfsBE
A Live Upgrade Sync operation will be performed on startup of boot environment <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.

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

Depois, reinicialize o sistema para o BE do ZFS.


# init 6

Comprove que o BE do ZFS está ativo.


# lustatus
Boot Environment           Is       Active Active    Can    Copy      
Name                       Complete Now    On Reboot Delete Status    
-------------------------- -------- ------ --------- ------ ----------
ufsBE                      yes      no     no        yes    -         
zfsBE                      yes      yes    yes       no     -      

Se voltar ao BE do UFS, você terá que reimportar os conjuntos de armazenamento ZFS que foram criados enquanto o BE do ZFS estava sendo inicializado, porque tais grupos não estão automaticamente disponíveis no BE do UFS.

Se o BE do UFS já não for mais necessário, você pode removê-lo com o comando ludelete.



Exemplo 5–4 Utilizando o Oracle Solaris Live Upgrade para criar um BE do ZFS a partir de um BE do ZFS

A criação de um BE do ZFS a partir de um BE do ZFS no mesmo pool é muito rápida porque esta operação usa os recursos de instantâneos e clones do ZFS. Se o BE estiver no mesmo conjunto ZFS, por exemplo, a opção -p é omitida.

Se possuir vários BEs de ZFS, faça o seguinte para selecionar a partir de qual BE inicializar:

Para obter mais informações, consulte o Exemplo 5–9.


# lucreate -n zfs2BE
Analyzing system configuration.
No name for current boot environment.
INFORMATION: The current boot environment is not named - assigning name <zfsBE>.
Current boot environment is named <zfsBE>.
Creating initial configuration for primary boot environment <zfsBE>.
The device </dev/dsk/c1t0d0s0> is not a root device for any boot environment; cannot get BE ID.
PBE configuration successful: PBE name <zfsBE> PBE Boot Device </dev/dsk/c1t0d0s0>.
Comparing source boot environment <zfsBE> 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.
Creating configuration for boot environment <zfs2BE>.
Source boot environment is <zfsBE>.
Creating boot environment <zfs2BE>.
Cloning file systems from boot environment <zfsBE> to create boot environment <zfs2BE>.
Creating snapshot for <rpool/ROOT/zfsBE> on <rpool/ROOT/zfsBE@zfs2BE>.
Creating clone for <rpool/ROOT/zfsBE@zfs2BE> on <rpool/ROOT/zfs2BE>.
Setting canmount=noauto for </> in zone <global> on <rpool/ROOT/zfs2BE>.
Population of boot environment <zfs2BE> successful.
Creation of boot environment <zfs2BE> successful.


Exemplo 5–5 Atualizando o BE do ZFS (luupgrade)

Você pode atualizar o BE do ZFS com correções ou pacotes adicionais.

O processo básico é:


# 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     -   
# luupgrade -p -n zfsBE -s /net/system/export/s10up/Solaris_10/Product SUNWchxge
Validating the contents of the media </net/install/export/s10up/Solaris_10/Product>.
Mounting the BE <zfsBE>.
Adding packages to the BE <zfsBE>.

Processing package instance <SUNWchxge> from </net/install/export/s10up/Solaris_10/Product>

Chelsio N110 10GE NIC Driver(sparc) 11.10.0,REV=2006.02.15.20.41
Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.

This appears to be an attempt to install the same architecture and
version of a package which is already installed.  This installation
will attempt to overwrite this package.

Using </a> as the package base directory.
## Processing package information.
## Processing system information.
   4 package pathnames are already properly installed.
## Verifying package dependencies.
## Verifying disk space requirements.
## Checking for conflicts with packages already installed.
## Checking for setuid/setgid programs.

This package contains scripts which will be executed with super-user
permission during the process of installing this package.

Do you want to continue with the installation of <SUNWchxge> [y,n,?] y
Installing Chelsio N110 10GE NIC Driver as <SUNWchxge>

## Installing part 1 of 1.
## Executing postinstall script.

Installation of <SUNWchxge> was successful.
Unmounting the BE <zfsBE>.
The package add to the BE <zfsBE> completed.

Utilizando o Oracle Solaris Live Upgrade para migrar ou atualizar um sistema com regiões (Solaris 10 10/08)

É possível utilizar o Oracle Solaris Live Upgrade para migrar um sistema com regiões, mas as configurações suportadas são limitadas na versão Solaris 10 10/08. Se estiver instalando ou atualizando para pelo menos o o Solaris 10 5/09, mais configurações de região são suportadas. Para mais informações, consulte Utilizando o Oracle Solaris Live Upgrade para migrar ou atualizar um sistema com regiões (no mínimo Solaris 10 5/09).

Esta seção descreve como configurar e instalar um sistema com regiões para que possa ser atualizado e ter patches instalados com o Oracle Solaris Live Upgrade. Se for migrar para um sistema de arquivos raiz ZFS sem regiões, consulte Utilizando o Oracle Solaris Live Upgrade para migrar para um sistema de arquivos raiz ZFS (sem regiões).

Se for migrar ou configurar um sistema com regiões no Solaris 10 10/08, consulte os seguintes procedimentos:

Siga estes procedimentos recomendados para configurar regiões em um sistema com sistemas de arquivos raiz ZFS para garantir que o Live Upgrade possa ser utilizado em tal sistema.

ProcedureComo migrar um sistema de arquivos raiz UFS com raízes de regiões em UFS para um sistema de arquivos raiz ZFS (Solaris 10 10/08)

Este procedimento explica como migrar de um sistema de arquivos raiz UFS com regiões instaladas para um sistema de arquivos de raiz e configuração de raiz de região ZFS que pode ser atualizada ou ter patches instalado.

Nas etapas a seguir, o nome do conjunto de exemplo é rpool e o nome de exemplo do ambiente de inicialização ativo é s10BE*.

  1. Atualize os sistema para o Solaris 10 10/08 se estiver executando uma versão anterior do Solaris 10.

    Para informações sobre atualizações de um sistema que executa o Solaris 10, consulte Oracle Guia de instalação do Solaris 10 9/10: Solaris Live Upgrade e planejamento da atualização.

  2. Crie o conjunto raiz.


    # zpool create rpool mirror c0t1d0 c1t1d0
    

    Para obter informações sobre os requisitos do conjunto raiz, consulte Requisitos de instalação do Oracle Solaris e Oracle Solaris Live Upgrade para suporte ZFS.

  3. Comprove que as regiões do ambiente do UFS estejam inicializadas.

  4. Crie o novo ambiente de inicialização do ZFS.


    # lucreate -n s10BE2 -p rpool
    

    Este comando estabelece os conjuntos de dados no conjunto raiz do novo ambiente de inicialização e copia o ambiente de inicialização atual (incluindo as regiões) em tais conjuntos de dados.

  5. Ative o novo ambiente de inicialização do ZFS.


    # luactivate s10BE2
    

    Agora, o sistema está executando um sistema de arquivos raiz ZFS, mas as raízes de região no UFS ainda estão no sistema de arquivos raiz UFS. É necessário completar as próximas etapas para migrar totalmente as regiões UFS para uma configuração ZFS suportada.

  6. Reinicialize o sistema.


    # init 6
    
  7. Migre as regiões para um BE do ZFS.

    1. Inicialize as regiões.

    2. Crie outro BE do ZFS dentro do grupo.


      # lucreate s10BE3
      
    3. Ative o novo ambiente de inicialização.


      # luactivate s10BE3
      
    4. Reinicialize o sistema.


      # init 6
      

      Esta etapa verifica se o BE do ZFS e as regiões estão inicializados.

  8. Resolva qualquer potencial problema de ponto de montagem.

    Devido a um erro no Oracle Solaris Live Upgrade, o ambiente de inicialização inativo pode falhar ao ser inicializado porque o conjunto de dados ZFS ou o conjunto de dados ZFS da região no ambiente de inicialização possui um ponto de montagem inválido.

    1. Revise a saída do zfs list.

      Procure os pontos de montagem temporários incorretos. Por exemplo:


      # 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

      O ponto de montagem do BE do ZFS raiz (rpool/ROOT/s10u6) deve ser /.

    2. Redefina os pontos de montagem do BE do ZFS e seus conjuntos de dados.

      Por exemplo:


      # zfs inherit -r mountpoint rpool/ROOT/s10u6
      # zfs set mountpoint=/ rpool/ROOT/s10u6
      
    3. Reinicialize o sistema.

      Quando a opção para inicializar um ambiente de inicialização específico for apresentada, tanto no menu GRUB quanto no prompt do OpenBoot PROM, selecione o ambiente de inicialização cujos pontos de montagem acabam de ser corrigidos.

ProcedureComo configurar um sistema de arquivos raiz ZFS com raízes de região em ZFS (Solaris 10 10/08)

Este procedimento explica como configurar um sistema de arquivos raiz ZFS e a configuração da raiz de região ZFS que pode ser atualizada ou ter patches instalados. Nesta configuração, as raízes de região ZFS são criadas como conjuntos de dados ZFS.

Nas etapas a seguir, o nome do conjunto de exemplo é rpool e o nome de exemplo do ambiente de inicialização ativo é s10BE*. O nome do conjunto de dados das regiões pode ser qualquer nome de conjunto de dados permitido. No exemplo a seguir, o nome do conjunto de dados das regiões é regiões.

  1. Instale o sistema com uma raiz ZFS utilizando o instalador de texto interativo Solaris ou o método de instalação Solaris JumpStart.

    Para informações sobre a instalação de um sistema de arquivos raiz ZFS utilizando o método da instalação inicial ou o método Solaris JumpStart, consulte Instalando um sistema de arquivos raiz ZFS (Instalação inicial) ou Instalando um sistema de arquivos raiz ZFS (instalação Oracle Solaris JumpStart).

  2. Inicialize o sistema a partir do conjunto raiz recém-criado.

  3. Crie um conjunto de dados para agrupar as raízes da região.

    Por exemplo:


    # zfs create -o canmount=noauto rpool/ROOT/s10BE/zones
    

    Definir o valor canmount para a propriedade noauto impede que o conjunto de dados seja montado de forma diferente da ação explícita do Oracle Solaris Live Upgrade e do código de inicialização do sistema.

  4. Monte o conjunto de dados de regiões recém-criado.


    # zfs mount rpool/ROOT/s10BE/zones
    

    O conjunto de dados é montado em /zones.

  5. Crie e monte um conjunto de dados para cada raiz de região.


    # zfs create -o canmount=noauto rpool/ROOT/s10BE/zones/zonerootA
    # zfs mount rpool/ROOT/s10BE/zones/zonerootA
    
  6. Defina as permissões apropriadas no diretório raiz da região.


    # chmod 700 /zones/zonerootA
    
  7. Configure a região, definindo o caminho da região da seguinte forma:


    # zonecfg -z zoneA
        zoneA: No such zone configured
        Use 'create' to begin configuring a new zone.
        zonecfg:zoneA> create
        zonecfg:zoneA> set zonepath=/zones/zonerootA
    

    Você pode ativar as regiões para que se inicializem automaticamente quando o sistema for inicializado usando a seguinte sintaxe:


    zonecfg:zoneA> set autoboot=true
    
  8. Instale a região.


    # zoneadm -z zoneA install
    
  9. Inicialize a região.


    # zoneadm -z zoneA boot
    

ProcedureComo atualizar ou aplicar correções em um sistema de arquivos raiz ZFS com raízes de região em ZFS (Solaris 10 10/08)

Utilize este procedimento quando precisar atualizar ou instalar patches em um sistema de arquivos raiz ZFS com raízes de região em ZFS. Estas atualizações podem ser tanto uma melhora do sistema quanto uma aplicação de patches.

Nas etapas a seguir, newBE é o nome de exemplo do ambiente de inicialização que é atualizado ou tem patches instalados.

  1. Crie um ambiente de inicialização para ser atualizado ou aplicar correções.


    # lucreate -n newBE
    

    O ambiente de inicialização existente, incluindo todas as regiões, é clonado. São criados novos conjuntos de dados para cada conjunto de dados do ambiente de inicialização original. Os novos conjuntos de dados são criados no mesmo pool do pool raiz atual.

  2. Selecione um dos procedimentos a seguir para atualizar o sistema ou aplicar patches ao novo ambiente de inicialização:

    • Atualize o sistema.


      # luupgrade -u -n newBE -s /net/install/export/s10u7/latest
      

      Onde a opção -s especifica a localização de um meio de instalação do Solaris.

    • Aplique patches no novo ambiente de inicialização.


       # luupgrade -t -n newBE -t -s /patchdir 139147-02 157347-14
      
  3. Ative o novo ambiente de inicialização.


    # luactivate newBE
    
  4. Inicialize a partir do ambiente de inicialização recém ativado.


    # init 6
    
  5. Resolva qualquer potencial problema de ponto de montagem.

    Devido a um erro no recurso do Oracle Solaris Live Upgrade, o ambiente de inicialização inativo pode falhar ao ser inicializado porque o conjunto de dados ZFS ou o conjunto de dados ZFS da região no ambiente de inicialização possuem um ponto de montagem inválido.

    1. Revise a saída do zfs list.

      Procure os pontos de montagem temporários incorretos. Por exemplo:


      # zfs list -r -o name,mountpoint rpool/ROOT/newBE
      
      NAME                               MOUNTPOINT
      rpool/ROOT/newBE                   /.alt.tmp.b-VP.mnt/
      rpool/ROOT/newBE/zones             /.alt.tmp.b-VP.mnt/zones
      rpool/ROOT/newBE/zones/zonerootA   /.alt.tmp.b-VP.mnt/zones/zonerootA

      O ponto de montagem do BE do ZFS raiz (rpool/ROOT/newBE) deve ser /.

    2. Redefina os pontos de montagem do BE do ZFS e seus conjuntos de dados.

      Por exemplo:


      # zfs inherit -r mountpoint rpool/ROOT/newBE
      # zfs set mountpoint=/ rpool/ROOT/newBE
      
    3. Reinicialize o sistema.

      Quando a opção para inicializar um ambiente de inicialização específico for apresentada, tanto no menu GRUB quanto no prompt do OpenBoot PROM, selecione o ambiente de inicialização cujos pontos de montagem acabam de ser corrigidos.

Utilizando o Oracle Solaris Live Upgrade para migrar ou atualizar um sistema com regiões (no mínimo Solaris 10 5/09)

É possível utilizar o recurso Oracle Solaris Live Upgrade para migrar ou atualizar um sistema com regiões a partir da versão Solaris 10 10/08. Configurações adicionais de regiões esparsas ou completas de raiz são suportadas pelo Live Upgrade, começando com a versão Solaris 10 5/09.

Esta seção descreve como configurar e instalar um sistema com regiões para que possa ser atualizado e ter o patch instalado com o Oracle Solaris Live Upgrade a partir da versão Solaris 10 5/09. Se for migrar para um sistema de arquivos raiz ZFS sem regiões, consulte Utilizando o Oracle Solaris Live Upgrade para migrar para um sistema de arquivos raiz ZFS (sem regiões).

Considere os pontos a seguir ao utilizar o Live Upgrade com ZFS e regiões começando com a versão Solaris 10 5/09:

Se estiver migrando ou configurando um sistema com regiões começando com a versão Solaris 10 5/09, revise as informações a seguir:

ZFS suportado com informações de configuração de raiz da região (pelo menos Solaris 10 5/09)

Revise as configurações de região suportadas antes de utilizar o recurso Oracle Solaris Live Upgrade para migrar ou atualizar um sistema com regiões.

ProcedureComo criar um BE do ZFS com um sistema de arquivos raiz ZFS e uma raiz de região (pelo menos Solaris 10 5/09)

Utilize este procedimento depois de ter efetuado uma instalação inicial pelo menos da versão Solaris 10 5/09 para criar um sistema de arquivos raiz ZFS. Utilize também este procedimento depois de ter utilizado o recurso luupgrade para atualizar um sistema de arquivos raiz ZFS para pelo menos a versão Solaris 10 5/09. Um BE do ZFS criado através deste procedimento pode, portanto, ser atualizado e receber correções.

Nas etapas a seguir, o sistema Oracle Solaris 10 9/10 de exemplo apresenta um sistema de arquivos raiz ZFS e um conjunto de dados de região de raiz em /rpool/zones. É criado um BE do ZFS denominado zfs2BE que pode ser atualizado e ter patches instalados.

  1. Revise os sistemas de arquivos ZFS existentes.


    # zfs list
    NAME                   USED  AVAIL  REFER  MOUNTPOINT
    rpool                 7.26G  59.7G    98K  /rpool
    rpool/ROOT            4.64G  59.7G    21K  legacy
    rpool/ROOT/zfsBE      4.64G  59.7G  4.64G  /
    rpool/dump            1.00G  59.7G  1.00G  -
    rpool/export            44K  59.7G    23K  /export
    rpool/export/home       21K  59.7G    21K  /export/home
    rpool/swap               1G  60.7G    16K  -
    rpool/zones            633M  59.7G   633M  /rpool/zones
  2. Certifique-se de que as regiões estejam instaladas e inicializadas.


    # zoneadm list -cv
      ID NAME             STATUS     PATH                           BRAND    IP    
       0 global           running    /                              native   shared
       2 zfszone          running    /rpool/zones                   native   shared
  3. Crie o BE do ZFS.


    # lucreate -n zfs2BE
    Analyzing system configuration.
    No name for current boot environment.
    INFORMATION: The current boot environment is not named - assigning name <zfsBE>.
    Current boot environment is named <zfsBE>.
    Creating initial configuration for primary boot environment <zfsBE>.
    The device </dev/dsk/c1t0d0s0> is not a root device for any boot environment; cannot get BE ID.
    PBE configuration successful: PBE name <zfsBE> PBE Boot Device </dev/dsk/c1t0d0s0>.
    Comparing source boot environment <zfsBE> 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.
    Creating configuration for boot environment <zfs2BE>.
    Source boot environment is <zfsBE>.
    Creating boot environment <zfs2BE>.
    Cloning file systems from boot environment <zfsBE> to create boot environment <zfs2BE>.
    Creating snapshot for <rpool/ROOT/zfsBE> on <rpool/ROOT/zfsBE@zfs2BE>.
    Creating clone for <rpool/ROOT/zfsBE@zfs2BE> on <rpool/ROOT/zfs2BE>.
    Setting canmount=noauto for </> in zone <global> on <rpool/ROOT/zfs2BE>.
    Population of boot environment <zfs2BE> successful.
    Creation of boot environment <zfs2BE> successful.
  4. Ative o BE do ZFS.


    # lustatus
    Boot Environment           Is       Active Active    Can    Copy      
    Name                       Complete Now    On Reboot Delete Status    
    -------------------------- -------- ------ --------- ------ ----------
    zfsBE                      yes      yes    yes       no     -         
    zfs2BE                     yes      no     no        yes    -         
    # luactivate zfs2BE
    A Live Upgrade Sync operation will be performed on startup of boot environment <zfs2BE>.
    .
    .
    .
    # init 6
    
  5. Comprove se os sistemas de arquivos ZFS e as regiões foram criados no novo BE.


    # zfs list
    NAME                               USED  AVAIL  REFER  MOUNTPOINT
    rpool                             7.38G  59.6G    98K  /rpool
    rpool/ROOT                        4.72G  59.6G    21K  legacy
    rpool/ROOT/zfs2BE                 4.72G  59.6G  4.64G  /
    rpool/ROOT/zfs2BE@zfs2BE          74.0M      -  4.64G  -
    rpool/ROOT/zfsBE                  5.45M  59.6G  4.64G  /.alt.zfsBE
    rpool/dump                        1.00G  59.6G  1.00G  -
    rpool/export                        44K  59.6G    23K  /export
    rpool/export/home                   21K  59.6G    21K  /export/home
    rpool/swap                           1G  60.6G    16K  -
    rpool/zones                       17.2M  59.6G   633M  /rpool/zones
    rpool/zones-zfsBE                  653M  59.6G   633M  /rpool/zones-zfsBE
    rpool/zones-zfsBE@zfs2BE          19.9M      -   633M  -
    # zoneadm list -cv
      ID NAME             STATUS     PATH                           BRAND    IP    
       0 global           running    /                              native   shared
       - zfszone          installed  /rpool/zones                   native   shared

ProcedureComo atualizar ou instalar patch em um sistema de arquivos raiz ZFS com raízes de região (pelo menos Solaris 10 5/09)

Utilize este procedimento quando for necessário atualizar ou instalar patches em um sistema de arquivos raiz ZFS com raízes de região na versão Solaris 10 5/09, no mínimo. Estas atualizações podem ser tanto uma melhora do sistema quanto uma aplicação de patches.

Nas etapas a seguir, zfs2BE é o nome de exemplo do ambiente de inicialização no qual se realiza a atualização ou se aplicam as correções.

  1. Revise os sistemas de arquivos ZFS existentes.


    # zfs list
    NAME                               USED  AVAIL  REFER  MOUNTPOINT
    rpool                             7.38G  59.6G   100K  /rpool
    rpool/ROOT                        4.72G  59.6G    21K  legacy
    rpool/ROOT/zfs2BE                 4.72G  59.6G  4.64G  /
    rpool/ROOT/zfs2BE@zfs2BE          75.0M      -  4.64G  -
    rpool/ROOT/zfsBE                  5.46M  59.6G  4.64G  /
    rpool/dump                        1.00G  59.6G  1.00G  -
    rpool/export                        44K  59.6G    23K  /export
    rpool/export/home                   21K  59.6G    21K  /export/home
    rpool/swap                           1G  60.6G    16K  -
    rpool/zones                       22.9M  59.6G   637M  /rpool/zones
    rpool/zones-zfsBE                  653M  59.6G   633M  /rpool/zones-zfsBE
    rpool/zones-zfsBE@zfs2BE          20.0M      -   633M  -
  2. Certifique-se de que as regiões estejam instaladas e inicializadas.


    # zoneadm list -cv
      ID NAME             STATUS     PATH                           BRAND    IP    
       0 global           running    /                              native   shared
       5 zfszone          running    /rpool/zones                   native   shared
  3. Crie um BE do ZFS para ser atualizado ou aplicar as correções.


    # lucreate -n zfs2BE
    Analyzing system configuration.
    Comparing source boot environment <zfsBE> 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.
    Creating configuration for boot environment <zfs2BE>.
    Source boot environment is <zfsBE>.
    Creating boot environment <zfs2BE>.
    Cloning file systems from boot environment <zfsBE> to create boot environment <zfs2BE>.
    Creating snapshot for <rpool/ROOT/zfsBE> on <rpool/ROOT/zfsBE@zfs2BE>.
    Creating clone for <rpool/ROOT/zfsBE@zfs2BE> on <rpool/ROOT/zfs2BE>.
    Setting canmount=noauto for </> in zone <global> on <rpool/ROOT/zfs2BE>.
    Creating snapshot for <rpool/zones> on <rpool/zones@zfs10092BE>.
    Creating clone for <rpool/zones@zfs2BE> on <rpool/zones-zfs2BE>.
    Population of boot environment <zfs2BE> successful.
    Creation of boot environment <zfs2BE> successful.
  4. Selecione um dos procedimentos a seguir para atualizar o sistema ou instalar patches ao novo ambiente de inicialização:

    • Atualize o sistema.


      # luupgrade -u -n zfs2BE -s /net/install/export/s10up/latest
      

      Onde a opção -s especifica a localização de um meio de instalação do Solaris.

      Este processo pode demorar um longo tempo.

      Para obter um exemplo completo do processo de luupgrade, consulte o Exemplo 5–6.

    • Aplique patches no novo ambiente de inicialização.


      # luupgrade -t -n zfs2BE -t -s /patchdir patch-id-02 patch-id-04
      
  5. Ative o novo ambiente de inicialização.


    # lustatus
    Boot Environment           Is       Active Active    Can    Copy      
    Name                       Complete Now    On Reboot Delete Status    
    -------------------------- -------- ------ --------- ------ ----------
    zfsBE                      yes      yes    yes       no     -         
    zfs2BE                     yes      no     no        yes    -    
    # luactivate zfs2BE
    A Live Upgrade Sync operation will be performed on startup of boot environment <zfs2BE>.
    .
    .
    .
  6. Inicialize a partir do ambiente de inicialização recém ativado.


    # init 6
    

Exemplo 5–6 Atualizando um sistema de arquivos raiz ZFS com raiz de região para o sistema de arquivos raiz ZFS do Oracle Solaris 10 9/10

Neste exemplo, um BE do ZFS (zfsBE), criado em um sistema Solaris 10 10/09 com um sistema de arquivos raiz ZFS em um grupo não-raiz, é atualizado para a versão do Solaris 10 9/10. Este processo pode ser demorado. A seguir, o BE atualizado (zfs2BE) é ativado. Certifique-se de que as regiões estejam instaladas e inicializadas antes de tentar atualizar.

Neste exemplo, o grupo zonepool e o conjunto de dados /zonepool/zones e a região zfszone são criados como segue:


# zpool create zonepool mirror c2t1d0 c2t5d0
# zfs create zonepool/zones
# chmod 700 zonepool/zones
# zonecfg -z zfszone
zfszone: No such zone configured
Use 'create' to begin configuring a new zone.
zonecfg:zfszone> create
zonecfg:zfszone> set zonepath=/zonepool/zones
zonecfg:zfszone> verify
zonecfg:zfszone> exit
# zoneadm -z zfszone install
cannot create ZFS dataset zonepool/zones: dataset already exists
Preparing to install zone <zfszone>.
Creating list of files to copy from the global zone.
Copying <8960> files to the zone.
.
.
.

# zoneadm list -cv
  ID NAME             STATUS     PATH                           BRAND    IP    
   0 global           running    /                              native   shared
   2 zfszone          running    /zonepool/zones                native   shared

# lucreate -n zfsBE
.
.
.
# luupgrade -u -n zfsBE -s /net/install/export/s10up/latest
40410 blocks
miniroot filesystem is <lofs>
Mounting miniroot at </net/system/export/s10up/latest/Solaris_10/Tools/Boot>
Validating the contents of the media </net/system/export/s10up/latest>.
The media is a standard Solaris media.
The media contains an operating system upgrade image.
The media contains <Solaris> version <10>.
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.
Updating package information on boot environment <zfsBE>.
Package information successfully updated on boot environment <zfsBE>.
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.
Installing failsafe
Failsafe install is complete.
# luactivate zfsBE
# init 6
# 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     -         
# zoneadm list -cv
  ID NAME             STATUS     PATH                           BRAND    IP    
   0 global           running    /                              native   shared
   - zfszone          installed  /zonepool/zones                native   shared

ProcedureComo migrar um sistema de arquivos raiz UFS com raiz de região para um sistema de arquivos raiz ZFS (pelo menos Solaris 10 5/09)

Utilize este procedimento para migrar um sistema com um sistema de arquivos raiz UFS e uma raiz de região para a versão Solaris 10 5/09, pelo menos. Em seguida, utilize o Oracle Solaris Live Upgrade para criar um BE do ZFS.

Nas etapas a seguir, o nome do BE do UFS de exemplo é c0t1d0s0, a raiz da região UFS é zonepool/zfszone, e o BE de raiz ZFS é zfs .

  1. Atualize o sistema para, no mínimo, a versão Solaris 10 5/09 se estiver executando uma versão anterior do Solaris 10.

    Para mais informações sobre atualizações de um sistema que executa o Solaris 10, consulte Oracle Guia de instalação do Solaris 10 9/10: Solaris Live Upgrade e planejamento da atualização.

  2. Crie o conjunto raiz.

    Para obter informações sobre os requisitos do conjunto raiz, consulte Requisitos de instalação do Oracle Solaris e Oracle Solaris Live Upgrade para suporte ZFS.

  3. Comprove que as regiões do ambiente do UFS estejam inicializadas.


    # zoneadm list -cv
      ID NAME             STATUS     PATH                           BRAND    IP    
       0 global           running    /                              native   shared
       2 zfszone          running    /zonepool/zones                native   shared
  4. Crie o novo ambiente de inicialização do ZFS.


    # lucreate -c c1t1d0s0 -n zfsBE -p rpool
    

    Este comando estabelece os conjuntos de dados no conjunto raiz do novo ambiente de inicialização e copia o ambiente de inicialização atual (incluindo as regiões) em tais conjuntos de dados.

  5. Ative o novo ambiente de inicialização do ZFS.


    # lustatus
    Boot Environment           Is       Active Active    Can    Copy      
    Name                       Complete Now    On Reboot Delete Status    
    -------------------------- -------- ------ --------- ------ ----------
    c1t1d0s0                   yes      no     no        yes    -         
    zfsBE                      yes      yes    yes       no     -         #
    luactivate zfsBE       
    A Live Upgrade Sync operation will be performed on startup of boot environment <zfsBE>.
    .
    .
    .
  6. Reinicialize o sistema.


    # init 6
    
  7. Comprove se os sistemas de arquivos ZFS e as regiões foram criados no novo BE.


    # zfs list
    NAME                                USED  AVAIL  REFER  MOUNTPOINT
    rpool                              6.17G  60.8G    98K  /rpool
    rpool/ROOT                         4.67G  60.8G    21K  /rpool/ROOT
    rpool/ROOT/zfsBE                   4.67G  60.8G  4.67G  /
    rpool/dump                         1.00G  60.8G  1.00G  -
    rpool/swap                          517M  61.3G    16K  -
    zonepool                            634M  7.62G    24K  /zonepool
    zonepool/zones                      270K  7.62G   633M  /zonepool/zones
    zonepool/zones-c1t1d0s0             634M  7.62G   633M  /zonepool/zones-c1t1d0s0
    zonepool/zones-c1t1d0s0@zfsBE       262K      -   633M  -
    # zoneadm list -cv
      ID NAME             STATUS     PATH                           BRAND    IP    
       0 global           running    /                              native   shared
       - zfszone          installed  /zonepool/zones                native   shared

Exemplo 5–7 Migrando um sistema de arquivos raiz UFS com raiz de região para um sistema de arquivos raiz ZFS

Neste exemplo, um sistema Solaris 10 9/10 com um sistema de arquivos raiz UFS e uma raiz de região (/uzone/ufszone) e um conjunto não-raiz ZFS (grupo ) e a região raiz (/grupo/zfszone) é migrado para um sistema de arquivos raiz ZFS. Certifique-se de que o conjunto raiz ZFS seja criado e que as regiões estejam instaladas e inicializadas antes de realizar a migração.


# zoneadm list -cv
  ID NAME             STATUS     PATH                           BRAND    IP    
   0 global           running    /                              native   shared
   2 ufszone          running    /uzone/ufszone                 native   shared
   3 zfszone          running    /pool/zones/zfszone            native   shared

# lucreate -c ufsBE -n zfsBE -p rpool
Analyzing system configuration.
No name for current boot environment.
Current boot environment is named <zfsBE>.
Creating initial configuration for primary boot environment <zfsBE>.
The device </dev/dsk/c1t0d0s0> is not a root device for any boot environment; cannot get BE ID.
PBE configuration successful: PBE name <ufsBE> PBE Boot Device </dev/dsk/c1t0d0s0>.
Comparing source boot environment <ufsBE> 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/c1t1d0s0> is not a root device for any boot environment; cannot get BE ID.
Creating configuration for boot environment <zfsBE>.
Source boot environment is <ufsBE>.
Creating boot environment <zfsBE>.
Creating file systems on boot environment <zfsBE>.
Creating <zfs> file system for </> in zone <global> on <rpool/ROOT/zfsBE>.
Populating file systems on boot environment <zfsBE>.
Checking selection integrity.
Integrity check OK.
Populating contents of mount point </>.
Copying.
Creating shared file system mount points.
Copying root of zone <ufszone> to </.alt.tmp.b-EYd.mnt/uzone/ufszone>.
Creating snapshot for <pool/zones/zfszone> on <pool/zones/zfszone@zfsBE>.
Creating clone for <pool/zones/zfszone@zfsBE> on <pool/zones/zfszone-zfsBE>.
Creating compare databases for boot environment <zfsBE>.
Creating compare database for file system </rpool/ROOT>.
Creating compare database for file system </>.
Updating compare databases on boot environment <zfsBE>.
Making boot environment <zfsBE> bootable.
Creating boot_archive for /.alt.tmp.b-DLd.mnt
updating /.alt.tmp.b-DLd.mnt/platform/sun4u/boot_archive
Population of boot environment <zfsBE> successful.
Creation of boot environment <zfsBE> successful.
# lustatus
Boot Environment           Is       Active Active    Can    Copy      
Name                       Complete Now    On Reboot Delete Status    
-------------------------- -------- ------ --------- ------ ----------
ufsBE                      yes      yes    yes       no     -         
zfsBE                      yes      no     no        yes    -         
# luactivate zfsBE    
.
.
.
# init 6
.
.
.
# zfs list
NAME                                    USED  AVAIL  REFER  MOUNTPOINT
pool                                    628M  66.3G    19K  /pool
pool/zones                              628M  66.3G    20K  /pool/zones
pool/zones/zfszone                     75.5K  66.3G   627M  /pool/zones/zfszone
pool/zones/zfszone-ufsBE                628M  66.3G   627M  /pool/zones/zfszone-ufsBE
pool/zones/zfszone-ufsBE@zfsBE           98K      -   627M  -
rpool                                  7.76G  59.2G    95K  /rpool
rpool/ROOT                             5.25G  59.2G    18K  /rpool/ROOT
rpool/ROOT/zfsBE                       5.25G  59.2G  5.25G  /
rpool/dump                             2.00G  59.2G  2.00G  -
rpool/swap                              517M  59.7G    16K  -
# zoneadm list -cv
  ID NAME             STATUS     PATH                           BRAND    IP    
   0 global           running    /                              native   shared
   - ufszone          installed  /uzone/ufszone                 native   shared
   - zfszone          installed  /pool/zones/zfszone            native   shared