mrepo - Como manter a versão antiga

1

Eu tenho um repositório yum local que é atualizado via mrepo / createrepo, todos os meus servidores estão direcionando este repositório local para suas atualizações, mas está sempre instalando a última versão que não é boa para um ambiente de produção.

Gostaria de implementar um procedimento para controlar qual versão dos pacotes está autorizada a ser puxada pelos clientes. Então eu preciso ter várias versões de pacotes.

Eu tentei os seguintes parâmetros em /etc/mrepo.conf, mas ainda vejo pacotes sendo removidos devido a uma nova revisão durante um ' mrepo -uvvg '

mirrordir-cleanup = no
reposync-cleanup = no
reposync-newest-only = no
rhnget-cleanup = no
rhnget-download-all = yes
rsync-cleanup = no

/etc/mrepo.d/centos.conf:

[centos6]
name = CentOS Repo $release ($arch)
release = 6
arch = x86_64
metadata = repomd repoview yum

### Additional repositories
centos6 = http://mirror.csclub.uwaterloo.ca/centos/$release/os/$arch/
centos6-updates=http://mirror.csclub.uwaterloo.ca/centos/$release/updates/$arch/
    
por Bastien974 16.01.2013 / 16:59

2 respostas

4

Você não está sincronizando a partir do RHN, então as opções "rhnget" não estão fazendo nada por você. Em vez disso, acho que você precisa de lftp-cleanup = no ao espelhar fontes HTTP.

Além disso, em vez de emitir yum update ou yum install package , você pode ser mais preciso solicitando versões específicas.

yum install httpd-2.2.15-9.el6

Isso é provavelmente o que você deseja fazer em um ambiente de produção.

No lado do cliente, você também pode usar o plug-in do Yum, versionlock , se houver pacotes específicos necessários para o controle de versão, mas quiser atualizar outros livremente.

EDITAR:

Eu passei algum tempo olhando isso em nosso servidor mrepo para minha própria curiosidade. O comportamento padrão de lftp é espelhar o host remoto. Você poderia fornecer a saída mostrando que os pacotes estão sendo removidos durante mrepo -ug ?

As notas na documentação de exemplo mostram que lftp-cleanup é para :

## Clean up packages that are not on the sending side ?

Então, parece que meu palpite pode estar correto (embora pelo motivo errado). Minha aposta é que a origem do upstream não está arquivando pacotes e seu valor padrão de limpeza do lftp é sim. Você deve confirmar também que os pacotes ainda estão disponíveis na origem.

    
por 16.01.2013 / 17:30
2

Mesmo que você consiga que o mrepo retenha versões mais antigas, as atualizações sempre usarão a versão mais recente disponível. A solução que você está procurando envolve vários repositórios locais atualizados em diferentes agendamentos.

    
por 16.01.2013 / 17:14

Tags