Repositório yum local para várias versões

2

Eu gostaria de configurar um repositório local para rhel 5 e 6. Isso pode ser feito em um servidor, ou eu preciso de um servidor para cada versão principal?

Temos uma assinatura válida e legal com RH, mas preferimos não pagar pelo satélite RH.

    
por chris 17.01.2013 / 05:32

1 resposta

1

Você pode criar pacotes para o EL5 em uma caixa EL6, mas o problema é que o EL6 tem uma versão mais nova do RPM que grava arquivos incompatíveis com a versão do RPM que acompanha o EL5. Você pode contornar isso com alguns argumentos para rpmbuild ao criar seus pacotes de código-fonte, preferencialmente em um script de wrapper. Algo como isso fará com que rpmbuild use o formato antigo:

#!/bin/bash
# Assumes you have an RPM environment set up in ~/rpmbuild using rpmdev-setuptree
# Argument 1: a spec file in ~/rpmbuild/SPECS
# Build the EL6 SRPM
rpmbuild -bs $1
# Build the EL5 SRPM
rpmbuild \
  --define "_source_filedigest_algorithm 1" \
  --define "_binary_filedigest_algorithm 1" \
  --define "_binary_payload w9.gzdio" \
  --define="dist .el5" \
  --define="el5 1" \
  $1

Quando os SRPMs forem criados, você poderá executar mock nos SRPMs EL5 e EL6, respectivamente:

for el in 5 6; do
  for package in ~/rpmbuild/SRPMS/*.el{$el}.src.rpm; do
    for arch in x86_64 i386; do
      mock -r epel-{$el}-{$arch} $package
    done
  done
done
    
por 17.01.2013 / 05:54