Configurando o apt – Debian e Ubuntu

APT – Gerenciador de Pacotes Debian/Ubuntu

A ferramenta apt foi desenvolvida no GNU/Debian para solucionar problemas de dependencias de instalações e compilações de softwares. O pacote apt (opcional), é permite vc utilizar varias ferramentas como o apt-get, que permite fazer o download dos pacotes a instalação e suas dependencias para o gerenciador de pacotes do Debian local, o dpkg fazer o resto. Ao contrario do que muita gente pensa, o apt-get nao instala NADA e nunca vai instalar. A única função do apt-get é fazer os devidos downloads dos pacotes para o seu diretorio de cache (/var/cache/apt/archives), e então utilizar o dpkg para instalar os devidos pacotes resolvendo suas dependencias, coisa que o dpkg sozinho não é possivel fazer. Outra ferramenta interessante é o apt-cache (que tb faz parte do apt), que permite consultar o cache local do apt (a base de dados), que fora baixado pelo resultado do comando apt-get update. também existe outras como o apt-key, que verifica as chaves de assinatura dos pacotes com o servidor e o apt-cdrom que permite gerar instalações adcionando CDs a informações de repositório.

O apt trabalha a nível de cliente/servidor atraves de informações de repositórios de acesso a pacotes ao contrario do dpkg. Como disse antes o apt nao instala e nem remove pacote nenhum, pois ele gerencia o dpkg a fazer o resto pois quando utilizamos a ferramenta apt-get ele consulta o servidor atras do pacote a ser instalado e juntamente com ele baixa suas devidas dependencias e centraliza todos os pacotes no seu diretorio de cache em /var/cache/apt/archives. Vale lembrar tambem que como ele utiliza o dpkg para instalar, vc pode consultar os proprios logs do dpkg em /var/log/dpkg.log.

O seu arquivo de configuração fica em /etc/apt/sources.list onde determinamos “quais” os servidores de onde ele vai baixar pacotes. A lista de repositorios de informações ficam em linha e se parecem com isso: “deb SERVIDOR/diretorio distribuição principal adcional.

ex: deb http://ftp.debian.org/debian stable main non-free contrib  (padrao do debian)

O apt assim como o yum (yum.repos.d), tb possui o diretorio /etc/apt/sources.list.d que permite não por linha, mas por arquivos,  centralizar e ter um controle maior de cada servidor. Em vez de colocar todos os servidores diretamente ao sources.list é so criar um arquivo para cada servidor. INCLUSIVE eh o que o add-apt-repository faz!

“deb” diz que o seu apt vai pegar pacotes .deb, que sao os pacotes de Debian Packages, “http://ftp.debian.org/debian”, é o servidor onde ele vai conectar para pegar seus programas. Nota que ele suporta tanto os protocolos http (sendo http_proxy para proxy), ftp ou no caso de local, file:///. Neste nosso exemplo ele vai se conectar ao site do debian no diretorio debian onde esta a lista de pacotes que vc pode baixar. Ja o “stable” , que é o diretorio de pacote que ele vai se conectar e vai trabalhar em pacotes para debian stable (que atualmente é o debian 5.0 com o codinome de lenny), podendo ser alterado para unstable(sid), testing (squizzer) experimental. “main”, significa a lista principal do repositorio e non-free e contrib são pacotes adcionais que nao estao relacionados totalmente ao opensource e os de contribuição pessoal.

#apt-get update –> AO CONTRARIO DO yum, o comando update nao atualiza todos os pacotes instalados e sim a lista de pacotes que podem ser baixados futuramente com o comando install. O apt possui um grande diferencial ao yum que é a possibilidade de apenas a atualizacao de todos os pacotes de uma vez só evitando assim a possibilidade de um possivel probema com dependencias no futuro com outros pacotes desde que o apt sempre mantém os pacotes super atualizados.  O upgrade  é o comando que complementa o update para seguir com a atualização de pacotes, de TODOS os pacotes .deb ja instalados e que podem ser consultados pelo dpkg -l | less.

#apt-get install <pacote1> <pacote2> … -> permite fazer o download diretamente do pacote e suas dependencias para o diretorio de cache do apt em /var/cache/apt/archives para que o dpkg instale todos os pacotes e proceda com os scripts de finalização. Em caso de erro, apt-get -f install resolverá seus problemas (em alguns casos para finalizar a fila de instalaçao, vc precisa utilizar a propria ferramenta dpkg com o seguinte argumento:” dpkg –configure -a”, então ele conclui sozinho pra vc ).

#apt-get remove <pacote1> <pacote2> -> utiliza o dpkg para remover sua aplicação, sendo que vc poderá remover o pacote e TODOS os arquivos de configuração com a opção  –purge, sendo a opção -P do dpkg.

#apt-get upgrade -y   –> atualiza todos os pacotes instalados mas desde que vc realmente tenha executado o comando apt-get update antes pois ele atualiza a base de dados do apt,ou melhor dizendo, a lista de pacotes que vc pode baixar. Mediante ao lançamento de uma nova versao de um pacote e de suas dependencias o apt-get update precisa ser executado antes para entao ser executado o comando “upgrade” para seguir com a atualizacao. Lembrando que seja n Debian ou no Ubuntu o comando tras todas as atualizações de segurança. Muito bom!

#apt-get dist-upgrade –> o diferencial do dist-upgrade para apenas o update eh que ele faz o download e instala nao apenas a atualizacao de pacotes mas sim de toda a distribuicao de acordo com o nome que foi justificado no arquivo /etc/apt/sources.list. A funcao dele eh atualizar o lsb-release do Debian e do Ubuntu que pode ser consultado no arquivo /etc/debian_version OU /etc/lsb-release  no Ubuntu. O comando lsb_release -a pode ser executado tb. A funcao do dist-upgrade é atualizar todos os pacotes e toda a distribuicao.

#apt-get clean –> MUITO IMPORTANTE pois limpa o cache do apt. Lembre-se que o apt nao instala nada e sim faz o download dos pacotes .deb e armazena no seu diretorio de cache local que fica em /var/cache/apt/archives e usa o dpkg pra instalar sozinho pra vc😉
Entao cara, quanto mais programas vc instala pelo apt-get, MAIS ARQUIVOS serao armazenados em cache. COmo se vc estivesse no site do mantedor e clica-se em download. Esse diretorio vai crescer absurdamente entao sempre que vc quiser LIMPAR O SEU CACHE, digite apt-get clean e ele apaga todos os arquivos que estao la. Ou entao tu entra la e apaga geral com rm, ae eh problema seu.

#apt-cache  –>  permite o administrador consultar o cache local do apt que ANTES foi atualizado com o apt-get update. O interessante dele eh o ” search ” que permite consultar pacotes por titulos ou pelo nome do pacote (acrescentando o flag -n), “show” ,que permite visualizar status e informacoes de um pacote como dependencias,localizacao do diretorio pool la do servidor (repositorio aonde se encontra o arquivo que vc vai baixar), “showpkg” que eh o mesmo so que mais resumido e “depends” que permite verificar apenas os pacotes dependentes,conflitos e as sugestoes. Além o email do mantedor,só não se ele vai te responder! hehehe

Exemplos do apt-cache:

#apt-cache search raid
#apt-cache search nintendo
#apt-cache search -n disk
#apt-cache show mdadm
#apt-cache dependes mdadm

Exemplos do apt-get

#apt-get install mdadm postifix -y
#apt-get remove wine -y
#apt-get install pidgin -d  (o flag -d faz apenas o download para o diretorio de cache_
#apt-get install lvm2 -s  (o flag -s apenas simula uma instalacao com os scripts debconf)

Vale lembrar tambem que o arquivo de log do apt se encontra no arquivo /var/log/dpkg.log,pois vamos levar em consideracao aquilo que falei antes,pois o apt nao instala nada e sim usa o dpkg para instalar. O arquivo de log nao esta bem associado ao syslogd e sim pode ser alterado no arquivo /etc/dpkg/dpkg.cfg.

O apt trabalha com assinatura de pacotes mediante a chaves gpg entao deve-se sempre configurar a chave assinando com o comando apt-key add chave. Sendo que vc pode visualizar todos as chaves com o comando apt-key list.

O Ubuntu vem com uma grande novidade que é o comando add-apt-repository que permite o administrador adcionar a um arquivo em /etc/apt/sources.list.d/ e automaticamente baixar a chave também fazendo com o que o repositorio seja de confiança. Como o Ubuntu trabalha com o Launchpad que é o seu grande e imenso repositorio de pacotes conhecido pelo nome de ppa, entao para adcionar um novo ppa basta adcionar o endereço ppa que o comando add-apt-repository vai entender😉

Muito poder!

O apt tambem vem com o utilitario apt-cdrom que permite o root gerenciar e catalogar os CDs/DVDs cheios de pacotes “como repositorios”, no seu sources.list. As unidades precisam estar montadas e entao o root deve executar o comando #apt-cdrom add -d /media/cdrom e pronto! Foi adcionado sozinho no seu sources.list e desde entao toda vez que vc executar apt-get install ele vai consultar primeiro no CD/DVD e se nao encontrar o pacote, na internet.

O mais interessante eh a utilização do apt-mirror que permite vc ter um espelho do repositorio de pacotes do debian ou ubuntu na sua maquina local ou servidor web. Exatamente isso, mas se prepare pois o mirror do Debian custa 18GB e do Ubuntu 40GB.

Existem tb varios outros softwares que servem como auxiliadores do apt ou como front-ends. Como o caso do antigo dselect (que eh uma M…..), aptitude que eh uma boa opcao apesar de que ele faz o apt-get e o apt-cache ao mesmo tempo atraves de um menu interativo e interessante e o synaptics que eh o apt-get do grafico (uma bosta).
O Ubuntu vem com o update-manager que é sem duvida a melhor opcao grafica para o gnome e permite nao somente atualizar todos os pacotes mas tb a distribuicao.
Bom! Para terminar, lembre-se que este apt possui poderes de super vaca.

digita ai
#apt-get moo


….”Have you mooed today?”…

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

%d blogueiros gostam disto: