RPM (Linux)

Origem: Wikipédia, a enciclopédia livre.
Ir para: navegação, pesquisa
Disambig grey.svg Nota: Para outros significados de RPM, veja RPM (desambiguação).
RPM Package Manager (RPM)
RPM Package Manager (RPM)
Captura de tela
Autor Erik Troan, Marc Ewing,[1]
Red Hat
Desenvolvedor Community & Red Hat[2][3]
Lançamento 1997 (18–19 anos)[1]
Versão estável 4.13 (5 de agosto de 2015 (0 anos))
Linguagem C, Perl[4]
Sistema operacional Linux, Unix-like
Gênero(s) Sistema gestor de pacotes
Licença GPL
Página oficial www.rpm.org

O RPM, originalmente abreviatura de Red Hat Package Manager, e atualmente um acrónimo recursivo de RPM Package Manager (“Gerenciador de Pacotes RPM”)[5] é um sistema de gerenciamento de pacotes de software, assim como o formato de arquivo usado por esse sistema. Ele é parte da Linux Standard Base[5] . O RPM serve para instalar, atualizar, desinstalar, verificar e procurar softwares[5]. Originalmente desenvolvido pela Red Hat, RPM é agora usado por muitas distribuições Linux. E também é portado para outros sistemas operacionais como NetWare da Novell e AIX da IBM.

Base de dados RPM[editar | editar código-fonte]

Atrás do gerenciador de pacotes está o banco de dados RPM. Ele consiste de uma lista duplamente ligada que contêm todas as informações de todos os RPMs instalados. O banco de dados lista todos os arquivos que são criados ou modificados quando um usuário instala um programa e facilita a remoção desses arquivos. Se o banco de dados ficar corrompido (o que acontece facilmente se o cliente de RPM é fechado subitamente), as ligações duplas garantem que ele possa ser reconstruído sem nenhum problema. Em computadores com o sistema operacional RedHat instalado, este banco de dados se encontra em /var/lib/rpm.

Rótulo dos Pacotes[editar | editar código-fonte]

Todo pacote RPM tem um rótulo de pacote(package label), que contem as seguintes informações:

  • o nome do software
  • a versão do software (a versão tirada da fonte original do pacote)
  • e edição do pacote (o número de vezes que o pacote foi refeito utilizando a mesma versão do software)
  • a arquitetura sob a qual o pacote foi feito (i386, i686, athlon, ppc, etc.)

os arquivos RPM têm normalmente o seguinte formato:

<nome>-<versão>-<release>.<arquitetura>.rpm

Um exemplo:

nano-0.98-2.i386.rpm

Entretanto, note que o ródulo do pacote está contido com o arquivo e não precisa necessariamente ser o mesmo que o nome do arquivo. O código-fonte também pode ser distribuido em pacotes RPM. O rótulo de tais pacotes não contém a parte destinada para a arquitetura e em seu local inserem "src". Exemplo:

libgnomeuimm2.0-2.0.0-3mdk.src.rpm

Além disso, as bibliotecas são distribuídas em dois pacotes separados para cada versão. Um contendo o código pré-compilado e o outro contendo os arquivos de desenvolvimento tais como os cabeçalhos, da biblioteca em questão. Estes pacotes possuem o complemento "-devel" em seus nomes. Os usuários deve verificar se a versão do pacote de desenvolvimento é a mesma do pacote binário, caso contrário o funcionamento da biblioteca pode encontrar problemas.

Vantagens e desvantagens do formato[editar | editar código-fonte]

As vantagens de utilizar os pacotes RPM em com relação a outro métodos de adquirir e instalar software são:

  • Um método uniforme para o usuário instalar programas.
  • Maior simplicidade para desinstalar os programas.
  • Popularidade: muitos pacotes disponíveis, mesmo que eles comumente precisem de uma recompilação para funcionarem em uma outra distribuição.
  • Instalação não-interativa: facilita uma instalação automática.
  • Código-fonte original incluido (.tar.gz, .tar.bz2): fácil de verificar.
  • Verificação criptografica com o GPG e o md5.

As desvantagens citadas incluem:

  • Comumente tem mudanças no formato de pacote incompatíveis com versões anteriores.
  • Documentação incompleta e desatualizada.
  • Pouca aprendizagem sobre os pacotes.

O RPM também vem sendo criticado pela falta de consistência no nome e conteúdo dos pacotes, o que pode dificultar o manejo automático de dependências. Entretanto, este problema não ocorre apenas no formato RPM, mas é um problema na maioria das distribuições que usam os pacotes RPM tais como o Red Hat, SuSE e Mandrake (Mandriva) Linux. Quando se utilizam pacotes que são de uma distribuição particular (como a Red Hat) ou feitos para uma distribuição em particular (como Freshrpms [1] (http://freshrpms.net/) para Red Hat), então o sistema automático de checagem de dependências pode funcionar, usando acessórios como o apt acaptados do projeto Debian (veja abaixo). Um acessório exclusivo do Mandrakelinux é o urpmi, e pode ajudar com os problemas de dependências.

Acessórios relacionados[editar | editar código-fonte]

O RPM é comumente usado por outros acessórios para manipular dependências, como o Yellow dog Updater Modified (yum) ou o zypper (openSUSE)

Alguns gerenciadores de pacotes são:

Veja também[editar | editar código-fonte]

Outros projetos Wikimedia também contêm material sobre este tema:
Wikilivros Livros e manuais no Wikilivros

Referências

  1. a b «RPM Project Roadmap». rpm5.org. Consultado em 2011-12-11. 
  2. «RPM -- plans, goals, etc.». Max Spevack <mspevack redhat com>. Consultado em 2011-01-20. 
  3. «RPM.org FAQ». Consultado em 2013-08-25. 
  4. Bailey, Edward C. (2000). «Chapter 1: An Introduction to Package Management». Maximum RPM: Taking the Red Hat Package Manager to the Limit [S.l.: s.n.] pp. 22–25. ISBN 978-1888172782. Consultado em 2013-08-13.  Parâmetro desconhecido |publicador= ignorado (|editora=) (Ajuda)
  5. a b c FOSTER-JOHNSON, Eric. Chapter 1. Introduction to RPM. In: RPM Guide. <[1]>. Acessado em: 15/05/2009.

Referências externas[editar | editar código-fonte]