O comando apt-get no Linux, é popularmente conhecida como a ferramenta mais poderosa de gerenciamento de pacotes deste sistema operacional. O apt-get é muito utilizado para instalar aplicativos e pacotes no Linux.
De forma nativa, este comando faz parte das distribuições baseadas no Debian, como o popular Ubuntu.
Como um gerenciador de pacotes bastante completo, o apt-get permite aos usuários administradores a fazerem várias tarefas relacionadas aos pacotes dos softwares, como instalar, atualizar, remover, bem como efetuar buscas por pacotes.
Conteúdo
Funcionalidades do Linux apt-get
Agora vamos detalhar um pouco mais sobre as funcionalidades que o apt-get no Linux nos traz, bem como demonstrar exemplos de como usá-las.
Atualização de pacotes Linux com apt-get
É altamente recomendável que, antes de você efetuar a instalação de quaisquer novos pacotes, comece pela atualização das dependências dos pacotes para versões mais recentes disponíveis.
Sendo assim, execute o comando abaixo.
Para Ubuntu e Debian
$ sudo apt-get update
Para CentOS e AlmaLinux
$ sudo yum update
Instalação de Pacotes
Após ter atualizado as dependências no passo anterior, para que você possa instalar pacotes no Linux, o comando apt-get install é a parte mais importante no gerenciamento de pacotes necessários para a instalação, mais especificamente em distribuições baseadas em Debian, como o Ubuntu.
Por exemplo, se você precisa fazer a instalação do mysql client, execute o apt-get para instalar os novos pacotes no sistema. A exemplo, você usaria o comando:
Para Ubuntu e Debian
$ sudo apt-get install mysql-client
Para CentOS e AlmaLinux
$ sudo yum install mysql-client
Se houver a necessidade de outros pacotes para que o mysql client funcione, o apt-get irá baixá-los automaticamente durante a execução do comando de instalação.
Atualização do sistema com apt-get
Para atualizar o sistema operacional com os pacotes mais recentes disponíveis, você pode executar o seguinte comando:
Em Ubuntu e Debian
$ sudo apt-get -u upgrade
Em CentOS e AlmaLinux
$ sudo yum -u upgrade
A opção -u é responsável por exibir a lista de pacotes que está sendo atualizada.
Outra forma de atualizar os pacotes do sistema é fazendo uso da opção dist-upgrade.
Essa opção fará com que a distribuição toda seja sincronizada e atualizada, assim como garantir que os pacotes já instalados sejam compatíveis entre si durante a atualização.
Em Ubuntu e Debian
$ sudo apt-get -u dist-upgrade
Em CentOS e AlmaLinux
$ sudo yum -u dist-upgrade
Remoção de pacotes com o apt-get
Assim como instalar, também é fácil você remover pacotes com o apt-get.
Caso você saiba qual é o nome do pacote, basta usá-lo no comando para remoção.
Em Ubuntu e Debian
$ sudo apt-get remove nome-do-pacote
Em CentOS e AlmaLinux
$ sudo yum remove nome-do-pacote
Como nosso exemplo, removeremos o mysql client anteriormente instalado:
Após digitar Y e pressionar Enter, o pacote em questão é removido.
Porém, durante o processo de remoção foi exibida uma lista de pacotes não mais necessários no sistema.
Para removê-los, caso apareça uma lista semelhante para você, use o comando a seguir:
Em Ubuntu e Debian
$ sudo apt-get autoremove
Em CentOS e AlmaLinux
$ sudo yum autoremove
Após pressionar Y e Enter, você pode ver que a lista de remoção será processada e finalizada automaticamente.
Caso você queira remover mais de um pacote, poderá removê-los no mesmo comando, basta incluir os nomes dos pacotes separados por espaço.
Em Ubuntu e Debian
$ sudo apt-get remove nome-do-pacote1 nome-do-pacote2 nome-do-pacote3
Em CentOS e AlmaLinux
$ sudo yum remove nome-do-pacote1 nome-do-pacote2 nome-do-pacote3
Sugestão: Caso você não saiba exatamente o nome do pacote que queira remover, basta digitar as primeiras letras do nome do pacote e então pressionar a tecla TAB para ir autocompletando o nome.
Alternativamente, você pode exibir a lista de todos os pacotes de softwares instalados.
Para tanto, basta usar a opção –installed junto ao apt e procurar o pacote desejado na lista, pois a listagem será bastante extensa.
Em Ubuntu e Debian
$ sudo apt list --installed
Em CentOS e AlmaLinux
$ sudo yum --installed
Observe que neste caso utilizamos o comando apt, ao invés de apt-get. Isso foi necessário, pois o comando apt-get não possui uma opção nativa que faça essa listagem.
Tratando os arquivos de configuração após remover pacotes
Quando você desinstala pacotes usando o comando apt remove, os arquivos de configurações (presentes em /etc) assim como as configurações de usuário não são excluídas.
Acontece que, se você voltar a instalar o mesmo software, voltará a usar as mesmas configurações pessoais.
Como em nosso exemplo, você pode conferir se há arquivos relacionados ao mysql client que não foram removidos anteriormente. Para tanto, usamos o comando:
$ sudo find / -type d -name *mysql-client 2>/dev/null
Conforme o resultado da saída, você pode ver que não houve vestígios de arquivos do mysql client para remover. Mas, se caso houvesse, bastaria executar o comando abaixo para a limpeza completa.
Em Ubuntu e Debian
$ sudo apt-get purge mysql-client
Em CentOS e AlmaLinux
$ sudo yum purge mysql-client
Instalando os melhores pacotes com o apt-get
Se um software recentemente não funciona ou deixou de funcionar, podemos fazer uso da opção satisfy para que o apt-get faça busca por dependências melhores disponíveis e as instale.
Sintaxe do comando:
$ sudo apt-get satisfy nome_do_pacote
Ou em nosso exemplo, vamos reinstalar o pacote anteriormente removido:
$ sudo apt-get satisfy mysql-client
Como você pode observar, o comportamento do comando é semelhante ao apt-get install.
Limpando o Linux com apt-get
Deixar o Linux o mais enxuto o possível é uma tarefa que pode ser feita sem complicações.
Pois, além do comando opcional autoremove já visto neste artigo, há outros dois comandos que contribuem para a limpeza do sistema.
O primeiro deles, o autoclean, você pode utilizar para limpar o repositório local do Linux, excluindo os arquivos de pacotes obsoletos, que geralmente não podemos mais baixá-los por serem considerados inúteis.
Além disso, este comando faz com que o cache crescente dos pacotes fiquem sob controle, poupando ainda mais espaço.
Sintaxe para uso:
$ sudo apt-get autoclean
A segunda opção, o clean, faz a limpeza um pouco mais profunda do que o autoclean.
Este comando auxiliar limpa e remove os pacotes .deb presentes no diretório de cache do apt-get, exceto os arquivos com estado “lock” pelo sistema:
/var/cache/apt/archives/e
/var/cache/apt/archives/partial/
Se você queira conferir qual o espaço ocupado pelos arquivos de pacotes .deb no momento, execute este comando:
$ du -sh /var/cache/apt/archives
Estes arquivos .deb guardados em cache são uteis para quando queremos remover e reinstalar algum software, tornando o processo mais rápido.
Mas, se sua conexão à internet possui boa velocidade, o download dos pacotes durante a reinstalação de um software não será um problema.
Sintaxe do comando que você pode usar para a limpeza dos pacotes .deb
$ sudo apt-get clean
Caso haja arquivos para serem removidos, a saída do comando exibirá o conteúdo que foi removido.
Inspecionando dependências com o apt-get
O apt-get possui um comando complementar que tem como função ser uma ferramenta de diagnósticos.
O complemento “check” faz a atualização das listas de pacotes que estão em cache e verifica se há dependências quebradas neles.
E se houver, será feita a substituição dos pacotes com problema.
$ sudo apt-get check
Baixando códigos fonte com o apt-get
Com o apt-get no Linux é possível baixar o código fonte completo de um pacote específico que esteja disponível nos repositórios do sistema.
Para poder baixar códigos fonte, verifique no arquivo /etc/apt/sources.list se há os repositórios de código fonte configurados.
Caso não estejam, você pode configurá-los e em seguida executar a sintaxe de comando abaixo para baixar o código fonte desejado.
Para Ubuntu e Debian
$ sudo apt-get source nome-do-pacote
Para CentOS e AlmaLinux
$ sudo yum source nome-do-pacote
por fim, o código fonte será baixado e armazenado no diretório atual em que o usuário está.
Compilando pacotes com o apt-get
Com o comando apt-get build-dep é possível instalar as dependências de construção para um pacote específico.
Instalar pacotes dessa forma é particularmente útil se você deseja compilar um pacote de software a partir de seu código-fonte.
Dessa forma, basta utilizar a sintaxe a seguir, substituindo “pacote” pelo nome do pacote pelo qual você queira instalar as dependências de compilação.
Em Ubuntu e Debian
$ sudo apt-get build-dep pacote
Em CentOS e AlmaLinux
$ sudo yum build-dep pacote
Por exemplo, se você deseja construir um pacote chamado “editor”, você deverá executar:
$ sudo apt-get build-dep editor
$ sudo yum build-dep editor
Então, o comando fará a análise do código fonte do pacote especificado e se encarregará de instalar todas as dependências de construção necessárias, como bibliotecas e ferramentas de desenvolvimento, necessárias para compilá-lo com sucesso.
Diferença entre apt e apt-get no Linux
O apt surgiu como sendo uma versão mais recente do apt-get no Linux, com foco em ser uma alternativa mais fácil de se utilizar do que o apt-get.
E para ser essa alternativa mais fácil no uso, o apt combina em sua estrutura as funcionalidades de diversas ferramentas que gerenciam pacotes, resultando em maior conveniência para quem a usa.
Porém, na prática, não há tanta diferença no uso entre essas ferramentas.
Uma vez que você aprende a fazer uso do apt-get, certamente estará automaticamente familiarizado para usar o apt e vice-versa.
Diferença entre aptitude e apt-get no Linux
O aptitude é mais uma das ferramentas de gestão de pacotes que surgiu baseada no apt-get.
Porém, o que difere o aptitude do apt-get é que este foi criado para ter dentre suas funcionalidades, uma interface interativa com o usuário.
Isso permite que você busque, instale ou remova pacotes de uma forma mais interativa com aptitude ou totalmente por linha de comando como faz também ao usar o apt-get.
Enquanto o apt-get foi criado para somente distribuições Linux baseadas em Debian, o aptitude foi desenvolvido para ser compatível tanto com distribuições baseadas em Red Hat quanto baseadas em Debian.
Sendo o apt e o aptitude gerenciadores de pacotes mais recentes do que o apt-get, isso não faz do apt-get obsoleto, pelo contrário, apenas solidifica ainda mais a eficiência dessa ferramenta que deu base para a existência das duas novas citada
O apt-get no Linux possui ampla eficiência em suas funcionalidades.
Quando se trata de atualização de pacotes de outras ferramentas, atualização do sistema operacional, outras atualizações, como por exemplo, do kernel, limpeza de pacotes, resolução de dependências, instalação de novos pacotes, entre outras tarefas, o apt-get executa muito bem, sendo bastante eficiente.
Como atualizar o apt-get no Linux?
Se esse utilitário é capaz de atualizar todos os pacotes das outras ferramentas, como podemos fazer para atualizarmos a ele mesmo?
A solução é simples, você pode utilizar a ferramenta aptitude safe-upgrade ou os comandos derivados apt upgrade, apt-get upgrade, porém, antes disso você deve executar o comando apt update.
O comando apt update deve ser executado primeiro, pois é responsável por analisar os pacotes que já estão instalados, buscando pelos pacotes que possam ser atualizados sem remover nenhum outro.
Saída semelhante que você poderá visualizar quando executar apt update:
$ sudo apt-get update
Pressione Y e em seguida, pressione Enter para poder continuar.
Na sequência, execute um dos comandos indicados anteriormente, como por exemplo, o aptitude safe-upgrade.
Se ao rodar o comando aptitude safe-upgrade você obter o retorno de comando não encontrado, será necessário instalá-lo. Então execute:
Para Ubuntu e Debian
$ sudo apt-get install aptitude
Para CentOS e AlmaLinux
$ sudo yum install aptitude
Pressione Y e em seguida, pressione Enter para poder continuar.
Agora será o momento de executar novamente o comando para atualização dos pacotes.
Para Ubuntu e Debian
$ sudo aptitude safe-upgrade
Para CentOS e AlmaLinux
$ sudo yum safe-upgrade
Haverá a saída semelhante:
Tecle Y e em seguida Enter para aplicar as atualizações.
Considerações Finais
O apt-get é uma ferramenta essencial para gerenciar software no Linux, tanto em um PC desktop como em um servidor VPS.
Sua simplicidade e eficácia tornam a administração de pacotes uma tarefa mais conveniente e segura.
Mas, é importante que você o use com cuidado para evitar a remoção acidental de pacotes críticos do sistema.
Em suma, a combinação do apt-get com arquivos de configuração em /etc/apt/sources.list permite personalizar as fontes de pacotes, tornando-o altamente flexível. É uma escolha confiável para manter seu sistema Linux atualizado e eficiente.