As instruções a seguir serão para o
Debian em sua maioria, mas podem servir, com algumas adaptações, para outras distribuições.
Primeiro acrescente o repositório do backport no arquivo de repositórios da tua distribuição, aqui no
Debian é /etc/apt/sources.list:
(Na sua distribuição você pode utilizar o gerenciador gráfico de pacotes, por exemplo, Synaptic, Yast, Pamac, etc, para ver os
backports, se tiver)
sudo vim /etc/apt/sources.list #usei o vim, use o teu editor de texto preferido.
Exemplo para o
Debian 12 Bookworm:
deb http://deb.debian.org/debian bookworm-backports main contrib non-free-firmware
deb-src http://deb.debian.org/debian bookworm-backports main contrib non-free-firmware
Debian 11 Bullseye:
deb http://deb.debian.org/debian bullseye-backports main contrib non-free
deb-src http://deb.debian.org/debian bullseye-backports main contrib non-free
Pode-se usar o terminal sem entrar no arquivo:
sudo echo 'deb http://deb.debian.org/debian bullseye-backports main contrib non-free' >> /etc/apt/sources.list
ATENÇÃO: Aconselha-se a deixarem comentados os repositórios
backports (com uma # no início da linha) e somente descomentar quando for usá-los para algum pacote específico, evitando assim que se faça update/upgrade de
backports instáveis. A linha deb-src está ali a título de curiosidade, mas não se faz necessária, pois a única função dela é baixar os fontes dos pacotes e isto é útil somente se você for um desenvolvedor que sabe o que está fazendo.
De acordo com a página oficial: "Deb-src indica pacotes fonte, que são os fontes originais do programa mais o arquivo de controle
Debian (.dsc) e o diff.gz contendo as mudanças necessárias para empacotar o programa." É útil também se você for desempacotar e/ou empacotar um pacote .deb, com o DPKG por exemplo.
Para usar especificamente um pacote backport, um programa, uma biblioteca, um aplicativo, etc, faz-se o seguinte:
# apt install /bullseye-backports
# apt-get install /bullseye-backports
ou
# apt install -t bookworm-backports
# apt-get install -t bookworm-backports
ou
# aptitude install /bookworm-backports
Exemplo:
# apt install apache2/bookworm-backports
# apt-get install apache2/bullseye-backports
# apt install -t bullseye-backports bind9
# apt-get install -t bookworm-backports nftables
# aptitude install squid/bookworm-backports
Prefira o formato apt/apt-get/aptitude install
/bookworm-backports porque a saída de informações, caso não tenha o pacote, é mais amigável em relação ao formato com -t.
Descomente a linha, instale o pacote desejado e comente a linha backport novamente.
***Evite executar update e/ou upgrade no sistema com os backports descomentados***
A Equipe Debian Backports mantêm um subconjunto de pacotes oriundos da próxima versão do Debian, ajustados e recompilados para uso na versão estável atual do Debian; isso acontece na esmagadora maioria das distribuições que usam Backports.
Você pode descomentar os backports e executar um install normal (apt/apt-get/aptitude install pacote) sem definir, por exemplo, pacote/bookworm-backports; porém, o comando instalará o pacote do primeiro repositório que encontrar o pacote e pode acontecer de baixar pacotes backports além do desejado. Para evitar isso, você pode colocar somente um repositório backport no arquivo de repositórios e deixá-lo comentado e somente descomentar quando precisar instalar um determinado pacote que não é encontrado nos outros repositórios.
Comandos
O comando abaixo lista pacotes instalados que não foram originados do Debian:
# apt list '?narrow(?installed, ?not(?origin(Debian)))'
- ?narrow(filtro, padrão) - Seleciona pacotes que correspondam ao filtro e ao padrão.
- ?or(padrão, padrão) - Corresponde a qualquer um dos padrões ou a ambos.
- ?origin(padrão) - Seleciona pacotes com determinada origem.
- ?obsolete - Corresponde aos pacotes instalados que não podem ser baixados.
- ?installed - Seleciona os pacotes instalados.
- ?not(padrão) ou ! - Seleciona qualquer pacote que não corresponda ao padrão.
O comando abaixo lista pacotes instalados de origem do Debian:
# apt list '?narrow(?installed, ?or(?origin(Debian)))'
O comando abaixo lista pacotes instalados que não foram originados de nenhum sources.list ou que não puderam ser baixados:
# apt list '?narrow(?or(!?origin(Debian), ?obsolete), ?installed)'
Instalando o apt-show:
sudo apt install apt-show-versions
O comando abaixo lista pacotes sem uma versão em nenhum repositório ou que tem uma versão superior às dos repositórios:
apt-show-versions | grep -e 'No available version' -e 'newer than version'
E temos o aptitude que também é excelente:
sudo apt install aptitude
Procura por pacotes instalados que não sejam estáveis:
aptitude search '?narrow(?installed, !?archive(stable))'
Procura por pacotes instalados a partir de versões de testes (assumindo que você tenha listas de fontes com repositórios estáveis (stable) e de teste (testing)):
aptitude search '?narrow(?installed, ?archive(testing) !?archive(stable))'
Listando pacotes de componentes contrib, non-free (não-livres) e non-free-firmware instalados:
aptitude search '~i ?section(non-free)'
aptitude search '~i ?section(contrib)'
aptitude search '~i ?section(non-free-firmware)'
Uma boa prática em relação ao Debian é usar:
# apt/apt-get/aptitude update
# aptitude safe-upgrade
O comando abaixo tem uma funcionalidade que atualizará tantos pacotes quantos puder, sem remover os pacotes existentes. Às vezes é necessário remover um pacote para atualizar outro; o comando safe-upgrade não é capaz de atualizar pacotes em tais situações.
# aptitude safe-upgrade
Use o comando abaixo para atualizar todos os pacotes, porém é mais agressivo na solução de problemas de dependências: o full-upgrade instalará e removerá pacotes até que todas as dependências estejam satisfeitas. Devido à natureza deste comando é possível que ele faça coisas indesejáveis e, portanto, você deve ter cuidado ao usá-lo.
# aptitude full-upgrade
Particularmente, sempre utilizo apt-get update seguido de aptitude safe-upgrade quando necessário. E em caso de fazer upgrade de uma versão de sistema para outra, por exemplo, diretamente do Debian 11 para o 12 prefira o seguinte procedimento: https://www.vivaolinux.com.br/dica/Atualizando-Debian-11-para-Debian-12/
Ao digitar somente
aptitude
No Debian (com o aptitude instalado) aparecerá uma janela que mostra a quantidade de nNvos pacotes, Pacotes instalados, Pacotes não instalados, Pacotes obsoletos e criados localmente, Pacotes virtuais e Tarefas. É só ir selecionando com as setas de direção cada uma das opções que expandirá/aparecerá embaixo a explicação necessária. Para sair da janela digite a letra q.
Toda distribuição tem seus comandos específicos, basta você procurar no site oficial da sua distribuição. Como exemplo deixarei aqui alguns comandos do OpenSuse:
1) Encontre os pacotes instalados, que vêm de repositórios de distribuição que não são do openSUSE:
zypper search -s | grep "i |" | grep -vi "| patch" | grep -vi "| opensuse" > list1.txt
2) Encontre os pacotes que estão disponíveis nos repositórios OpenSuse (não importa se estão instalados ou não):
zypper search -s | grep "v |" | grep -vi "| patch" | grep -i "| opensuse" > list2.txt
Também pode-se usar:
zypper pa -i
zypper pa --orphaned
zypper pa -i | grep @System
Como já dito, toda distribuição tem seus comandos, basta procurar no site oficial da sua distribuição ou você pode utilizar a interface gráfica do gerenciador de pacotes da sua distribuição.
No Debian geralmente para corrigir o famoso "Impossível corrigir problemas, você manteve (hold) pacotes quebrados." deve-se executar essa sequência de comandos:
sudo dpkg --configure -a
sudo apt-get -f install
sudo apt-get -f remove
sudo apt-get autoremove
sudo apt-get --fix-broken install
sudo apt-get autoclean
sudo apt-get update
E ainda assim às vezes não resolve, mas na esmagadora maioria dos casos resolve.
Para maiores informações sobre backports e backporting veja as referências abaixo onde você encontra instruções até para criar seus próprios backports:
Backports: