UPLinux.com.br

domingo, 5 de setembro de 2010

Sistema de Pacotes RPM

Publicado por BrUnO

Semelhante ao sistema de pacotes Debian, existe o sistema de pacotes RPM (Red Hat Package Manager). Originalmente desenvolvido para a distribuição Red Hat, hoje ele também é usado em distribuições como Fedora, CentOS, entre outras.

O comando RPM

O principal comando de administração de pacotes é o RPM (Red Hat Package Manager). Sua aplicação é semelhante a do dpkg no sistema de pacotes Debian, que é instalar pacotes individualmente. Algumas abreviações de opções do RPM são parecidas, porém realizam diferentes ações, dependendo de sua posição na linha de comando.

A distinção é feita a partir da primeira opção da esquerda para a direita. O primeiro argumento passado ao comando RPM é o argumento principal. As demais são as sub-opções do argumento principal.

Um pacote .rpm pode ser instalado simplesmente invocando o comando “rpm –ivh nome_do_pacote.rpm”. Veja na tabela Principais opções do rpm os argumentos mais utilizados.

Principais opções do rpm

Argumento Finalidade
-i ou –install Instala o pacote.
-U ou –update Atualiza ou instala o pacote.
-F ou –freshen Atualiza o pacote apenas se já estiver instalado.
-V ou –verify Verifica o tamanho, permissões, tipo, integridade, etc.
-q ou –query Investiga pacotes e arquivos.
-e ou –erase Desinstala o pacote.

As sub-opções do comando rpm modificam a maneira como a opção principal atua, principalmente em relação à opção –q (investigação de pacotes). A tabela Principais sub-opções do rpm mostra algumas dessas sub-opções.

Principais sub-opções do rpm

Sub-opção Finalidade
a Aplica uma variável a todos os pacotes instalados.
c Com opção principal “q”, lista arquivos de configuração.
d Com opção principal “q”, lista arquivos de documentação.
f Com opção principal “q”, verifica qual pacote instalou o arquivo referido.
h Mostra o progresso do procedimento solicitado.
i Com opção principal “q”, lista informações sobre um determinado pacote.
l Com opção principal “q”, lista todos os arquivos e diretórios do pacote.
p Com opção principal “q”, indica que a investigação é realizada no arquivo “.rpm”.
v Modo mais descritivo.

Outras opções muito importantes do rpm são:

  • –nodeps: Instala o pacote sem verificar as dependências;
  • –force: Força a instalação/atualização;
  • –test: Mostra como seria a instalação, mas não instala;
  • –requires: Com a opção principal “q”, mostra as exigências para o pacote especificado;
  • –whatrequires: Com opção principal “q”, mostra quais programas dependem do pacote.

Conversão e Extração

Uma das formas de listar o conteúdo de um pacote RPM é utilizado o comando rpm2cpio. Esse comando simplesmente mostra na saída padrão o conteúdo do arquivo RPM no formato cpio. Dessa forma, podemos listar todo o conteúdo de um arquivo ou mesmo extrait algum arquivo específico.

Por exemplo, para listar o conteúdo do pacote “VirtualBox-2.2.2_46594_fedora11-1.i586.rpm”, usamos:

uplinux:~# rpm2cpio VirtualBox-2.2.2_46594_fedora11-1.i586.rpm | cpio –t

./etc/rc.d/init.d/vboxdrv
./etc/vbox
./lib/modules
./lib/modules/2.6.29.1-fc11.i589
./lib/modules/2.6.29.1-fc11.i589/misc
./lib/modules/2.6.29.1-fc11.i589/misc/vboxdrv.ko
./lib/modules/2.6.29.1-fc11.i589/misc/vboxnetflt.ko
(…)

Para extrair um ou mais arquivos específicos de dentro de um pacote RPM, usamos as opções –i e –d. A opção –i determina a extração, a opção –d obriga a criação de árvore de diretório como contida no pacote RPM, e a opção –v informa o progresso dda operação:

uplinux:~# rpm2cpio VirtualBox-2.2.2_46594_fedora11-1.i586.rpm | cpio –ivd ‘*pdf’

Com esse comando, todo arquivo PDF contido no pacote será extraído para dentro da árvore de diretórios correspondente:

uplinux:~# ./usr/share/doc/ VirtualBox-2.2.2_46594_fedora11/UserManual.pdf

O único arquivo PDF encontrado, UserManual.pdf, foi extraído para a sua pasta correspondente, mas dentro da pasta que o comando foi executado.

Tags: , , , , , , , , , ,

21/07/2010

Artigos, Geral, Red Hat Linux

Deixe sua mensagem




© Copyright 2000 - 2010 UPLinux, todos os direitos reservados.