goncin@wordpress.com:~$ _

Linux, programação e toda sorte de nerdices

Arquivos de tags: apt

apt-get vs. aptitude

Você, usuário do Ubuntu, Linux Mint e outras distros baseadas no Debian, já deu seu sudo apt-get update hoje? Ou prefere sudo aptitude update? Tanto faz? O apt-get e o aptitude são bastante parecidos, mas é bom saber que há diferenças importantes entre as ferramentas.

Ambos são frontends para o dpkg, o sistema de gerenciamento de pacotes do Debian, e como tal herdado pelas distros filhas. O aptitude nasceu como uma interface orientada a menus em modo terminal, mas também pode (e deve) ser utilizado na linha de comando. O apt-get, por seu turno, faz parte de um conjunto (o qual inclui ainda o apt-cache, o apt-file e o apt-cdrom) de comandos de terminal, e portanto não tem nada parecido com “menuzinhos”.

Se ambos podem ser utilizados praticamente da mesma forma, então qual a diferença entre eles? Vamos aos fatos.

Atualização do cache de pacotes (apt-get update vs. aptitude update)

Para essa tarefa, prefiro o aptitude, pelo simples fato de que, após atualizar o cache de pacotes, ele mostra a contagem de pacotes novos e atualizáveis. Com isso, é possível saber se será necessário dar um aptitude safe-upgrade (ou aptitude dist-upgrade) na sequência para manter o sistema atualizado, sem emitir esse comando.

Gerenciamento de dependências quebradas

Outro ponto em que o aptitude é melhor que o apt-get. Ao tentar instalar um pacote (com aptitude install <nome-do-pacote>), e caso haja pacotes quebrados (ou seja, com dependências não satisfeitas), o aptitude se prontifica a consertá-los, enquanto o apt-get se limita a dizer que é necessário executar o comando apt-get install -f antes de tentar instalar qualquer pacote. Se as sugestões de conserto do aptitude funcionam 100% das vezes, isso já é outra história. Mas pelo menos ele tenta.

Expressões regulares nos nomes dos pacotes

Para isso o apt-get é rei. Vira e mexe, lá estou eu desinstalando e instalando o X Server e todos os drivers de vídeo. O nome do pacote do X Server é xserver-xorg, e os drivers de vídeo seguem o padrão xserver-xorg-<nome-do-driver>. Com o apt-get, é possível executar apt-get remove (ou install) xserver-xorg*, mas com o aptitude, não :(. Com aquele, consigo (des)instalar todos os pacotes citados com uma única linha de comando.

Limpeza automática de pacotes não mais necessários

Se algum pacote se tornar desnecessário ou obsoleto, o aptitude o removerá automaticamente em sua próxima execução, sem sequer questionar o usuário. O apt-get se adstringe a informar que é preciso executar apt-get autoremove (?!) para se livrar do lixo.

Procurando por pacotes (apt-cache search vs. aptitude search)

Nisso a diferença é puramente cosmética. O aptitude search devolve as informações em colunas alinhadas, mais fáceis de ler.

Poderes de Super Vaca

Ah, sim, por último e não menos importante: o apt-get muge (apt-get moo), o aptitude não.  Mas este reserva uma surpresinha aos insistentes. Experimente esta sequência de comandos no terminal:

aptitude -v moo
aptitude -vv moo
aptitude -vvv moo
aptitude -vvvv moo
aptitude -vvvvv moo
aptitude -vvvvvv moo

Divirtam-se! 🙂

Anúncios
%d blogueiros gostam disto: