Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

32.7. Script de Pós-Instalação

Você tem a opção de adicionar comandos para rodar no sistema logo após completar a instalação. Esta seção deve estar no fim do arquivo de kickstart, depois dos comandos do kickstart descritos em Seção 32.4, “Opções do Kickstart” e deve começar com o comando %post. Caso seu kickstart também inclua uma seção %post, a ordem das seções %pre,%post não importa.
Esta seção é útil para funções como instalação adicional de software e configuração de um nameserver adicional.

Nota

Se você configurou a rede com informações de IP estático, incluindo um servidor de nome, pode acessar a rede e resolver endereços IP na seção %post. Se configurou a rede para o DHCP, o arquivo /etc/resolv.conf não foi completado quando a instalação executou a seção %post. Você pode acessar a rede, mas não pode resolver endereços IP. Portanto, se usar o DHCP, você deve especificar os endereços IP na seção %post.

Nota

O script de pós-instalação é rodado em um ambiente chroot. Portanto, atividades como por exemplo a cópia de scripts ou RPMs da mídia de instalação não funcionam.
--nochroot
Permite que você especifique comandos que queira rodar fora do ambiente chroot.
O exemplo a seguir copia o arquivo /etc/resolv.conf para o sistema que acaba de ser instalado.
%post --nochroot 
cp /etc/resolv.conf /mnt/sysimage/etc/resolv.conf
--interpreter /usr/bin/python
Permite que você especifique uma linguagem de script diferente, como Python. Substitua /usr/bin/python pela sua linguagem de script preferida.
--log /path/to/logfile
Autentica o resultado no script de pós instalação. Observe que o caminho do arquivo do log deve levar em consideração se usa ou não a opção --nochroot. Por exemplo, sem o --nochroot:
%post --log=/root/ks-post.log
with --nochroot:
%post --nochroot --log=/mnt/sysimage/root/ks-post.log

32.7.1. Exemplos

Exemplo 32.1. Registrar o sistema junto a um Red Hat Network Satellite e autentique o resultado:

%post --log=/root/ks-post.log
wget -O- http://proxy-or-sat.example.com/pub/bootstrap_script | /bin/bash
/usr/sbin/rhnreg_ks --activationkey=<activationkey>

Exemplo 32.2. Executar um script chamado runme em uma partilha NFS:

mkdir /mnt/temp 
mount -o nolock 10.10.0.2:/usr/new-machines /mnt/temp 
openvt -s -w -- /mnt/temp/runme 
umount /mnt/temp
O bloqueio de arquivos NFS não é suportado em modo kickstart, e portanto -o nolock é necessário ao montar um NFS.

Exemplo 32.3. Executando o gerenciador de subscrições como um script pós instalação

Red Hat Enterprise Linux 6 possui uma ferramenta de linha de comando, o subscription-manager, o qual registra um sistema no serviço de conteúdo hospedado da Red Hat e arrasta o conteúdo daquele serviço, de acordo com as subscrições disponíveis à empresa. Em relação a registrar um sistema em um serviço Satellite local, a ferramenta subscription-manager pode executar um scrip pós instalação. A opção --autosubscribe subscreve automaticamente o novo sistema ao pool de subscrição que mais coincide e que estiver disponível após registrá-lo com a permissãoo de serviços.
%post --log=/root/ks-post.log
/usr/sbin/subscription-manager register --username rhn_username --password rhn_password --autosubscribe