Instalando uma versão específica do pacote com o yum

17

Eu tenho um sistema Fedora com o Postgres versão 8.3 e quero fazer o downgrade para 8.2 devido a um problema de compatibilidade. Eu tenho usado o yum para tudo, mas é minha primeira vez com este gerenciador de pacotes e não sei como fazer o downgrade das coisas.

Então, como eu digo para me dar uma versão específica de um pacote?

EDIT: Eu consegui fazer isso funcionar seguindo baixando os pacotes específicos conforme sugestão do skymt, além de instalar sua chave GPG. Tudo o que eu tinha que fazer era

rpm --import RPM-GPG-KEY-PGDG
yum localinstall postgresql-8.2.10-1PGDG.f9.i386.rpm
yum localinstall .....

E assim por diante. No entanto, isso foi bastante desajeitado e eu ainda estou esperando que haja uma maneira mais fácil. Se alguém souber como obter o YUM para segmentar uma versão específica sem recorrer a isso, informe-nos para que possamos fazer isso da próxima vez.

    
por Eli Courtwright 23.09.2008 / 16:49

5 respostas

4

Em Centos eu fiz seguindo estes passos:

Em /etc/yum.repos.d/CentOS-Base.repo.

nas seções Base e Update adicione as próximas linhas exclude = postgresql * (então você não atualiza do repositório normal para o postgres rpm).

[base]
name=CentOS-$releasever - Base
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os
#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
exclude=postgresql*

#released updates
[updates]
name=CentOS-$releasever - Updates
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates
#baseurl=http://mirror.centos.org/centos/$releasever/updates/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
exclude=postgresql*

Em seguida, baixe a versão que você deseja. Consulte o link

wget http://yum.pgrpms.org/reporpms/8.3/pgdg-centos-8.3-6.noarch.rpm
rpm -ivh pgdg-centos-8.3-6.noarch.rpm

Agora você tem outro repo em seu /etc/yum.repos.d/ pgdg-82-centos.repo.

ls /etc/yum.repos.d/
CentOS-Base.repo  CentOS-Media.repo  pgdg-82-centos.repo

então, se você instalar o postgres, o centos irá usar o yum.pgsqlrpms.org /

yum install postgresql postgresql-server
    
por 25.11.2010 / 13:26
19

Na página de manual:

MISC

  Specifying package names

         A package can be referred to for install,update,list,remove  etc
         with any of the following:

          name
          name.arch
          name-ver
          name-ver-rel
          name-ver-rel.arch
          name-epoch:ver-rel.arch
          epoch:name-ver-rel.arch

          For example: yum remove kernel-2.4.1-10.i686

Você pode ter que remover manualmente a versão mais recente e, em seguida, instalar a versão mais antiga.

    
por 23.09.2008 / 17:30
2

Use a opção upgrade e especifique o número da versão:

yum upgrade postgresql-8.2.10

Verifique a lista de dependências antes de pressionar Y . Você pode precisar adicionar outros pacotes à lista de atualização.

    
por 20.11.2009 / 13:36
1

Uma rápida olhada na página man não revelou tal opção. Parece que eles ainda não acrescentaram isso; Yum ainda é um gerenciador de pacotes bastante jovem.

Em vez disso, baixe e instale manualmente os RPMs relevantes .

    
por 23.09.2008 / 16:54
0

Ouvi dizer que o gerenciador de pacotes inteligente pode fazer isso. (ainda não tive a oportunidade de experimentar). Yum é conhecido por não oferecer suporte a downgrade.

smart está disponível no fedora.

    
por 15.10.2008 / 21:18

Tags