Oracle Guia de instalação do Solaris 10 9/10: Solaris Live Upgrade e planejamento da atualização

Criando um novo ambiente de inicialização a partir de um conjunto raiz ZFS

Também é possível criar um ambiente de inicialização ZFS dentro do mesmo conjunto raiz ou em outro conjunto raiz. Esta seção contém as visões gerais a seguir:

Criando um novo ambiente de inicialização dentro o mesmo conjunto raiz

Ao criar um novo ambiente de inicialização dentro do mesmo conjunto raiz ZFS, o comando lucreate cria um instantâneo do ambiente de inicialização fonte e, em seguida, um clone é feito a partir do instantâneo. A criação do instantâneo e do clone é quase instantânea, e o espaço em disco utilizado é mínimo. A quantidade de espaço finalmente utilizada depende de quantos arquivos são substituídos como parte do processo de atualização. O instantâneo é de somente leitura, mas o clone é um cópia para leitura e escrita do instantâneo. Qualquer alteração feita ao ambiente de inicialização clone não é refletida tanto no instantâneo quanto no ambiente de inicialização fonte, do qual o instantâneo foi feito.


Observação –

À medida que os dados se alteram dentro do conjunto de dados ativo, o instantâneo passa a consumir mais espaço devido às contínuas referências aos dados antigos. Como conseqüência, o instantâneo evita que os dados sejam liberados de novo no pool. Para mais informações sobre instantâneos, consulte Capítulo 7, Trabalhando com instantâneos e clones do ZFS do Oracle Solaris, no Guia de administração do ZFS Oracle Solaris.


Quando o ambiente de inicialização atual reside no mesmo conjunto ZFS, a opção - p é omitida.

Figura 11–2 mostra a criação de um ambiente de inicialização ZFS a partir de um conjunto raiz ZFS. O segmento c0t0d0s0 contém o conjunto raiz ZFS, rpool. No comando lucreate, a opção -n atribui o nome para o ambiente de inicialização a ser criado, new-zfsBE. Um instantâneo do conjunto raiz original é criado rpool@new-zfsBE. O instantâneo utilizado para fazer o clone que é o novo ambiente de inicialização, new-zfsBE. O ambiente de inicialização, new-zfsBE, está pronto para ser atualizado e ativado.

Figura 11–2 Criando um novo ambiente de inicialização no mesmo conjunto raiz

O contexto descreve a ilustração.


Exemplo 11–3 Criando um ambiente de inicialização dentro do mesmo conjunto raiz ZFS

Este exemplo mostra o mesmo comando como em Figura 11–2 que cria um novo ambiente de inicialização no mesmo conjunto raiz. O comando lucreate nomeia o ambiente de inicialização atualmente em execução com a opção -c zfsBE e a -n new-zfsBE cria o novo ambiente de inicialização. O comando zfs list mostra os conjunto de dados ZFS com o novo ambiente de inicialização e instantâneo.


# lucreate -c zfsBE -n new-zfsBE
# zfs list
AME                        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/zfsBE@new-zfsBE 66.5K      -   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  - 

Criando um novo ambiente de inicialização em outro conjunto raiz

É possível utilizar o comando lucreate para copiar um conjunto raiz ZFS existente em outro conjunto raiz ZFS. O processo de cópia pode demorar um pouco, dependendo do sistema.

Figura 11–3 mostra o comando zpool que cria um conjunto raiz ZFS, rpool2, no c0t1d0s5 porque um conjunto raiz ZFS inicializável ainda não existe. O comando lucreate com a opção -n atribui o nome para o ambiente de inicialização a ser criado, new-zfsBE. A opção -p especifica onde colocar o novo ambiente de inicialização.

Figura 11–3 Criando um novo ambiente de inicialização em outro conjunto raiz

O contexto descreve a ilustração.


Exemplo 11–4 Criando um ambiente de inicialização em um conjunto raiz ZFS diferente

Este exemplo mostra os mesmo comandos como em Figura 11–3 que cria o novo conjunto raiz e, em seguida, um novo ambiente de inicialização no conjunto raiz recém criado. Neste exemplo, o comando zpool create cria rpool2. O comando zfs list mostra que nenhum conjunto de dados ZFS é criado em rpool2. Os conjuntos de dados criados com o comando lucreate.


# zpool create rpool2 c0t2d0s5
# zfs list
NAME                             USED    AVAIL   REFER   MOUNTPOINT 
rpool2                           9.29G    57.6G     20K   /rpool2 
rpool                            9.29G    57.6G     20K   /.new.lulib.rs.109262
rpool/ROOT                       5.46G    57.6G     18K   legacy
rpool/ROOT/zfsBE                 5.46G    57.6G   551M  
rpool/dump                       3.99G        -   3.99G   - 
rpool/swap                       3.99G        -   3.99G   - 

O novo conjunto raiz ZFS, rpool2, é criado no segmento de disco c0t2d0s5.


# lucreate -n new-zfsBE -p rpool2
# zfs list
NAME                             USED    AVAIL   REFER   MOUNTPOINT 
rpool2                           9.29G    57.6G     20K   /rpool2 
rpool2/ROOT/                     5.38G    57.6G     18K   /rpool2/ROOT 
rpool2/ROOT/new-zfsBE            5.38G    57.6G    551M   /tmp/.new.luupdall.109859
rpool2/dump                      3.99G        -   3.99G   - 
rpool2/swap                      3.99G        -   3.99G   - 
rpool                            9.29G    57.6G     20K   /.new.lulib.rs.109262
rpool/ROOT                       5.46G    57.6G     18K   legacy
rpool/ROOT/zfsBE                 5.46G    57.6G   551M  
rpool/dump                       3.99G        -   3.99G   - 
rpool/swap                       3.99G        -   3.99G   - 

O novo ambiente de inicialização, new-zfsBE, é criado em rpool2 junto com os outros conjuntos de dados, ROOT, despejo e permuta. O ambiente de inicialização, new-zfsBE, está pronto para ser atualizado e ativado.