From 7bbb0e62d91bfe2610bb887a1a5ca4a1e1bebe11 Mon Sep 17 00:00:00 2001 From: Thadeu Lima de Souza Cascardo Date: Thu, 20 Mar 2008 19:19:45 -0300 Subject: [PATCH] =?utf8?q?Descri=C3=A7=C3=A3o=20do=20que=20s=C3=A3o=20gere?= =?utf8?q?nciadores=20de=20software?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit O que são, o que fazem e os exemplos mais comuns de gerenciadores de software: rpm e dpkg. Um pouco sobre sua origem e formato. --- software/gerenciadores | 55 ++++++++++++++++++++++++++++++++++++++++++ software/list | 1 + 2 files changed, 56 insertions(+) create mode 100644 software/gerenciadores diff --git a/software/gerenciadores b/software/gerenciadores new file mode 100644 index 0000000..06cb5e0 --- /dev/null +++ b/software/gerenciadores @@ -0,0 +1,55 @@ +Gerenciadores de Pacotes + +Para tornar útil a informação contida em pacotes, é necessário um +software que faça verificações e produza os resultados esperados das +operações de instalação, remoção e atualização. Esse software é o +gerenciador de pacotes. Entre dois exemplos de gerenciadores de pacotes, +temos o rpm e o dpkg. + +Além de extrair os arquivos do pacote e copiá-los na árvore de +diretórios do sistema e executar as intruções pré e pós instalação, o +gerenciador de pacotes armazena os meta-dados em uma base de dados de +pacotes. Diferentes gerenciadores utilizam diferentes métodos de +armazenamento. O rpm, por exemplo, utiliza o BDB (Berkeley Database), +uma estrutura de dados de hash ou árvore que permite a rápida +recuperação dos dados em disco. O dpkg, em contrapartida, armazena as +informações em arquivos em um diretório e em um arquivo texto com o +status de cada pacote. + +O gerenciador de pacotes, geralmente, deve garantir a consistência do +sistema, impedindo a instalação de pacotes cujas dependências não +estejam instaladas ou impedindo a remoção de um pacote que é dependência +de outros ainda instalados. A verificação de que o sistema está íntegro +também pode ser feita, verificando que os arquivos no sistema são os +mesmos dos pacotes. Isso pode ser feito utilizando "hashes" ou "sums" +dos arquivos. Daí a importância de distinguir quais são arquivos de +configuração, já que esses podem ser modificados. Lembrando que essa +verificação não pode garantir segurança alguma do sistema, já que os +"hashes" também podem ser modificados por um eventual invasor. + +O gerenciador de pacotes permite, além de instalar, remover e atualizar +pacotes, a consulta a sua base de dados, permitindo verificar que +pacotes estão instalados e seus meta-dados, incluindo relações com +outros pacotes e arquivos. + +Os principais gerenciadores de pacote em sistemas que comumente utilizam +GNU e Linux são o rpm e o dpkg. Enumerar todas as alternativas só não +seria tão grande quanto enumerar as distribuições de GNU e Linux já que +boa parte delas utilizam justamente o rpm e o dpkg. + +O rpm foi criado pela Red Hat e é, ainda hoje, utilizado nas +distribuições que se baseiam ou se basearam nela. É também o formato de +pacote padrão do LSB (Linux Standard Base). Recentemente, ocorreu uma +iniciativa de modernizar o rpm. No entanto, essa iniciativa, chamada de +rpm5, não pretende manter compatibilidade com o formato padrão do LSB e +está adotando outros formatos, como o xar, cujos meta-dados são +descritos utilizando XML. + +O dpkg é o gerenciador de pacotes criado pelo projeto Debian. O formato +de seus pacotes são denominados deb, ao contrário do rpm, que é tanto o +nome do gerenciador quanto do formato. Os meta-dados do deb são +descritos em um formato RFC822, o mesmo dos cabeçalhos de e-mails, em +um arquivo tar armazenado em um arquivo ar, onde se encontra o arquivo +tar com os arquivos a instalar. Veremos em uma próxima seção como +extrair esses arquivos utilizando ferramentas facilmente encontradas em +sistemas diferentes do Debian. diff --git a/software/list b/software/list index 68bcc11..e8fe09e 100644 --- a/software/list +++ b/software/list @@ -1,3 +1,4 @@ introducao bibliotecas pacotes +gerenciadores -- 2.20.1