Digamos que você esteja executando um servidor e não queira atualizar para o Testing (Squeeze) do Stable (Lenny) para instalar apenas um ou dois pacotes necessários.
Qual é a melhor maneira de instalar apenas determinados pacotes do Testing?
linux
debian
package-management
aptitude
Gareth
fonte
fonte
Respostas:
Muitas pessoas parecem ter medo de misturar estável com teste, mas, francamente, o teste é bastante estável por si só, e com preferências e verificação de soluções adequadas, você pode evitar o "desvio da estabilidade" que coloca seus principais pacotes no caminho instável.
"O teste é bastante estável?" , você pergunta. Sim. Para que um pacote seja migrado de instável para teste, ele precisa ter zero bugs abertos por 10 dias consecutivos. As chances são de que, especialmente para os pacotes mais populares, alguém enviará um relatório de bug para uma versão instável, se algo estiver errado.
Mesmo se você não quiser misturar os ambientes, ainda é bom ter a opção, caso você encontre algo que exija uma versão mais nova do que a que está estável.
Aqui está o que eu recomendo para configurar isso:
Primeiro, crie os seguintes arquivos em
/etc/apt/preferences.d
:stable.pref
:testing.pref
:unstable.pref
:experimental.pref
:(Não tenha medo do material instável / experimental aqui. As prioridades são baixas o suficiente para que nunca seja instalado automaticamente nada disso. Até o ramo de testes se comportará, pois só instalará os pacotes que você deseja em testes.)
Agora, criando um conjunto correspondente para
/etc/apt/sources.list.d
:stable.list
: Copie do seu original/etc/apt/sources.list
. Renomeie o arquivo antigo para algo comosources.list.orig
.testing.list
: O mesmo questable.list
, exceto comtesting
.unstable.list
: O mesmo questable.list
, exceto comunstable
, e remova as listas de segurança.experimental.list
: O mesmo queunstable.list
, exceto comexperimental
.Você também pode adicionar um
oldstable
insources.lists.d
epreferences.d
(use a prioridade 1), embora esse apelido tende a expirar e desaparecer antes do próximo ciclo estável. Em casos como esse, você pode usarhttp://archive.debian.org/debian/
e "codificar" a versão do Debian (etch, lenny, etc.).Para instalar a versão de teste de um pacote, basta usar
aptitude install lib-foobar-package/testing
ou simplesmente acessar a GUI do aptitude e selecionar a versão dentro dos detalhes do pacote (pressione enter no pacote que você está vendo).Se você receber reclamações de conflitos de pacotes, consulte as soluções primeiro. Na maioria dos casos, o primeiro será "não instale esta versão". Aprenda a usar as opções de resolvedor de aceitação / rejeição por pacote. Por exemplo, se você estiver instalando foobar-package / testing, e a primeira solução for "não instale foobar-package / testing", marque essa opção como rejeitada, e as outras soluções nunca voltarão a esse caminho. Em casos como esse, você provavelmente precisará instalar alguns outros pacotes de teste.
Se estiver ficando muito peludo (como se estivesse tentando atualizar a libc ou o kernel ou algum outro sistema central enorme), você poderá rejeitar esses caminhos de atualização ou simplesmente voltar completamente da atualização inicial. Lembre-se de que ele só atualizará as coisas para teste / instável se você permitir.
EDIT: corrigidos alguns pinos prioritários e atualizamos a lista.
fonte
apt-get update
depois de criar os arquivos de configuração?sudo apt-get update
, recebi um erro de atualização. Então reiniciei, o que me deuXsession error
, reiniciei novamente e agora não tenho GUI. o/dev/sda1/
agora está cheio. Ótimo.Em
/etc/apt/apt.conf.d
adicionar o seguinte arquivo99defaultrelease
:in
/etc/apt/sources.list.d
- adicione URLs para fontes instáveis / de testestable.list
:testing.list
:corre
e instale o que você precisa com
Seja muito cuidadoso se você instalar coisas com muitas dependências. De preferência, não faça isso na produção.
Você também pode tentar a sua sorte em backports ou repositório similar.
fonte
apt_preferences
Defina o nível padrão para o qual o sistema deve 'atualizar com segurança' no arquivo / etc / apt / preferências:
man apt_preferences
Você pode fazer muito com o apt_preferences, mas por uma questão de simplicidade ...
Eu precisava instalar um único pacote (autoMysqlBackup) que estava disponível apenas no Testing. A solução foi adicionar o seguinte ao / etc / apt / preferências:
Com vários repositórios adicionados ao /etc/apt/sources.list, o aptitude agora atualizará apenas para o release especificado, mesmo que os repositórios de repositório posteriores estejam listados (neste caso, 'stable').
Portanto, para instalar esse pacote, tudo o que você precisa fazer é:
fonte
Pelo que vale, o conselho geral que sempre vi é "Não misture estável com nada". A maioria dos tutoriais de sistemas mistos é para misturar testes e instáveis.
O raciocínio parece ser que, se você misturar estável com testes, pacotes muito básicos (como libc6) exigirão atualizações (para instalar o software a partir de testes) e, uma vez que esses pacotes básicos passarem para testes, todo o sistema poderá se desviar dessa maneira.
Aqui estão duas alternativas:
fonte
A documentação do debian é extensa no assunto e eu recomendo fortemente que se aprofundem, pois revelará verdadeiramente a beleza do sistema debian.
Dê uma olhada em Como manter um sistema misto , ele explicará tudo o que você precisa saber.
fonte
Outra maneira, que poderia impedir a instalação de muitas dependências do Testing ou do Sid, é esta: você diz ao apt-get para obter o código-fonte do pacote do Testing ou do Sid e cria um pacote para o seu sistema usando as ferramentas Debian (não é necessário mexer manualmente) com fontes).
Citando aqui:
https://wiki.debian.org/DebianUnstable#How_do_I_backport_a_sid_package_to_testing_or_stable.3F
fonte
Venho fazendo isso há um longo período de tempo para ter certeza de que é suficientemente seguro e pode ser conveniente. Com a configuração abaixo, a versão estável será instalada por padrão, no entanto, o Aptitude também permitirá que você escolha a versão com portabilidade ou instável, se assim o desejar:
Há quatro coisas que precisam ser editadas, a liberação de fixação padrão precisa ser definida, as fontes precisam de backports e instáveis adicionados, diminuindo a prioridade de fixação de pacotes de backports / instáveis e as configurações de exibição do aptitude precisam ser modificadas para exibir a fixação.
etc/apt/preferences
arquivo fixado - se o arquivo não existir, crie-o.fonte
source.list
isso, deve dizer o nome do código emjessie
vez desqueeze
. A política do Debiantesting
está quase estável e os pacotes têm sido quase tão novos quanto nounstable
repositório. Estou ficando sem espaço aqui, portanto, dê uma olhada em: wiki.debian.org/DebianReleases , wiki.debian.org/StableUpdates e wiki.debian.org/StableProposedUpdates ; os dois últimos são fontes de repositório adicionais.Se sua seleção de pacotes estiver mais envolvida ou a instalação for repetida em várias máquinas, considere configurar um repositório privado que espelha um subconjunto dos repositórios oficiais. Isso requer um pouco de trabalho para configurar o repositório, mas a recompensa é fácil de manter, com um mínimo de configuração em cada cliente e resultados repetíveis ao executar dezenas de instalações. Acho isso útil mesmo quando apenas um ou dois pacotes estão sendo instalados e uso esse método para automatizar e manter instalações na nuvem. Um único servidor em um VPS barato pode lidar com dezenas de repositórios particulares.
Para configurar seu servidor de repositório privado:
Em seguida, configure o servidor da Web de sua escolha para servir os arquivos do repositório estático. Possivelmente, proteja o repositório com um certificado de segurança e autenticação básica.
Para manter automaticamente seu repositório privado e obter atualizações do upstream, coloque o acima em um script e execute a partir de um trabalho cron.
Para configurar sua máquina cliente, na sua máquina cliente:
Para manter sua máquina cliente e obter todas as atualizações de repositório particular, em sua máquina cliente:
fonte
Outra opção é fazer o download do pacote de origem do teste. O APT pode criar automaticamente o pacote de origem após o download. Dessa forma, seus pacotes estáveis não serão afetados pelo teste de atualizações. A única desvantagem é que levará mais tempo do que apenas baixar e instalar o pacote binário.
Para configurar o APT para baixar pacotes de origem do teste, basta adicionar:
Se você deseja apenas seguir os testes atuais e não os futuros, substitua "testing" pelo nome de código atual (no momento da redação deste documento, é "buster")
fonte