Remover pacotes antigos do meu repositório

1. Remover pacotes antigos do meu repositório

Rodrigo
ribeirrs

(usa Debian)

Enviado em 22/11/2016 - 18:40h

Pessoal, preciso de uma ajuda para montar um script que remova pacotes de versões anteriores ao que minhas máquinas estão utilizando.

Eu obti a lista de pacotes que estão instalados nas minhas máquinas, agora eu preciso que em meu repositório toda semana rode um script que verifique o diretório aonde estão esses rpm e que as versões anteriores a eles sejam apagadas.


Ex: Digamos que no meu repositório esses rpm´s que estão instalados nas minhas máquinas estejam nesses paths (para achar eu fiz um find /repos, porque sei que está dai para frente e redirecionei sua saída para um arquivo):

/repos/rpm/qa/centos6/x86_64/app1-template-1.2.1-20.x86_64.rpm e /repos/rpm/qa/centos6/x86_64/app2-template_rc.x86_64.rpm


Nesse cenário eu precisaria que todos pacotes abaixo das versões app1-template-1.2.1-20.x86_64.rpm e app2-template_rc.x86_64.rpm fosse removidos e não tenho muita idéia de como fazer isso.


  


2. Re: Remover pacotes antigos do meu repositório

Mauriciodez
Mauriciodez

(usa Debian)

Enviado em 22/11/2016 - 19:40h

ribeirrs escreveu:
Nesse cenário eu precisaria que todos pacotes abaixo das versões app1-template-1.2.1-20.x86_64.rpm e app2-template_rc.x86_64.rpm fosse removidos e não tenho muita idéia de como fazer isso.


se eu entendi direito vc tem pacotes instalados ... por exemplo pacote ABC_1.2
e vc tem um diretório com pacotes para instalar offline ... ABC_1.0 ; ABC_1.1 ; ABC_1.2
Aí vc quer excluir do repositório os pacotes ABC_1.0 e ABC_1.1 por serem versões mais antigas do q vc tem instalado.

Se for isso , eu faria assim ...
uma lista com os pacotes instalados
uma lista com os pacotes do repositório
compararia os dois com "diff"
depois seria só aplicar um "rm"
___________________________________________________________________________________________
" Nem sempre é amigo aquele que te tira do buraco !!! ( Saddam Hussein )"


3. Re: Remover pacotes antigos do meu repositório

Rodrigo
ribeirrs

(usa Debian)

Enviado em 22/11/2016 - 20:27h

Oi Mauriciodez, o problema é que no repositório tem versões superiores tb. Preciso que apague apenas versões abaixo das versões que estão instaladas nas minhas máquinas.


4. Re: Remover pacotes antigos do meu repositório

Mauriciodez
Mauriciodez

(usa Debian)

Enviado em 22/11/2016 - 20:48h

ribeirrs escreveu:

Oi Mauriciodez, o problema é que no repositório tem versões superiores tb. Preciso que apague apenas versões abaixo das versões que estão instaladas nas minhas máquinas.


velho acho q por regra geral pacotes atuais sempre são maiores q os antigos, então depois do 'diff' vc excluiria os de menor tamanho ... ou não excluiria o de maior tamanho

___________________________________________________________________________________________
" Nem sempre é amigo aquele que te tira do buraco !!! ( Saddam Hussein )"


5. Re: Remover pacotes antigos do meu repositório

Rodrigo
ribeirrs

(usa Debian)

Enviado em 22/11/2016 - 20:57h

Nesse meu caso não rs
Temos uma automacao q entrega as versões que autorizamos e nesse caso tem pacotes que ainda não autorizamos as versões mais recentes, por isso preciso que ele exclua exatamente só o que é versão anterior ao que está autorizado em nossa automação.


6. Re: Remover pacotes antigos do meu repositório

Mauriciodez
Mauriciodez

(usa Debian)

Enviado em 22/11/2016 - 21:02h

ribeirrs escreveu:

Nesse meu caso não rs
Temos uma automacao q entrega as versões que autorizamos e nesse caso tem pacotes que ainda não autorizamos as versões mais recentes, por isso preciso que ele exclua exatamente só o que é versão anterior ao que está autorizado em nossa automação.


velho ... complicado fazer isso se não encontrar um padrão ... data da criação tb não rola ???

___________________________________________________________________________________________
" Nem sempre é amigo aquele que te tira do buraco !!! ( Saddam Hussein )"


7. Re: Remover pacotes antigos do meu repositório

Mauriciodez
Mauriciodez

(usa Debian)

Enviado em 22/11/2016 - 21:08h

Só um adendo . o pacman gerencia esse repositório ??? se gerenciar na rola de usar o paramentro 'Sc' para limpar os antigos
pacman -Sc 

___________________________________________________________________________________________
" Nem sempre é amigo aquele que te tira do buraco !!! ( Saddam Hussein )"


8. Re: Remover pacotes antigos do meu repositório

Rodrigo
ribeirrs

(usa Debian)

Enviado em 24/11/2016 - 18:29h

Posso obter a data de todos, e a data antetior a da versão que estiver aplicada apagar.
Sobre o pacman não tem :(

Eu estava usando o if com -lt para pegar números de versões menores, mas como tem carcateres especiais como . e - nas versões, ele diz que tem muitos argumentos porque vira string e pelo que sei o -lt trata só número.








Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts