Table of Contents
Introdução ao Gerenciamento de Pacotes no Linux (apt, apt-get, dpkg)
No sistema Linux, especialmente em distribuições baseadas no Debian e Ubuntu, o gerenciamento de pacotes é uma tarefa fundamental para manter o sistema atualizado e garantir a instalação, remoção e atualização eficiente de softwares. O gerenciamento de pacotes é feito principalmente através de ferramentas como `apt`, `apt-get` e `dpkg`, cada uma com suas funcionalidades específicas.
- `apt`: Uma interface moderna e amigável para instalação e gerenciamento de pacotes, que simplifica as operações mais comuns de forma intuitiva. - `apt-get`: Ferramenta mais antiga e robusta, utilizada amplamente em scripts de automação e para operações mais detalhadas. - `dpkg`: O gerenciador de pacotes de baixo nível, responsável por instalar, remover e consultar pacotes `.deb` diretamente.
Abaixo, você encontrará exemplos organizados por níveis de complexidade que demonstram como utilizar essas ferramentas para manter seu sistema atualizado, instalar e remover pacotes, resolver dependências e configurar pacotes de forma eficiente.
Nível Básico
- Atualizar a lista de pacotes disponíveis com `apt`:
sudo apt update
- Atualiza a lista de pacotes disponíveis nos repositórios configurados.
- Instalar um pacote com `apt`:
sudo apt install nome_pacote
- Instala o pacote especificado.
- Remover um pacote com `apt-get`:
sudo apt-get remove nome_pacote
- Remove o pacote especificado do sistema, mas mantém os arquivos de configuração.
- Listar todos os pacotes instalados com `dpkg`:
dpkg -l
- Exibe a lista de todos os pacotes instalados no sistema.
- Instalar um pacote local (.deb) com `dpkg`:
sudo dpkg -i pacote_local.deb
- Instala um arquivo `.deb` diretamente no sistema.
Nível Intermediário
- Atualizar todos os pacotes instalados para suas versões mais recentes com `apt`:
sudo apt upgrade
- Atualiza todos os pacotes instalados para suas versões mais recentes, mantendo as configurações.
- Instalar múltiplos pacotes de uma vez com `apt`:
sudo apt install pacote1 pacote2 pacote3
- Instala vários pacotes ao mesmo tempo.
- Remover um pacote e seus arquivos de configuração com `apt-get`:
sudo apt-get purge nome_pacote
- Remove o pacote e seus arquivos de configuração.
- Corrigir dependências quebradas com `apt-get`:
sudo apt-get -f install
- Corrige pacotes com dependências quebradas e instala as dependências ausentes.
- Desinstalar um pacote instalado com `dpkg`:
sudo dpkg -r nome_pacote
- Remove um pacote instalado usando o `dpkg`.
Nível Avançado
- Atualizar o sistema e remover pacotes não utilizados com `apt`:
sudo apt full-upgrade && sudo apt autoremove
- Atualiza os pacotes instalados e remove pacotes desnecessários, como dependências órfãs.
- Listar informações detalhadas sobre um pacote instalado com `apt`:
apt show nome_pacote
- Exibe informações detalhadas sobre o pacote, incluindo dependências e versão instalada.
- Buscar pacotes que correspondem a um padrão com `apt`:
apt search palavra_chave
- Busca por pacotes disponíveis nos repositórios que contêm a palavra chave especificada.
- Reconfigurar pacotes após instalação com `dpkg`:
sudo dpkg-reconfigure nome_pacote
- Reconfigura pacotes instalados para ajustar as configurações (útil para pacotes com opções de configuração).
- Listar os arquivos instalados por um pacote com `dpkg`:
dpkg -L nome_pacote
- Lista todos os arquivos instalados pertencentes a um pacote.
Nível Especializado
- Adicionar um repositório de terceiros e instalar um pacote com `apt`:
sudo add-apt-repository ppa:nomerepositorio && sudo apt update && sudo apt install nome_pacote
- Adiciona um repositório de terceiros, atualiza a lista de pacotes e instala um pacote do novo repositório.
- Limpar o cache local de pacotes com `apt`:
sudo apt clean
- Remove os arquivos de pacotes antigos do cache local, liberando espaço em disco.
- Instalar pacotes sem interações com `apt-get`:
sudo apt-get install -y nome_pacote
- Instala o pacote sem pedir confirmação interativa ao usuário (`-y`).
- Forçar a reinstalação de um pacote com `apt-get`:
sudo apt-get install --reinstall nome_pacote
- Reinstala um pacote que já está instalado.
- Verificar quais pacotes estão faltando ou foram parcialmente instalados com `dpkg`:
sudo dpkg --audit
- Lista pacotes que estão parcialmente instalados ou corrompidos.
- Remover um pacote ignorando dependências com `dpkg`:
sudo dpkg --force-all -r nome_pacote
- Remove um pacote, forçando a remoção mesmo que haja dependências faltantes ou problemas de dependência.
- Gerar uma lista de pacotes instalados em um arquivo com `dpkg`:
dpkg --get-selections > lista_pacotes.txt
- Gera uma lista de todos os pacotes instalados e salva no arquivo `lista_pacotes.txt`.
- Instalar pacotes a partir de uma lista gerada com `dpkg`:
sudo dpkg --set-selections < lista_pacotes.txt && sudo apt-get dselect-upgrade
- Instala pacotes de acordo com a lista gerada anteriormente com `dpkg –get-selections`.
