Atualiza um único pacote de uma versão de destino

3

No Debian Squeeze eu instalei um packageX do debian-backports.

Q1: Quando eu apt-get dist-upgrade ou aptitude full-upgrade , qual versão está marcada para atualizações do pacoteX? debian-backports ou debian-stable?

Q2: Posso usar um comando para atualizar um único pacote de uma versão específica? Por exemplo, aptitude -t full-upgrade packageX é um comando válido? Eu tentei aptitude -st full-upgrade packageX , mas a saída não foi útil.

Q3: Para fins de conclusão, quais são as respostas equivalentes para as distribuições baseadas em RPM?

    
por alxs 04.04.2013 / 15:27

2 respostas

2

Q1 : isso depende das suas prioridades atuais. Você pode visualizar as prioridades com o comando apt-cache policy . Aqui está um exemplo de algumas linhas da saída:

 500 http://security.debian.org/ stable/updates/main amd64 Packages
     release v=6.0,o=Debian,a=stable,n=squeeze,l=Debian-Security,c=main
     origin security.debian.org

 100 http://backports.debian.org/debian-backports/ squeeze-backports/main amd64 Packages
     release o=Debian Backports,a=squeeze-backports,n=squeeze-backports,l=Debian Backports,c=main
     origin backports.debian.org

Você também pode usar apt-cache policy em um único pacote:

$ apt-cache policy linux-image-2.6-amd64 
linux-image-2.6-amd64:
  Installed: (none)
  Candidate: 2.6.32+29
  Version table:
     3.2+46~bpo60+1 0
        100 http://backports.debian.org/debian-backports/ squeeze-backports/main amd64 Packages
     2.6.32+29 0
        500 http://apt.magazines.com/debian/ stable/main amd64 Packages

As prioridades são explicadas em apt_preferences(5) :

   P > 1000
       causes a version to be installed even if this constitutes a downgrade of the package

   990 < P <=1000
       causes a version to be installed even if it does not come from the target release, unless the installed version is more recent

   500 < P <=990
       causes a version to be installed unless there is a version available belonging to the target release or the installed version is more recent

   100 < P <=500
       causes a version to be installed unless there is a version available belonging to some other distribution or the installed version is more recent

   0 < P <=100
       causes a version to be installed only if there is no installed version of the package

   P < 0
       prevents the version from being installed

No nosso exemplo, isso significa que, se o pacote fornecido já estiver instalado a partir dos backports, ele será atualizado a partir dos backports. Se não for instalado a partir de backports, o repositório backports não será usado.

Q2 : O comando install é usado para atualizar pacotes únicos. Se o pacote já estiver instalado quando install for fornecido, ele será atualizado se houver uma atualização disponível.

apt-get install packageX
aptitude install packageX

Q3 : Para uma distribuição baseada em RPM, isso dependeria da distribuição. Coisas como yum não estão vinculadas a rpm da mesma forma que apt está vinculada a dpkg . A ferramenta usada para atualizações e gerenciamento remoto varia de acordo com a distribuição. Os comandos yum (RHEL) e zypper (SLES) são os mais comuns.

    
por 04.04.2013 / 17:26
0

Re Q3: O próprio RPM não tem nenhum conceito de repositório e, portanto, pode buscar e instalar arquivos apenas como direcionados. O gerenciador de pacotes yum pode ser configurado para usar vários repositórios, mas pelo menos no Fedora, RHEL e clones os conjuntos de pacotes em uma versão da distribuição são mais ou menos ligados, tentando instalar pacotes RHEL 6 no RHEL 5 (ou vice-versa) é uma receita certa para o desastre (se as dependências estiverem disponíveis). Mas isso não tem nada a ver com o RPM ou o yum (ou dnf hoje), que é a política de gerenciamento de pacotes / repositórios para a distribuição, principalmente.

    
por 04.04.2013 / 18:03