Red Hat Training

A Red Hat training course is available for RHEL 8

A.3.3. % roteiro do correio

O %post script é um script pós-instalação que é executado após a instalação estar completa, mas antes que o sistema seja reinicializado pela primeira vez. Você pode usar esta seção para executar tarefas como a assinatura do sistema.

Você tem a opção de adicionar comandos para executar no sistema uma vez concluída a instalação, mas antes que o sistema seja reinicializado pela primeira vez. Esta seção deve começar com %post e terminar com %end.

A seção %post é útil para funções como a instalação de software adicional ou a configuração de um servidor de nomes adicional. O script pós-instalação é executado em um ambiente chroot, portanto, executar tarefas como copiar scripts ou pacotes RPM da mídia de instalação não funcionam por padrão. Você pode mudar este comportamento usando a opção --nochroot, conforme descrito abaixo. Então o script %post será executado no ambiente de instalação, e não em chroot no sistema de destino instalado.

Como o script pós-instalação é executado em um ambiente chroot, a maioria dos comandos systemctl se recusará a executar qualquer ação. Para mais informações, consulte o Comportamento do systemctl em uma seção chroot Environment do documento Configuring and managing system administration.

Observe que durante a execução da seção %post, a mídia de instalação ainda deve ser inserida.

A.3.3.1. % opções de seção de roteiro de postagem

As seguintes opções podem ser usadas para mudar o comportamento dos scripts de pós-instalação. Para usar uma opção, anexá-la à linha %post no início do script. Por exemplo:

%post --interpreter=/usr/libexec/platform-python
-- Python script omitted --
%end
--interpreter=

Permite especificar uma linguagem de script diferente, tal como Python. Por exemplo, Python:

%post --interprete=/usr/libexec/plataforma-python

Qualquer linguagem de script disponível no sistema pode ser usada; na maioria dos casos, estes são /usr/bin/sh, /usr/bin/bash, e /usr/libexec/platform-python.

Note que o intérprete platform-python usa a versão 3.6 do Python. Você deve mudar seus scripts Python das versões anteriores da RHEL para o novo caminho e versão. Além disso, platform-python é destinado às ferramentas do sistema: Use o pacote python36 fora do ambiente de instalação. Para mais detalhes sobre Python no Red Hat Enterprise Linux 8, veja Introdução ao Python em Configuring basic system settings.

--nochroot

Permite especificar comandos que você gostaria de executar fora do ambiente chroot.

O seguinte exemplo copia o arquivo /etc/resolv.conf para o sistema de arquivos que acabou de ser instalado.

%post --nochroot
cp /etc/resolv.conf /mnt/sysimage/etc/resolv.conf
%end
--erroronfail
Exibir um erro e interromper a instalação se o script falhar. A mensagem de erro irá direcioná-lo para onde a causa da falha é registrada.
--log=

Registra a saída do script no arquivo de log especificado. Observe que o caminho do arquivo de log deve levar em conta se você usa ou não a opção --nochroot. Por exemplo, sem --nochroot:

%post --log=/root/ks-post.log

e com --nochroot:

%post --nochroot --log=/mnt/sysimage/root/ks-post.log