Consegui integrar atualizações de segurança do RHEL em uma imagem de kickstart personalizada usando o seguinte procedimento:
-
Configure um espelho do RHEL com uma profundidade de histórico de 1.
-
Ao construir a imagem do kickstart, copie os dados do repositório para seu próprio diretório no disco.
pseudo-código do script de compilação ISO:
#!/bin/bash pseudo-code # make a copy of the RHEL system image mount rhel-7-server-dvd.iso /tmp/rhelbaseiso cp -a /tmp/rhelbaseiso /tmp/rheliso # add your own custom kickstart files cp myimage/ks.cfg /tmp/rheliso/. cp -f myimage/isolinux.bin /tmp/rheliso/isolinux/isolinux.bin # copy files from repo mirror mkdir /tmp/rheliso/rhelUpdatePackages cp -a /myrhelmirror/repos/rhel7/rhel-7-server-rpms/* rhelUpdatePackages # TODO add any custom packages to their own directory, and run createrepo on it # build the iso image mkisofs -rDfJV "DISK NAME" -b isolinux/isolinux.bin \ -c isolinux/boot.cat \ -no-emul-boot \ -boot-load-size 4 \ -boot-info-table \ -graft-points \ -eltorito-alt-boot \ -e images/efiboot.img \ -no-emul-boot \ -o custom_rhel.iso /tmp/rheliso # TODO unmount and clean up
-
Diga ao kickstart para usar o repositório de atualizações como um repositório adicional:
... repo --name="rhel_update" --baseurl="file:///run/install/repo/rhelUpdatePackages" repo --name="your_own_software" --baseurl="file:///run/install/repo/customPackages" ...
Isto parece ser suficiente para fazer o Yum / Anaconda puxar os pacotes apropriadamente atualizados durante a instalação do sistema. Quando instalado, o sistema terá um software atualizado "pronto para uso", sem a necessidade de se conectar a um repositório de atualizações.
(Funciona para instalação inicializável em Blu-Ray, USB-HD ou LAN. É necessário um esforço adicional para reduzir o tamanho da imagem se você precisar encaixá-la em um DVD inicializável.)