Scripts podem personalizar o arquivo. Utilize estes scripts para os propósitos a seguir:
A pré-criação de scripts valida o arquivo no tempo da criação e prepara o arquivo para uma personalização posterior, especialmente arquivos diferenciais. Este script pode também criar uma seção definida pelo usuário no arquivo.
Um script de pré-implementação valida o arquivo durante a instalação e prepara o arquivo para personalização mais tarde.
Um script de pós-implementação reconfigura uma nova imagem do sistema em um sistema clone.
Um script de reinicialização processa uma reconfiguração final depois de o sistema ser reinicializado.
Para diretrizes sobre a criação de scripts, consulte Diretrizes para criação de um script personalizado.
Este script é executado durante a criação do arquivo. O script tem várias utilidades.
Valida os conteúdos e a integridade do software. O script falha na criação do arquivo se a integridade estiver corrompida.
Prepara os produtos para serem personalizados mais tarde no sistema clone.
Registra outros scripts de instalação dinamicamente durante a criação do arquivo.
Adiciona uma mensagem ao arquivo de resumo de criação em flash. A mensagem deve ser curta e gravar somente a informação de que o script foi iniciado e concluído e os resultados. Você pode visualizar os resultados na seção de resumo.
Crie o script de pré-criação. Siga as diretrizes descritas em Diretrizes para criação de um script personalizado.
Armazene o script no diretório /etc/flash/precreation .
Os exemplos a seguir são trechos de um script de pré-criação.
Para efetuar log no tempo de início na seção de resumo utilize o exemplo a seguir:
echo "MyApp precreation script started">> $FLASHDIR/summary
Para verificar a integridade do software, utilize o comando flcheck. Este comando não pode ser utilizado na linha de comando. A sintaxe para este comando é a seguinte:
flcheck software component files and directories ...| - |
Por exemplo, para validar os arquivos e diretórios, utilize o exemplo a seguir:
flcheck software component files and directories If Not in selection - refuse creation echo "Myapp Integrity Damage">>$FLASHDIR/summary
Ou, para manter os novos arquivos e diretórios que são inesperados e não falhar na criação do arquivo, utilize o exemplo a seguir:
flcheck software component files and directories If Not in selection include by force flinclude software component
Para registrar scripts e dados de implantação utilize o exemplo a seguir:
Para ver os dados de aplicativos específicos em uma seção definida pelo usuário, utilize o exemplo a seguir:
cp custom section $FLASHDIR/custom_sections/MyApp
Para efetuar log do sucesso da instalação na seção de resumo, utilize o exemplo a seguir:
echo "product one flash preparation started." >>$FLASH_DIR/summary ... echo "product one flash preparation finished successfully">>$FLASH_DIR/summary
#!/bin/sh echo "Test precreation script started" >> $FLASH_DIR/summary cat /opt/TestApp/critical_file_list | flcheck - if [ $? != 0 ]; then echo "Test precreation script failure" >> $FLASH_DIR/summary exit 1 fi echo "Test precreation script started" >> $FLASH_DIR/summary /opt/TestApplication/license_cloning $FLASH_DIR/predeployment/.TestApplicationLicenceTransfer \ $FLASH_DIR/custom_sections/TestApplicationLicenceCounter echo "Test precreation script finished" >> $FLASH_DIR/summary exit 0
Um script de pré-criação pode criar uma seção definida pelo usuário no arquivo para fornecer informações específicas do aplicativo. Esta seção é direcionada para a manutenção do arquivo. O script deve ser colocado no diretório $FLASH_DIR/sections. O arquivo Solaris Flash não processa uma seção definida pelo usuário. Por exemplo, uma seção não pode conter uma descrição do arquivo ou talvez um script para verificar a integridade de um aplicativo.
Uma seção definida pelo usuário requer o formato a seguir.
Deve ser orientada por linha
Deve terminar com caracteres de uma nova linha (ASCII 0x0a)
Pode ter um comprimento ilimitado de linhas individuais
Deve codificar dados binários utilizando base64 ou um algoritmo similar
Este script é executado antes da instalação do arquivo. Se o script destina-se a validar o arquivo, ele é mantido no arquivo. Se o script destina-se a preservar as configurações locais no sistema clone, ele deverá ser mantido no sistema clone. Este script pode também analisar e coletar dados locais necessários para uma personalização mais tarde. Por exemplo, a informação específica do cliente pode ser salva antes de ser substituída pelos arquivos que estão para serem extraídos. Esta informação pode então ser utilizada na fase final depois da extração.
Crie o script de pré-implementação. Siga as diretrizes descritas em Diretrizes para criação de um script personalizado.
Armazene o script em um dos diretórios a seguir.
Para a validação do arquivo, armazene no diretório /etc/flash/predeployment .
Caso esteja fazendo referência ao script de pré-criação, armazene no diretório $FLASH_DIR/preinstall.
Se estiver preservando configurações em um sistema clone, forneça o caminho para o script que está armazenado no sistema clone com a palavra-chave local_customization no perfil JumpStart.
#!/bin/sh $FLASH_DIR/TestApplication/check_hardware if [ $? != 0 ]; then echo Unsupported hardware exit 1 fi $FLASH_DIR/TestApplication/check_licence_key if [ $? != 0 ]; then echo No license for this host exit 1 fi $FLASH_DIR/TestApplication/deploy_license_key \ $FLASH_DIR/TestApplication/.TestApplicationLicenceTransfer $FLASH_DIR/TestApplication/save_data_files $FLASH_DIR/flash exit 0
Este script é mantido no arquivo ou armazenado em um diretório local no sistema clone e é executado depois da instalação. O script reconfigura uma nova imagem do sistema em um sistema clone. Se o script for armazenado no arquivo, as alterações afetarão todos os sistemas clones. Se o script estiver armazenado em um diretório local no sistema clone, as alterações afetarão somente o sistema clone. Por exemplo, a informação específica do cliente salva pelo script de pré-implementação pode ser aplicada ao ambiente do clone, completando a instalação.
Scripts pós-implementação podem também ser utilizados para limpar arquivos depois do arquivo ser instalado. Por exemplo, arquivos de log como os arquivos em /var/adm podem ser limpos.
Nem todos os arquivos de log necessitam de um script para limpeza. Arquivos de log no /var/tmp podem ser excluídos quando o arquivo for criado.
Crie o script de pós-implementação. Siga as diretrizes descritas em Diretrizes para criação de um script personalizado.
Armazene o script em um dos diretórios a seguir.
Para afetar todos os sistemas clone, armazene o script no diretório /etc/flash/postdeployment .
Para afetar somente um sistema clone local, forneça o caminho para o script que está armazenado no sistema clone com a palavra-chave local_customization no perfil JumpStart.
#!/bin/sh $FLASH_DIR/TestApplication/clone_reconfiguration $FLASH_DIR/TestApplication/restore_data $FLASH_DIR/flash
Este script é mantido no arquivo e é executado depois que o sistema é reinicializado. O script executa qualquer configuração final depois da reconfiguração do sistema.
Depois da instalação do arquivo Solaris Flash em um sistema clone, alguns dos arquivos de host específico são excluídos e recriados para a máquina clonada. O programa de instalação utiliza o comando sys-unconfig(1M) e os programas sysidtool(1M) para excluir e recriar arquivos de configuração de rede de host específico. Os arquivos que são recriados incluem, por exemplo, o /etc/hosts, o /etc/defaultrouter, e o /etc/defaultdomain. É possível utilizar o script de reinicialização para qualquer reconfiguração final.
#!/bin/sh $FLASH_DIR/TestApplication/finalize_license