
Tenho tentado entender a diferença entre esses dois comandos e percebi que obtenho resultados diferentes.
apt-get install -t testing appX
apt-get install appX/testing
Fundo
Eu configurei minhas listas de fontes e fixei a configuração conformehttps://serverfault.com/a/382101/132528
Resultados atuais
root@home:/etc/apt# apt-cache policy i3
i3:
Installed: (none)
Candidate: 4.2-2
Version table:
4.8-1 0
750 http://debian.mirror.ac.za/debian/ testing/main amd64 Packages
750 http://ftp.us.debian.org/debian/ testing/main amd64 Packages
50 http://debian.mirror.ac.za/debian/ unstable/main amd64 Packages
50 http://ftp.us.debian.org/debian/ unstable/main amd64 Packages
4.8-1~bpo70+1 0
100 http://debian.mirror.ac.za/debian/ wheezy-backports/main amd64 Packages
4.2-2 0
995 http://debian.mirror.ac.za/debian/ wheezy/main amd64 Packages
995 http://debian.mirror.ac.za/debian/ stable/main amd64 Packages
995 http://ftp.us.debian.org/debian/ stable/main amd64 Packages
Escolhe 4.2-2, ao fazer
apt-get install -t testing appX
E escolhe 4,8 ao fazer
apt-get install appX/testing
Manual do Debian:
-t targetRelease
Para dizer ao apt-get para usar uma distribuição específica ao procurar por pacotes atualizados, você precisa usar a opção -t ou --target-release, seguida do nome da distribuição desejada (por exemplo: apt-get -t stable atualizar).
pacote/distribuição
Caso o arquivo fontes.list mencione diversas distribuições, é possível informar a versão do pacote para instalação. Um número de versão específico pode ser solicitado com apt-get install package=version, mas indicar sua distribuição de origem (Estável, Teste ou Instável) — com apt-get install pacote/distribuição — geralmente é preferível.
Pergunta
Em ambos os casos você especifica a distribuição que deseja, mas o comportamento em questão não é consistente entre os dois casos?
Responder1
Eu estava tendo o mesmo problema, mas descobri!!!
(Originalmente eu queria comentar isso ema resposta originalporque outras pessoas parecem estar tendo esse problema também, mas eu não tinha pontos mágicos de "reputação" suficientes na época para que minha opinião fosse valiosa, então aqui vai.)
É uma peculiaridade dos valores que ele escolheu para fixação. Quando você executa o apt-get install my_package
, o apt escolhe de qual fonte instalar esse pacote com base no que tiver a maior prioridade de fixação.
A configuração geral do sistema (versão padrão) tem prioridade de 990.
Adicionar -t unstable
ao comando apt-get torna temporariamente "instável" a versão padrão desse comando.
Ele configurou sua prioridade de fixação para que "estável" fosse995. Isso significa que não importa o que aconteça, os pacotes sempre serão instalados a partir do estável, já que sua prioridade é ainda maior que a prioridade da versão padrão.
Então a correção? Fácil - basta alterar a prioridade do pino /etc/apt/preferences.d/security.pref
de 995 para 900.