Revista Do Linux
 
EDIÇÃO DO MÊS
 CD do Mês

 Capa
 Serviço Público
 Estudo de Caso
 Corporativo
 Negócios
 Software
 Tutorial
 Seguranca
 Comandos Avançados
 Internet
 Entrevista
 Hardware
 Portateis
 
 
 
<IMG> Software
<IMG> Conheça os detalhes do funcionamento do apt-get,
<IMG> a ferramenta que facilita a atualização do Linux
 
<IMG> A atualização do Linux é fundamental para manter a segurança do sistema. Quando uma falha de segurança é encontrada, a correção é rápida e a atualização, disponibi-lizada na Internet. A ferramenta que facilita a vida do administrador de sistemas é o apt-get. Esta ferramenta procura na Internet os pacotes atualizados e realiza a atualização destes pacotes de forma transparente e automática, inclusive resolvendo todas as “dependências”.
 
<IMG> Dependências
<IMG> O tratamento de dependências é uma característica importante em sistemas de gerenciamento de pacotes. Ele ajuda a manter a consistência do sistema, assegurando que tudo o que é necessário para o funcionamento de um determinado programa esteja instalado, na versão esperada.
<IMG> Porém, ferramentas como rpm ou dpkg apresentam um tratamento de dependências limitado. Elas se restringem à checagem das dependências de um pacote e a avisar o usuário que as operações relacionadas àquele pacote não poderão ser executadas até que todas as dependências sejam resolvidas. A instalação do pacote Pingus, por exemplo, envolve os seguintes passos:
<IMG> 1) Fazer o download do pacote Pingus.
<IMG> 2) Instalar com rpm -ivh; receber mensagens do gerenciador de pacotes avisando sobre bibliotecas não encontradas chamadas libClanLib.so e libSDL.so.
<IMG> 3) Descobrir quais pacotes contêm estas bibliotecas (www.rpmfind.net...).
<IMG> 4) Fazer o download dos pacotes ClanLib e SDL.
<IMG> 5) Instalar estas bibliotecas; receber novamente mensagens do gerenciador de pacotes, desta vez reclamando da falta de uma tal de libHermes.so.1; ficar impaciente com o gerenciador de pacotes.
<IMG> 6) Repetir os passos 3 e 4 para o pacote Hermes e instalá-lo.
<IMG> 7) Finalmente, instalar o Pingus.
<IMG> Situações parecidas podem ser encontradas na remoção de pacotes, já que um determinado pacote não pode ser desinstalado até que todos os pacotes que dependem dele sejam previamente removidos.
<IMG> A atualização de pacotes é similar à instalação. Não basta simplesmente obter uma nova versão e instalá-la. O novo pacote pode apresentar diferentes dependências em relação ao anterior, necessitando de novos pacotes ou versões diferentes de alguns já instalados.
<IMG> Naturalmente, tais tarefas poderiam e deveriam ser executadas automaticamente pelo gerenciador de pacotes, e não pelo usuário. E é exatamente isto que o APT — Advanced Pa-ckage Tool (Ferramenta Avançada para Pacotes) — faz. Ele pode instalar, remover e atualizar pacotes, gerenciando dependências e downloads de pacotes automaticamente. Os mesmos passos descritos acima podem ser executados pelo APT, conforme mostrado na tabela 1:
<IMG> Em virtude de o apt-get executar tarefas de manutenção do sistema, como atualizações de programas, de forma totalmente automática, os usuários podem sempre manter seu sistema em dia. Por exemplo, configurá-lo para obter atualizações de segurança de pacotes instalados pode ser tão simples quanto efetuar “apt-get upgrade” periodicamente.
 
<IMG> APT e
<IMG> pacotes RPM
<IMG> O APT foi escrito inicialmente por desenvolvedores do Debian (Brian White, Jason Gun-thorpe e outros voluntários). Conseqüentemente, ele suportava somente sistemas Debian e seu geren-ciador de pacotes dpkg. Embora tenha sido escrito para ser razoavelmente independente do sistema subjacente ao gerenciamento de pacotes, ninguém havia escrito uma versão dele compatível co m o RPM. Ao invés disso, muitos esforços independentes criaram programas diferentes para executar tarefas parecidas em sistemas que usam RPM.
<IMG> O autorpm, rpmfind, up2date/RHUN, urpmi/rpmdrake/Mandrake Update e muitos outros executam operações similares. A tabela 2 mostra um resumo comparativo das características presentes em cada uma das ferramentas:
<IMG> O APT parece estar melhor implementado que seus similares específicos para RPM e, após uma rápida avaliação empírica, também parece ser mais rápido. Daí ter sido escrito um suporte RPM para o APT. Este suporte faz com que o APT possa ser usado para instalar pacotes RPM em sistemas baseados em RPM como Conectiva, Mandrake, Red Hat e SuSE. A maior parte das ferramentas de terceiros baseadas em APT - senão todas ­ pode igualmente ser portada com relativa facilidade para também poder trabalhar com pacotes RPM.
<IMG> A versão atual RPM para APT é baseada no APT 0.3.19 e é mantida separadamente da versão oficial do APT. Esforços estão sendo envidados para adicionar as alterações de suporte a RPM à versão oficial do APT, a qual contém algumas novas ca-racterísticas e um novo código para melhor suportar diferentes sistemas de empacotamentos. Assim que essa versão esteja concluída, espera-se que as próximas versões oficiais do APT venham com suporte a RPM.
 
<IMG> Synaptic
<IMG> O Synaptic é um frontend gráfico que possui todas as funções do apt-get, o que possibilita a atualização do sistema sem a necessidade de digitar comandos na no console. Apresenta dois painéis, um com a lista dos pacotes e outro com a descrição detalhada dos componentes de um pacote. Para instalar, selecione o pacote e clique em instalar. Para remover, selecione um pacote e clique em remover. Simples, não?
 
<IMG> Tabela 1
 
<IMG> [root@zaphod ~]# apt-get install pingus
<IMG> Reading Package Lists... Done
<IMG> Building Dependency Tree... Done
<IMG> The following extra packages will be installed:
<IMG> ClanLib Hermes ImageMagick
<IMG> The following NEW packages will be installed:
<IMG> ClanLib Hermes ImageMagick pingus
<IMG> 0 packages upgraded, 4 newly installed, 0 to remove and 9 not upgraded.
<IMG> Need to get 2596kB of archives. After unpacking 9357kB will be used.
<IMG> Do you want to continue? [Y/n] y
<IMG> Get:1 ftp://mapi2 latest/conectiva/extra ClanLib 0.5.0-5cl [1087kB]
<IMG> Get:2 ftp://mapi2 latest/conectiva/extra Hermes 1.3.2-2cl [61.6kB]
<IMG> Get:3 ftp://mapi2 latest/conectiva/main ImageMagick 5.2.4-3cl [1034kB]
<IMG> Get:4 ftp://mapi2 latest/conectiva/extra pingus 0.4.1-2cl [413kB]
<IMG> Fetched 2596kB in 0s (3619kB/s)
<IMG> Executing RPM (-Uvh)...
<IMG> Preparing... ########################################### [100%]
<IMG> 1:pingus ########################################### [ 25%]
<IMG> 2:ClanLib ########################################### [ 50%]
<IMG> 3:ImageMagick ########################################### [ 75%]
<IMG> 4:Hermes ########################################### [100%]
 
<IMG> Tabela 2
 
<IMG> Quadro comparativo entre as diferentes
<IMG> ferramentas de atualização e seus recursos
 
<IMG> APT autorpm rpmfind up2date/RHUN *drake*/urpmi Download de pacotes Sim Sim Sim Sim Sim
<IMG> Resolução de depend. Sim Não Sim Sim(1) Sim(1)
<IMG> Instalação de pacotes Sim Não Sim Não Sim
<IMG> Remoção de pacotes Sim Não Não Não Sim
<IMG> Atualização de pacotes Sim Sim Sim Sim Sim
<IMG> Atualização do sistema Sim Não Sim Sim Sim
<IMG> Serv.http/ftp padrão(2) Sim Sim Não Não Sim
<IMG> Interf. linha de comando Sim Sim Sim Não Sim
<IMG> Interf. baseada em Curses Sim Não Não Não Não
<IMG> Interface X11 Sim Não Sim Sim Sim
<IMG> Operação não interativa Sim Não Sim Sim Não
<IMG> Autenticação de pacotes Sim(4) Não Sim ? Sim
<IMG> Autenticação espelho(3) Sim(4) ? ? ? ?
<IMG> Importância da Atualiz.(5) Sim(4) Não ? Sim Sim
 
<IMG> 1) Resolução de dependências até um número fixo ou configurável de passagens.
<IMG> 2) Normalmente todas as ferramentas requerem um índice especial de pacotes no servidor. Esse arquivo contém informações sobre os pacotes disponíveis; é um arquivo comum que pode ser baixado de servidores ftp ou http modificados, facilitando a configuração de sites espelho.
<IMG> 3) A autenticação de pacotes verifica automaticamente se o pacote baixado é realmente o que o fornecedor entregou. A autenticação de espelhos verifica se o conteúdo de um espelho é o mesmo do site original.
<IMG> 4) Esta característica foi incluída na versão RPM do APT, mas ainda não foi portada para a versão oficial.
<IMG> 5) Quando um pacote está sendo atualizado, mostra o motivo da atualização. É útil quando o usuário deseja saber se uma atualização está relacionada à segurança ou apenas a um aprimoramento.
 
 

A Revista do Linux é editada pela Conectiva S/A
Todos os Direitos Reservados.

Política de Privacidade
Anuncie na Revista do Linux