Novamente estou aqui para lhes passar uma pequena dica que para muitos pode nem ser novidade, porém para alguns a dúvida pode existir.
Bom, para aqueles que ainda não sabem, o apt é uma ferramenta da Debian para gerenciamento de pacotes de forma simples, amigável e rápida, contando inclusive com a instalação automática de dependências necessárias para a finalização do processo.
O que muitas pessoas ainda não sabem é que utilizando-se do comando "apt-get install NOME_PACOTE" serão instalados pacotes que o mesmo não removerá automaticamente posteriormente, fazendo assim um acúmulo de "lixo" em nosso sistema. Como assim?
Suponhamos que eu queira instalar um aplicativo de instant messenger como por exemplo o amsn. Esta ferramenta possui dependências necessárias para seu funcionamento, sendo elas o TCL e o TK. O seguinte comando fará a instalação do amsn juntamente com suas dependências, sem que eu precise me preocupar em buscar por elas desesperadamente na internet:
# apt-get install amsn
Ótimo! Agora tenho o meu messenger devidamente instalado, sem nenhuma dificuldade e funcionando perfeitamente. Porém, um certo dia resolvi remover essa ferramenta que com o tempo parei de usar, então para isso utilizo o seguinte comando:
# apt-get remove amsn
Perfeito! Meu amsn está desinstalado sem dificuldade alguma. ;]
Agora, e o que acontece com os dois pacotes que foram instalados juntamente com ele anteriormente? TCL e TK?
Bom, eles continuam instalados, fazendo um certo acúmulo de "lixo" em seu sistema. O mesmo ocorre com todos os pacotes que forem instalados em seu sistema e futuramente removidos com o apt-get.
Onde entra o Aptitude nessa história?
Bom, o aptitude tem um funcionamento bem semelhante para a instalação de pacotes. Passaremos a adotar o mesmo cenário aqui, instalando portanto o amsn:
# aptitude install amsn
Assim como o apt-get, o aptitude irá instalar automaticamente as dependências do amsn, TCL e TK. Passado algum tempo, resolvo remover o amsn usando o seguinte comando:
# aptitude remove amsn
Aparentemente ele terá o mesmo efeito do apt-get, com o grande diferencial de excluir juntamente com o amsn, as suas dependências que outrora foram instaladas, TCL e TK.
Imagine a quantidade de pacotes desnecessários que deve existir em sua máquina... provavelmente vários. O aptitude é uma solução para que isto não ocorra mais.
E para os fãs de distribuições como o Fedora que utilizam-se da ferramenta Yum para instalar seus pacotes, caso tenha surgido a curiosidade, fica a informação de que, infelizmente, o yum ainda não possui este mecanismo. :/ A mesma curiosidade surgiu em mim e resolvi testar, porém o yum, assim como o apt-get, apenas me removeu o amsn, deixando para trás as dependências que foram instaladas.
Essa foi uma simples dica para aqueles que desconheciam este fato diferencial dentre os dois. Espero ter ajudado com esta pequena contribuição para com a comunidade.
[3] Comentário enviado por jborda em 23/01/2008 - 14:19h
Muito legal, porem me restou uma dúvida:
e se um dos pacotes instalados junto com o principal for utilizado mais tarde por outro pacote?
seguindo seu exemplo:
digamos que o firefox tambem utilize o TK
quando eu insalar o ferifox ele passará a utilizar o TK
quando eu desintalar o amsn ele não desinstalar o TK certo?
e quando eu desisntalar o firefox, ele vai desisntalar o TK?,
e se for ao contrário, eu desisntalar o firefox e depois o amsn
o que acontecerá com o TK?
[4] Comentário enviado por juliofsn em 23/01/2008 - 14:49h
Para o rrinfor:
Ele só vai remover as dependências se também for instalado usando o comando aptitude.
Para o contrabando:
O aptitude verifica as dependências antes de desinstalá-las, se houver outro software com essa dependência, ela será mantida, lembrando que deve-se usar o aptitude para instalar também, podem ocorrer vários problemas se você instalar alguns pacotes com apt-get e outros com aptitude.
[5] Comentário enviado por kalib em 23/01/2008 - 14:51h
O aptitude removerá as dependências apenas se elas não forem necessárias para outra aplicação...
Ao depois remover o firefox, ele deverá desinstalar também o tk por ser uma dependência já desnecessária ao sistema...
Ele não remove necessariamente as dependências que foram instaladas juntamente com o amsn... até porque eu poderia ter instalado o tk por exemplo separadamente...antes do amsn..
Porém, ao remover o amsn, ele vai buscar as dependências do mesmo que são lixo, ou seja.que não servem mais para nenhum pacote...e assim limpar. ;]
[7] Comentário enviado por removido em 23/01/2008 - 14:59h
Só gostaria de ressaltar que o apt-get também tem um mecanismo com esta finalidade.
O comando: apt-get autoremove
Remove todos os pacotes que não são mais necessários ao sistema.
Eu até tentei me acostumar a usar o aptitude ao invés do apt-get, mas depois que um "aptitude remove epiphany" removeu todos os pacotes gráficos (gnome completo, X, etc) do meu Debian Lenny, desisti e continuei usando o bom e velho apt-get!
[8] Comentário enviado por kalib em 23/01/2008 - 15:03h
Isso mto me surpreende..nunca passei por problemas desse tipo com o aptitude..já passei por alguns problemas com o apt-get em versões mais antigas do ubuntu por exemplo...mas com o aptitude nunca passei por isso..nem no debian, nem no (k)ubuntu, nem em outras distros...
[9] Comentário enviado por VonNaturAustreVe em 23/01/2008 - 15:05h
Hi
É bem simples o aptitude também trabalha com os pacotes sugeridos,isto faz com que ele faça instalações mais "completas".Sempre uso o aptitude quando tenho problema na compilação de um pacote.
[10] Comentário enviado por juliofsn em 23/01/2008 - 15:09h
raci0nal, eu editei meu post pra explicar melhor esse problema.
O que ocorreu foi que a maior parte do que você tinha deve ter sido instalado usando o apt-get, assim o comando aptitude não tinha conhecimento dos outros programas que dependiam dos pacotes gráficos.
O ideal é: se for usar aptitude, use em tudo desde o começo, ou use o synaptic, que é uma interface para o aptitude.
[17] Comentário enviado por kalib em 11/04/2008 - 08:33h
Rapaz...dá sim...
Ambos estão em seu sistema e você utiliza quando bem entender..porém a mistura pode atrapalhar e tornar as coisas desorganizadas.... :/
[20] Comentário enviado por kalib em 01/02/2009 - 21:34h
Olá khyron...
Camarada, o aptitude, bem como o apt-get, é uma ferramenta que vem nativamente nas distribuições debian like, como o kurumin. Independente de sua versão...
No caso, basta utilizar a sintaxe dita anteriormente no artigo. Nunca usei o kurumin 7 em específico mas acredito que o aptitude venha com o mesmo..assim como as demias versões....
Qualquer coisa: # aptitude update
Isso vai atualizar seus mirrors, ou pelo menos deveria o fazer..
[23] Comentário enviado por removido em 26/12/2009 - 21:59h
Uso linux há 1 ano apenas.
Comecei usar linhas de comando ha pouco tempo(apt-get)
Só usa adicinar/remover e synaptic.
Mas vou usar o apitude daki pra frente.
valews
[24] Comentário enviado por pharker em 18/08/2010 - 19:07h
Cara não uso muito o aptitude. Então não posso dar uma opinião sobre o último. Entretanto é importante ressaltar que o apt-get tem funçõe simples como:
apt-get autoclean
apt-get autoremove
Esse comandos ajudam a retirar os pacotes que estão obsoletos no sistema.
Valeu!!!!