Você pode criar um arquivo com uma instalação inicial que substitua todos os arquivos no sistema clone, ou pode criar um arquivo diferencial que substitua as alterações especificadas. Para uma visão geral de um arquivo diferencial, consulte Planejando para criar o arquivo Solaris Flash diferencial para uma atualização.
Um arquivo Solaris Flash não pode ser criado corretamente quando uma zona não-global está instalada. O recurso do Solaris Flash não é compatível com a tecnologia de particionamento do Solaris Zones. Se você criar um arquivo do Solaris Flash, o arquivo resultante não será instalado corretamente quando o arquivo for implantado sob estas condições:
O arquivo é criado em uma zona não-global
O arquivo é criado em uma zona global que possui zonas não-globais instaladas
Depois de você ter instalado o sistema mestre, crie um arquivo Solaris Flash para utilizar para instalar outros sistemas.
Torne-se superusuário ou assuma uma função equivalente.
Funções contêm autorizações e comandos privilegiados. Para obter mais informações sobre funções, consulte Configuring RBAC (Task Map) no System Administration Guide: Security Services.
Inicialize o sistema mestre e execute-o em um estado tão inativo quanto possível.
Quando possível, execute o sistema no modo de único usuário. Caso não seja possível, encerre qualquer aplicativo que queira arquivar e qualquer aplicativo que exija recursos extensos do sistema operacional.
É possível criar um arquivo Solaris Flash enquanto o sistema mestre estiver sendo executado em um modo multiusuário, em um modo de usuário único ou enquanto inicializado a partir de um dos seguintes modos:
DVD do sistema operacional Solaris.
Iniciando com o Oracle Solaris versão 10.9/10, é fornecido somente um DVD. CDs Software Solaris não mais são fornecidos.
CD Software Solaris - 1 .
Uma imagem do Software Solaris. Caso esteja utilizando a mídia CD, a imagem pode incluir o CD de idiomas do Solaris caso seja necessário.
Para criar o arquivo, utilize o comando flarcreate.
# flarcreate -n name options path/filename |
O nome que você deu ao arquivo. O nome que você especificou é o valor da palavra-chave content_name.
Para uma descrição das opções, consulte Comando flar.
O caminho para o diretório no qual você deseja salvar o arquivo de dados. Se você não especificar um caminho, o flarcreate salva o arquivo de dados no diretório atual.
O nome do arquivo de dados.
Se a criação do arquivo for bem sucedida, o comando flarcreate retornará um código de saída 0.
Se a criação do arquivo falhar, o comando flarcreate retornará um código de saída diferente de zero.
Faça uma cópia do arquivo e salve-a. A cópia pode ser utilizada no futuro para a atualização do sistema clone com um arquivo diferencial.
Sistemas de arquivo podem ser copiados exatamente como o original ou podem ser personalizados excluindo alguns diretórios ou arquivos. É possível arquivar os mesmos resultados utilizando opções diferentes. Utilize as opções que melhor se apliquem ao seu ambiente.
O sistema de arquivos nos exemplos a seguir tem sido simplificado enormemente para maior esclarecimento. Em vez de utilizar nomes de sistemas de arquivos, como /var, /usr ou /opt, a estrutura do arquivo do sistema mestre para estes exemplos é a seguinte:
/aaa/bbb/ccc/ddd /aaa/bbb/fff /aaa/eee /ggg |
Utilize as opções de exclusão de arquivos flarcreate com cautela. Se você excluir alguns diretórios, outros que não tinha conhecimento podem permanecer no arquivo, tais como arquivos de configuração do sistema. O sistema seria então inconsistente e a instalação não funcionaria. A exclusão de diretórios de arquivos é melhor utilizada com dados que podem ser facilmente removidos sem a interrupção do sistema, tais como arquivos de dados grandes.
Neste exemplo, o arquivo é chamado de archive1. Este arquivo é copiado exatamente a partir do sistema mestre e, a seguir, comprimido. O arquivo é uma duplicação exata do sistema mestre e é armazenado no archive1.flar .
# flarcreate -n archive1 -c archive1.flar |
Para verificar a estrutura do arquivo, digite o seguinte.
# 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 # |
Neste exemplo, alguns arquivos individuais são maiores que 4 GB. O utilitário de arquivamento padrão, cpio, não pode manusear estes arquivos grandes. O método de cópia -L pax é utilizado para criar um arquivo contendo grandes arquivos individuais. O arquivo é chamado de archive1. Este arquivo é copiado exatamente como o original a partir do sistema mestre e é comprimido a seguir. O arquivo compactado é uma duplicação exata do sistema mestre e é armazenado no archive1.flar .
# flarcreate -L pax -n archive1 -c archive1.flar |
Para verificar a estrutura do arquivo do arquivo, digite o seguinte.
# flar info -l archive1.flar aaa aaa/bbb aaa/bbb/ccc aaa/bbb/ccc/ddd aaa/bbb/fff aaa/eee aaa/eee ggg |
Neste exemplo, o arquivo é chamado de archive4. Este arquivo é copiado exatamente como do sistema mestre e é comprimido a seguir. O arquivo é uma duplicação exata do sistema mestre e é armazenado em archive4.flar . A opção -R é utilizada para criar o arquivo a partir de outra árvore do diretório.
# flarcreate -n archive4 -c -R /x/yy/zz archive4.flar |
Neste exemplo, o arquivo é chamado archive3. Este arquivo é copiado exatamente como do sistema mestre e é comprimido a seguir. As opções adicionam descrições à seção de identificação do arquivo, que podem ajudá-lo a identificar o arquivo mais tarde. Para informações sobre as palavras-chave, seus valores e formatos, consulte Palavras-chave do Solaris Flash.
# flarcreate -n archive3 -i 20000131221409 -m pumbaa \ -e "Solaris 8 Print Server" -a "Mighty Matt" -U "Internal Finance" \ -T server archive3.flar |
Depois de o arquivo ser criado, você poderá acessar a seção de identificação do arquivo que contém a descrição detalhada. A seguir, um exemplo de uma seção de identificação de arquivo.
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 |
Neste exemplo, o arquivo é chamado archive2. Este arquivo é copiado a partir do sistema mestre, mas não é uma cópia exata. O conteúdo sob o diretório /aaa é excluído, mas o conteúdo no /aaa/bbb/ccc permanece.
# flarcreate -n archive2 -x /aaa -y /aaa/bbb/ccc archive2.flar |
Para verificar a estrutura do arquivo do arquivo, digite o seguinte. Os diretórios excluídos que incluem arquivos copiados aparecem, mas somente os arquivos que foram restaurados contêm dados.
# flar info -l aaa aaa aaa/bbb/ccc aaa/bbb/ccc/ddd aaa/bbb ggg |
Neste exemplo, o arquivo é chamado de archive5. Este arquivo é copiado a partir do sistema mestre, mas não é uma cópia exata.
O arquivo excluir contém a lista a seguir:
/aaa |
O arquivo incluir contém a lista a seguir:
/aaa/bbb/ccc |
O conteúdo sob o diretório /aaa é excluído, mas o conteúdo no /aaa/bbb/ccc permanece.
# flarcreate -n archive5 -X exclude -f include archive5.flar |
Para verificar a estrutura do arquivo do arquivo, digite o seguinte. Os diretórios excluídos que incluem arquivos copiados aparecem, mas somente os arquivos que foram restaurados contêm dados.
# flar info -l archive5.flar aaa aaa/bbb/ccc aaa/bbb/ccc/ddd aaa/bbb ggg |
Você pode combinar opções -x, -y, -X e -f. Neste exemplo, as opções -X e -y são combinadas. O arquivo é chamado de archive5. Este arquivo é copiado a partir do sistema mestre, mas não é uma cópia exata do original.
O arquivo excluir contém a lista a seguir:
/aaa |
A opção -y restaura o diretório /aaa/bbb/ccc. O comando a seguir produz o arquivo.
# flarcreate -n archive5 -X exclude -y /aaa/bbb/ccc archive5.flar |
Para verificar a estrutura do arquivo do arquivo, digite o seguinte. Os diretórios excluídos que incluem arquivos copiados aparecem, mas somente os arquivos que foram restaurados contêm dados.
# flar info -l archive5.flar aaa aaa/bbb aaa/bbb/ccc aaa/bbb/ccc/ddd ggg |
Neste exemplo, o arquivo é chamado archive3. Este arquivo é copiado a partir do sistema mestre, mas não é uma cópia exata do original. Os arquivos e diretórios a serem selecionados são incluídos no arquivo filter1. Dentro dos arquivos, os diretórios são marcados com um sinal de menos (-) ou com um sinal de mais (+), para indicar quais arquivos a serem excluídos e restaurados. Neste exemplo, o diretório /aaa é excluído com um sinal de menos e o subdiretório /aaa/bbb/ccc é restaurado com um sinal de mais. O arquivo filter1 contém a lista a seguir.
- /aaa + /aaa/bbb/ccc |
O comando a seguir produz o arquivo.
# flarcreate -n archive3 -z filter1 archive3.flar |
Para verificar a estrutura do arquivo, digite o comando a seguir. Os diretórios excluídos que incluem arquivos copiados aparecem, mas somente os arquivos que foram restaurados contêm dados.
# flar info -l archive3.flar aaa aaa/bbb aaa/bbb/ccc aaa/bbb/ccc/ddd ggg |
Antes de criar arquivos diferenciais, você necessita de duas imagens para comparar: uma imagem mestre inalterada e uma imagem mestre atualizada. Uma das imagens é a imagem mestre inalterada que foi mantida inalterada. Esta imagem foi armazenada e necessita ser acessada. A segunda imagem é a imagem mestre inalterada que foi atualizada com alterações mínimas. O sistema de arquivos raiz (/) é o padrão para a nova imagem, mas você pode acessar esta imagem caso ela tenha sido armazenada em outro lugar. Depois de obter duas imagens, você poderá criar um arquivo diferencial, que contenha somente as diferenças entre as duas imagens. O arquivo diferencial pode então ser instalado nos clones que foram instalados anteriormente com a imagem mestre inalterada.
Prepare o sistema mestre para alterações. Antes de serem feitas alterações, o sistema mestre deve estar executando uma duplicata do arquivo original.
Uma cópia da imagem mestre inalterada deve ser mantida protegida de alterações e estar disponível para ser montada mais tarde.
Atualize a imagem mestre inalterada com qualquer uma das alterações a seguir.
Exclua pacotes.
Adicione pacotes ou patches.
Modifique os arquivos de configuração.
Adicione suporte para dispositivos periféricos no sistema clone.
(Opcional) Crie scripts personalizados. Consulte Criando scripts de personalização.
Torne-se superusuário ou assuma uma função equivalente.
Funções contêm autorizações e comandos privilegiados. Para obter mais informações sobre funções, consulte Configuring RBAC (Task Map) no System Administration Guide: Security Services.
Entregue a imagem mestre inalterada em um ponto de montagem.
Se a imagem mestre inalterada for armazenada em um ambiente de inicialização inativo, recupere-a utilizando o comando lumount.
# lumount BE_name mountpoint |
Especifica o nome do ambiente de inicialização onde a imagem mestre inalterada é armazenada
Especifica um sistema de arquivo raiz (/) onde a imagem é armazenada
No exemplo a seguir, o ambiente de inicialização inativo é chamado unchanged_master1. O ponto de montagem é o diretório /a no sistema mestre.
# lumount unchanged_master1 /a |
Se a imagem estiver armazenada em um clone, monte o clone utilizando o NFS.
No sistema mestre, compartilhe o sistema de arquivo raiz (/) do clone e dê permissões ao sistema clone.
# share -F nfs -o rw,root=master_system "/" |
master_system é o nome do sistema mestre.
No sistema mestre, monte o clone.
# mount -F nfs clone_system:/ master_dir |
Especifica o nome do sistema a ser montado
Especifica o nome do diretório onde a imagem mestre inalterada é armazenada
Se você salvou a imagem com o comando ufsdump, utilize o comando ufsrestore para recuperar uma cópia. Para informação sobre como utilizar estes comandos, consulte o Capítulo 27, UFS Backup and Restore Commands (Reference), no System Administration Guide: Devices and File Systems.
Crie um arquivo diferencial.
# flarcreate -n archive_name -A unchanged_master_image_dir \ options path/filename |
Especifica o nome que você dá ao arquivo. O archive_name especificado é o valor da palavra-chave content_name. O nome é listado na seção de identificação do arquivo.
Cria um arquivo diferencial comparando uma nova imagem do sistema com a imagem especificada pelo argumento unchanged_master_image_dir. Por padrão, a nova imagem do sistema é a raiz (/). É possível mudar o padrão com a opção -R. unchanged_master_image_dir é um diretório onde a imagem de sistema inalterada é armazenada ou montada através do UFS, NFS, ou do comando lumount.
É possível incluir e excluir alguns arquivos utilizando as opções para seleção de conteúdos. Para uma lista de opções, consulte Comando flar.
Para uma descrição das opções, consulte Comando flar.
Especifica o caminho para o diretório no qual deseja salvar o arquivo de dados. Se você não especificar um caminho, o flarcreate salva o arquivo de dados no diretório atual.
Especifica o nome do arquivo de dados.
Se a criação do arquivo diferencial é bem sucedida, o comando flarcreate retornará um código de saída 0.
Se a criação do arquivo diferencial falhar, o comando flarcreate retornará um código de saída diferente de zero.
Para procedimentos sobre a instalação de um arquivo, consulte Para preparar para instalar um arquivo Solaris Flash com uma instalação personalizada JumpStart no Guia de instalação do Oracle Solaris 10 9/10: instalação JumpStart personalizada e instalações avançadas.
Neste exemplo, o diretório para imagem mestre inalterada é chamado de unchanged_master1. A nova imagem mestre que contém as alterações é o diretório de raiz (/). A nova imagem mestre é comparada à imagem mestre inalterada e o arquivo diferencial resultante é comprimido a seguir. O arquivo diferencial é armazenado no arquivo diffarchive1.flar. O arquivo contém arquivos que estão para serem excluídos, alterados ou adicionados quando instalados.
# flarcreate -n diffarchive1 -A /a/unchanged_master1 -c diffarchive1.flar |
Neste exemplo, a imagem mestre inalterada, unchanged_master1, é armazenada em um ambiente de inicialização inativo e é acessada pela montagem do ambiente de inicialização. A nova imagem mestre é o diretório raiz (/). A nova imagem mestre é comparada à imagem mestre inalterada e o arquivo diferencial resultante é comprimido a seguir. O arquivo é armazenado no arquivo diffarchive4.flar. O arquivo contém os arquivos que estão para serem excluídos, alterados ou adicionados quando instalados.
# lumount unchanged_master1 /a # flarcreate -n diffarchive4 -A /a -c diffarchive4.flar |
Para gerenciar atualizações de sistemas, você pode utilizar o Solaris Live Upgrade para copiar o OS, que cria um novo ambiente de inicialização. Esta cópia pode ser comparada ao sistema mestre que foi atualizado com pequenas alterações. O arquivo diferencial resultante Solaris Flash pode então ser instalado em sistemas clones.
Para mais informações sobre o Solaris Live Upgrade, consulte o Capítulo 2, Solaris Live Upgrade (visão geral), no Oracle Guia de instalação do Solaris 10 9/10: Solaris Live Upgrade e planejamento da atualização.
A partir do sistema mestre inalterado, crie um novo ambiente de inicialização utilizando o comando lucreate.
Este novo ambiente é uma cópia exata do sistema mestre e pode ser utilizada para criar o arquivo diferencial.
Torne-se superusuário ou assuma uma função equivalente.
Funções contêm autorizações e comandos privilegiados. Para obter mais informações sobre funções, consulte Configuring RBAC (Task Map) no System Administration Guide: Security Services.
Verifique o status dos dois ambientes de inicialização.
# 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 - |
Atualize a imagem mestre utilizando qualquer uma das alterações a seguir.
Exclua pacotes.
Adicione pacotes ou patches.
Modifique os arquivos de configuração.
Adicione suporte para dispositivos periféricos no sistema clone.
(Opcional) Crie scripts personalizados. Consulte Criando scripts de personalização.
Crie um arquivo diferencial.
Monte o ambiente de inicialização recém criado.
# lumount BE_name /a |
Crie o arquivo diferencial comparando o sistema mestre com o ambiente de inicialização.
# flarcreate -n archive_name -A new_BE_dir\ options path/filename |
Especifica o nome que você dá ao arquivo.
Cria um arquivo diferencial comparando a nova imagem de sistema com a imagem especificada pelo argumento new BE_dir.
Para uma lista de opções, consulte Comando flar.
Especifica o caminho para o diretório no qual deseja salvar o arquivo de dados. Se você não especificar um caminho, o flarcreate salva o arquivo de dados no diretório atual.
Especifica o nome do arquivo de dados.
Desmonte o novo ambiente de inicialização.
# luumount copy_BE |
O comando flarcreate retorna um código de saída.
Se a criação for bem sucedida, será retornado um código de saída 0.
Se ocorrer uma falha, será retornado um código de saída diferente de zero.
Instale o arquivo diferencial Solaris Flash utilizando o perfil JumpStart.
Os sistemas clones a serem instalados devem ser uma duplicação do sistema mestre original ou a instalação falha.
O perfil do exemplo a seguir instala um arquivo diferencial, test.diff , no dispositivo c1t1d0s0.
JumpStart profile ----------------------- install_type flash_update archive_location http server /rw/test.diff root_device c1t1d0s0 |
master_BE é o nome do ambiente de inicialização atual. copy_BE é o nome do novo ambiente de inicialização. A raiz dos sistemas de arquivo (/) e /usr estão inseridas no s0 e s3. O comando lustatus informa que a cópia do novo ambiente de inicialização está completa. O pacote SUNWman é adicionado ao sistema mestre. Depois de o sistema mestre ser atualizado pela adição do pacote SUNWman, o comando flarcreate cria um arquivo diferencial comparando o ambiente de inicialização mestre alterado e o novo ambiente inalterado.
# 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 o arquivo diferencial nos sistemas clones. Para procedimentos sobre a instalação de um arquivo, consulte Para preparar para instalar um arquivo Solaris Flash com uma instalação personalizada JumpStart no Guia de instalação do Oracle Solaris 10 9/10: instalação JumpStart personalizada e instalações avançadas.
A imagem seguinte mostra a criação do novo ambiente de inicialização utilizando o comando lucreate.