Você está na página 1de 3

OSTENSIVO GUIA DE ESTUDO

CAPÍTULO 08

GERENCIAMENTO DE PACOTES

8.1 - O CONCEITO DE PACOTES

Em um sistema como o Linux, centenas de programas e ferramentas são instalados e


rodam em um mesmo ambiente para que tudo funcione conforme esperado. A
manutenção dessa base de programas instalados sempre é um desafio: a
complexidade é alta e um descuido pode deixar o sistema inoperante.

É impraticável que o administrador tenha que manualmente copiar arquivos para


os diretórios corretos, definir permissões, configurações e outras tarefas que
envolvem a instalação de um programa. Posteriormente quando precisar remover o
programa, ainda resta lembrar de todos os arquivos utilizados para apagá-los um a
um.

Usar pacotes é uma maneira de distribuir programas de forma padronizada. Um


pacote é um arquivo único que contém vários outros arquivos, e que também
guarda informações variadas sobre o programa, bem como as instruções de como
instalá-lo e removê-lo do sistema.

Muito mais complexo que um simples "tarball" (juntar vários arquivos em um só


com o comando tar), um pacote carrega procedimentos de instalação que
podem envolver a execução de programas, testes, configuração do sistema e
até mesmo a remoção de versões anteriores, programas antigos ou incompatíveis.
De maneira similar, uma atualização ou remoção de um pacote pode necessitar de
procedimentos a serem executados antes de ser efetivada.

Um pacote também traz informações sobre pré-requisitos para seu funcionamento,


chamadas dependências. Um único pacote pode precisar que vários outros já
estejam instalados no sistema para funcionar corretamente. Usando requisitos o
programa fica mais enxuto, aproveitando partes do sistema sem precisar recodificá-
las.

Outra vantagem de se ter um esquema de dependências, é que um pacote


grande poder ser dividido em vários pacotes menores, possibilitando ao usuário
instalar somente os componentes desejados e agilizando os procedimentos de
download.

Cada pacote traz diversas informações sobre o programa que abriga, entre outras:
sua versão, licença, arquitetura, endereço de Internet, descrição, espaço em disco
necessário e listagem dos arquivos que o compõem com suas respectivas
permissões.

Um pacote também pode ser assinado, trazendo consigo uma confirmação de


sua origem, a garantia de que ele não foi alterado por terceiros. Essa assinatura
digital é utilizada por distribuições para garantir a autenticidade de seus pacotes.

O pacote em si trazer todas estas vantagens é um grande avanço. Mas como são
vários os pacotes necessários para se fazer um sistema mínimo operante, também
é preciso definir um local único para se registrar quais são todos os pacotes
OSTENSIVO - 8-1 -
OSTENSIVO GUIA DE ESTUDO

instalados, seus arquivos e suas características. Entra em cena o segundo


componente do esquema de pacotes: o banco de dados. Centralizado, indexado
e exclusivo para a tarefa.

Recapitulando, temos dois componentes envolvidos:

 Pacotes: padronizam a distribuição e instalação de programas no sistema.


 Banco de dados: guarda informações sobre arquivos e pacotes.

10.2 - O GERENCIADOR DE PACOTES

Um pacote sozinho não faz nada, ele não é um executável ou um instalador como os
.EXE do mundo Windows. Ele traz consigo o programa, seus dados e os
procedimentos de instalação, mas não os executa. O banco de dados de pacotes
também não tem ações, ele serve para armazenamento e busca somente. Está
faltando uma peça para fechar o conceito: um gerenciador.

O gerenciador de pacotes é o programa que efetivamente faz. Ele é o responsável


por extrair os dados e informações de um pacote, executando os procedimentos de
instalação, atualização e remoção deles no sistema. É ele também quem atualiza
as informações do banco de dados, adicionando, atualizando e removendo
registros conforme os pacotes são manipulados.

E mais, o gerenciador também consegue lidar com situações complicadas como a


mudança de nome de um pacote, alteração de sua estrutura interna de arquivos e
instalação simultânea de vários pacotes interdependentes em um único passo.

Os dois principais gerenciadores de pacotes disponíveis no mundo Linux são:

 dpkg: criado pela distribuição Debian,Ubuntu e distriuições derivados. Seus


pacotes usam sufixo”.deb”.
 RPM: criado pela distribuição Red Hat (RedHat Package Manager) e
adotado pela maioria das demais distribuições, entre elas o SUSE Linux,
Fedora e Mandriva. Os pacotes possuem o sufixo “.rpm”.Pacotes são
usalmente instalados utilizando ferramentas como yum (fedora), Yast (SUSE)
ou urpmi (Mandriva).

Ambos são similares na função de gerenciar pacotes e banco de dados, porém os


formatos são diferentes e cada qual seguiu sua própria evolução. Não há melhor ou
pior, cada um usa sua própria abordagem para resolver o mesmo problema.

10.3 - O COMANDO RPM

O gerenciador de pacotes RPM é usado na console através do comando rpm, que


possui diversas opções, sendo uma suíte completa de manipulação de pacotes.
Os pacotes feitos para este gerenciador chamam-se "pacotes RPM" e sua
nomenclatura tem um formato especial:

Formato: nome-versão-release.arquitetura.rpm
Exemplo: tree-1.5.G-lmdk.Í586.rpm

OSTENSIVO - 8-2 -
OSTENSIVO GUIA DE ESTUDO

Opções principais:

rpm [opções] [pacotes]


-q Informa a versão atual do pacote informado, caso instalado
-qa Lista todos os pacotes instalados
-qi Mostra as informações gerais do pacote informado
-ql Mostra os arquivos que compõem o pacote informado
-qlv Mostra os arquivos que compõem o pacote informado, em
detalhes
-qf Informa o nome do pacote ao qual o arquivo informado pertence
-P Aplica a pesquisa em um arquivo de um pacote não instalado
-ivh Instala um ou mais pacotes, mostrando status
-Uvh Atualiza um pacote já instalado para uma versão nova
-e Remove um ou mais pacotes do sistema

As dependências são pacotes que estão diretamente ligados ao pacote que irá ser
instalado, ou seja, são pré-requisitos essenciais. Se um pacote depende de outro,
ambos devem ser instalados pois o programa em questão só irá funcionar se todas
suas dependências estiverem supridas.

As recomendações são pacotes que não são essenciais, porém adicionam/retiram


alguma função que o programa poderia ter. Por exemplo, quando instalamos o
pacote “mozilla-browser” é recomendado também a instalação do pacote “mozilla-
psm”, que dá suporte às paginas seguras, mas este último não é obrigatório e,
portanto, se não for instalado não será um impedimento na instalação do “mozilla-
browser”.

As sugestões são pacotes relacionados com o complemento de funcionalidade. A


instalação desse pacote pode fornecer alguns complementos em relação ao pacote
que está sendo instalado.

Os conflitos são pacotes que não podem ser instalados simultaneamente no


sistema.

10.4 - O COMANDO zypper

O Zypper é um gerenciador de pacotes em linha de comando que foi introduzido no


openSUSE 10.2 Beta 1, ele é bem fácil de usar e não deixa nada a desejar a
nenhum outro gerenciador, instalando, procurando, removendo, atualizando e muito
mais.
Opções principais:

zypper [opções] [pacotes]


-se Realiza a busca pelo pacote
-in Instala o pacote
-rm Remove o pacote
-if Mostra as informações completas sobre o pacote
-up Atualiza os pacotes
help Ajuda do comando.

OSTENSIVO - 8-3 -

Você também pode gostar